-
Notifications
You must be signed in to change notification settings - Fork 214
feat: Elasticsearch RAG Storage #503
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
|
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR implements Elasticsearch as a vector store backend for the RAG pipeline, enabling enterprise-grade vector search capabilities with scalable document management.
Changes:
- Added
ElasticsearchStoreimplementation with document indexing, kNN search, and deletion operations - Comprehensive unit tests using Mockito for core functionality validation
- End-to-end example (
ElasticsearchRAGExample) demonstrating RAG workflow with Elasticsearch - Updated documentation (English and Chinese) to reflect the new Elasticsearch integration
- Added Elasticsearch Java client dependency (version 8.12.0) to the BOM and relevant modules
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
ElasticsearchStore.java |
Core vector store implementation with kNN search and bulk operations |
ElasticsearchStoreTest.java |
Comprehensive unit tests covering builder validation, CRUD operations, and edge cases |
ElasticsearchRAGExample.java |
End-to-end example demonstrating Elasticsearch RAG integration |
docs/zh/task/rag.md |
Chinese documentation updated with Elasticsearch store information |
docs/en/task/rag.md |
English documentation updated with Elasticsearch store information |
docs/zh/quickstart/installation.md |
Chinese installation guide updated with Elasticsearch dependency |
docs/en/quickstart/installation.md |
English installation guide updated with Elasticsearch dependency |
agentscope-dependencies-bom/pom.xml |
Added Elasticsearch client version management |
agentscope-examples/advanced/pom.xml |
Explicit Elasticsearch version declaration to override Spring Boot BOM |
agentscope-extensions/agentscope-extensions-rag-simple/pom.xml |
Added Elasticsearch Java client dependency |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
...ope-extensions-rag-simple/src/main/java/io/agentscope/core/rag/store/ElasticsearchStore.java
Outdated
Show resolved
Hide resolved
...ope-extensions-rag-simple/src/main/java/io/agentscope/core/rag/store/ElasticsearchStore.java
Outdated
Show resolved
Hide resolved
...examples/advanced/src/main/java/io/agentscope/examples/advanced/ElasticsearchRAGExample.java
Outdated
Show resolved
Hide resolved
...extensions-rag-simple/src/test/java/io/agentscope/core/rag/store/ElasticsearchStoreTest.java
Show resolved
Hide resolved
...ope-extensions-rag-simple/src/main/java/io/agentscope/core/rag/store/ElasticsearchStore.java
Outdated
Show resolved
Hide resolved
...ope-extensions-rag-simple/src/main/java/io/agentscope/core/rag/store/ElasticsearchStore.java
Show resolved
Hide resolved
...ope-extensions-rag-simple/src/main/java/io/agentscope/core/rag/store/ElasticsearchStore.java
Show resolved
Hide resolved
...ope-extensions-rag-simple/src/main/java/io/agentscope/core/rag/store/ElasticsearchStore.java
Outdated
Show resolved
Hide resolved
|
Please check copilot's review |
|
I’m working on the Copilot review edits; I’ll be done soon. |
|
All conflicts have been resolved. |

AgentScope-Java Version
io.agentscope:agentscope-parent:pom:1.0.7-SNAPSHOTDescription
Background
This PR addresses #236 by implementing ElasticSearch as a dedicated storage backend for the RAG (Retrieval-Augmented Generation) pipeline. While the system previously supported other vector stores, this integration allows users to leverage ElasticSearch's enterprise-grade scalability, hybrid search capabilities, and robust document management.
Key Changes
ElasticsearchStore.java: Implemented the core logic for the vector store, including document indexing and retrieval functionality.ElasticsearchTest.javafor unit testing core components.ElasticsearchRAGExample.javaas an end-to-end test case to demonstrate the full RAG workflow.docsdirectory with both English and Chinese documentation to reflect the new integration.Checklist
mvn spotless:applymvn test)