google / google/adk-python-community
Feature Request: Add Milvus-backed Memory Service
- 主要语言
- Python
- 星标
- 182
- 派生
- 75
- PR 合并指标
- 30 天内没有已合并 PR
描述
### Description
Add `MilvusMemoryService`, an implementation of `BaseMemoryService` that uses [Milvus](https://milvus.io/) as the vector store for cross-session conversation memory.
### Motivation
ADK's existing memory services (`InMemoryMemoryService`, `VertexAiMemoryBankService`, `VertexAiRagMemoryService`) either lack semantic search or require GCP infrastructure. Milvus provides a lightweight, open-source alternative that supports local (Milvus Lite), self-hosted, and fully managed (Zilliz Cloud) deployments.
This complements the `MilvusToolset` (PR google/adk-python#4417) which handles RAG knowledge base search, by adding a separate memory persistence layer for conversation history.
### Proposed Solution
- `MilvusMemoryService(BaseMemoryService)`: stores session events as vector-embedded text in Milvus, with `app_name`/`user_id` scoping and deduplication.
- Users provide their own embedding function (e.g., Google GenAI `gemini-embedding-001`).
- Works with `PreloadMemoryTool` and `LoadMemoryTool` out of the box.
### Related PR
google/adk-python#4417
贡献指南
调研方向
首先阅读 BaseMemoryService 以及现有的 InMemoryMemoryService、VertexAiMemoryBankService 和 VertexAiRagMemoryService 实现。以提议的 MilvusMemoryService 行为作为范围:支持向量的会话事件,具有 app_name/user_id 作用域和去重功能,并与 PreloadMemoryTool 和 LoadMemoryTool 兼容。该 issue 未指定具体文件或测试,因此需要先找到项目现有的 memory service 约定。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python
- 领域
- databases
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100