[Feature][Integration][Java] add ElasticsearchVectorStore in Java
Linked issue: #321
Purpose of change
This PR implements the Java version of Vector Store functionality for Flink Agents, following the design proposal in #143. This implementation enables RAG (Retrieval-Augmented Generation) capabilities by providing vector-based context retrieval.
- Added Vector Store API with query support and document handling
- Added
@VectorStoreannotation for agent plan resource management - Added context retrieval request and response events
- Implemented context retrieval action with vector store support
- Implemented Elasticsearch vector store integration
- Added ElasticsearchVectorStore RAG example with Ollama integration
Tests
API
Documentation
- [x]
doc-needed - [ ]
doc-not-needed
@twosom Please add the following content to your PR description and select a checkbox:
- [ ] `doc-needed`
- [ ] `doc-not-needed` <!-- Your PR changes do not impact docs -->
Hi, @twosom, I'll start reviewing this PR as soon as possible. Besides, this PR should be labeled 'doc-needed'.
@wenjin272 Thank you for your review.
I didn't consider SSL configuration while testing locally. Thank you for pointing this out.
Would it be better to add SSL certificate configuration support in a separate PR rather than including it in this one? I'm happy to follow your guidance on this.
Thank you.
@wenjin272 Thank you for your review.
I didn't consider SSL configuration while testing locally. Thank you for pointing this out.
Would it be better to add SSL certificate configuration support in a separate PR rather than including it in this one? I'm happy to follow your guidance on this.
Thank you.
I think ssl support can be done in separate PR.
@xintongsong @wenjin272
Hello. As you mentioned, I removed the generic type and changed it to a string type. I also removed the existing examples and added e2e tests. I would appreciate it if you could review it when you have time. Thank you.
@wenjin272 @xintongsong Thank you for the review. I learned a lot from your feedback.👍