google / google/adk-python-community

Feature Request: Add Milvus Vector Store Integration for RAG

Open
#70 2 comments 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
182
Forks
75
PR merge metrics
No merged PRs in 30d

Description

### Description

Add [Milvus](https://milvus.io/) as a vector database option for knowledge base RAG workflows, following the existing Spanner integration pattern.

### Motivation

ADK currently supports Vertex AI RAG, LlamaIndex, and Spanner for vector-based retrieval. Milvus is a widely adopted open-source vector database purpose-built for AI applications. Adding Milvus support would give developers a lightweight, self-hosted (or cloud-managed via [Zilliz](https://zilliz.com/)) alternative for building RAG agents.

### Proposed Solution

- `MilvusVectorStore`: Utility class for collection setup, data ingestion, and similarity search.
- `MilvusToolset`: `BaseToolset` implementation exposing a `similarity_search` tool to LLM agents.
- `MilvusToolSettings` / `MilvusVectorStoreSettings`: Pydantic configuration classes.
- Users provide their own embedding function (e.g., Google GenAI `gemini-embedding-001`).
- `pymilvus>=2.5.0` as an optional dependency (`google-adk[milvus]`).

### Related PR

google/adk-python#4417

Contributor guide

Open the contributing guide

Research direction

Start by reading the existing Spanner integration pattern and the BaseToolset entry point. Use MilvusVectorStore, MilvusToolset, MilvusToolSettings, and MilvusVectorStoreSettings as the scope, with pymilvus>=2.5.0 exposed through google-adk[milvus]. Done means collection setup, ingestion, similarity_search exposure, and user-supplied embeddings are covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
ai, databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.