Skip to content

Feature Request: Add Milvus-backed Memory Service #69

@zc277584121

Description

@zc277584121

Description

Add MilvusMemoryService, an implementation of BaseMemoryService that uses Milvus 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions