diff --git a/experiencemaker/experiencemaker/op/vector_store/vector_store_action_op.py b/experiencemaker/experiencemaker/op/vector_store/vector_store_action_op.py index 331b3c51..243b3c05 100644 --- a/experiencemaker/experiencemaker/op/vector_store/vector_store_action_op.py +++ b/experiencemaker/experiencemaker/op/vector_store/vector_store_action_op.py @@ -20,6 +20,9 @@ class VectorStoreActionOp(BaseOp): elif request.action == "delete": result = self.vector_store.delete_workspace(workspace_id=request.workspace_id) + elif request.action == "delete_ids": + result = self.vector_store.delete(workspace_id=request.workspace_id,node_ids = request.experience_ids) + elif request.action == "dump": def node_to_experience(node: VectorNode) -> dict: return vector_node_to_experience(node).model_dump() diff --git a/experiencemaker/experiencemaker/schema/request.py b/experiencemaker/experiencemaker/schema/request.py index 3f5980fa..44df5008 100644 --- a/experiencemaker/experiencemaker/schema/request.py +++ b/experiencemaker/experiencemaker/schema/request.py @@ -29,6 +29,7 @@ class VectorStoreRequest(BaseRequest): action: str = Field(default="") src_workspace_id: str = Field(default="") path: str = Field(default="") + experience_ids: List[str] = Field(default_factory=list) class AgentRequest(BaseRequest):