summaryrefslogtreecommitdiff
path: root/src/ollama_web/sessions.py
diff options
context:
space:
mode:
authortanaka takashi <isazaka@gmail.com>2026-06-25 02:41:58 +0900
committertanaka takashi <isazaka@gmail.com>2026-06-25 02:41:58 +0900
commit5f948a33412dfde6d0a210746e61ac9c8477c9e8 (patch)
treedfbd1877e1a1c43df0777f0daff943620d0dac13 /src/ollama_web/sessions.py
parent697911563a1e8294aa415e8324bdd07901098876 (diff)
各モデルの機能を取得するように修正。thinking, tools, vision対応モデルに応じて機能を変えるように変更。クリアボタンのバグを修正
Diffstat (limited to 'src/ollama_web/sessions.py')
-rw-r--r--src/ollama_web/sessions.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/ollama_web/sessions.py b/src/ollama_web/sessions.py
index 3eab31f..645f934 100644
--- a/src/ollama_web/sessions.py
+++ b/src/ollama_web/sessions.py
@@ -314,3 +314,24 @@ class SessionStore:
return abs_path.read_bytes()
except Exception: # noqa: BLE001
return None
+
+ def clear_messages(self, session_id: str) -> dict[str, Any] | None:
+ """Clear all messages and attached files from the session."""
+ if not is_valid_id(session_id):
+ return None
+ session = self.get(session_id)
+ if session is None:
+ return None
+ # Remove uploaded/fetched physical files.
+ files_dir = self._files_dir(session_id)
+ try:
+ if files_dir.exists():
+ shutil.rmtree(files_dir)
+ files_dir.mkdir(parents=True, exist_ok=True)
+ except Exception: # noqa: BLE001
+ pass
+ session["messages"] = []
+ session["files"] = []
+ session["updated_at"] = _now()
+ self._save(session_id, session)
+ return session