WIP memory editor
This commit is contained in:
@@ -43,9 +43,10 @@ class Api:
|
||||
self._app.router.add_post("/api/auto_approver/llm", self._set_llm_name)
|
||||
self._app.router.add_get("/api/memory", self._get_memory)
|
||||
self._app.router.add_post("/api/memory/entry", self._create_entry)
|
||||
self._app.router.add_put("/api/memory/entry/{id}", self._update_entry)
|
||||
self._app.router.add_put("/api/memory/entry/{id}", self._save_entry)
|
||||
self._app.router.add_delete("/api/memory/entry/{id}", self._delete_entry)
|
||||
self._app.router.add_post("/api/memory/entry/{id}/reset", self._reset_entry)
|
||||
self._app.router.add_post("/api/memory/entry/{id}/update", self._update_entry)
|
||||
|
||||
async def _run_inference(self, request: web.Request) -> web.Response:
|
||||
"""Start inference on specified LLM."""
|
||||
@@ -212,7 +213,7 @@ class Api:
|
||||
except (ValueError, TypeError) as e:
|
||||
return web.Response(status=400, text=str(e))
|
||||
|
||||
async def _update_entry(self, request: web.Request) -> web.Response:
|
||||
async def _save_entry(self, request: web.Request) -> web.Response:
|
||||
"""Update properties of an existing entry."""
|
||||
entry_id = request.match_info["id"]
|
||||
data = await request.json()
|
||||
@@ -221,6 +222,7 @@ class Api:
|
||||
return web.Response(status=404, text="Entry not found")
|
||||
try:
|
||||
EntryFactory.update_entry(entry, data)
|
||||
entry.notify_change()
|
||||
return web.Response(status=200)
|
||||
except ValueError as e:
|
||||
return web.Response(status=400, text=str(e))
|
||||
@@ -238,4 +240,18 @@ class Api:
|
||||
if not entry:
|
||||
return web.Response(status=404, text="Entry not found")
|
||||
entry.reset()
|
||||
return web.Response(status=200)
|
||||
entry.notify_change()
|
||||
return web.Response(status=200)
|
||||
|
||||
async def _update_entry(self, request: web.Request) -> web.Response:
|
||||
"""Update an entry's state."""
|
||||
entry_id = request.match_info["id"]
|
||||
entry = self._working_memory.get_entry(entry_id)
|
||||
if not entry:
|
||||
return web.Response(status=404, text="Entry not found")
|
||||
try:
|
||||
entry.update()
|
||||
entry.notify_change()
|
||||
return web.Response(status=200)
|
||||
except ValueError as e:
|
||||
return web.Response(status=400, text=str(e))
|
||||
Reference in New Issue
Block a user