Skip to content
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

Migrate vector store auto-configurations to dedicated modules #2308

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

sobychacko
Copy link
Contributor

Move vector store auto-configuration classes to dedicated modules under auto-configurations/vector-stores/:

  • Creates separate modules for Milvus, Pinecone, Qdrant, and Typesense vector stores
  • Moves CommonVectorStoreProperties to spring-ai-core for better reusability
  • Updates pom.xml dependencies to maintain proper relationships between modules

This change improves modularity by allowing each vector store implementation to be independently versioned and maintained, continuing the migration pattern established with previous vector stores.

@sobychacko sobychacko force-pushed the vector-store-autoconfiguration branch from 95c2cd2 to deb631f Compare February 25, 2025 01:24
@ilayaperumalg ilayaperumalg self-assigned this Feb 26, 2025
@ilayaperumalg ilayaperumalg added this to the 1.0.0-M7 milestone Feb 26, 2025
@ilayaperumalg
Copy link
Member

After the rebase with Qdrant client update, I see that the Qdrant autoconfiguration needs to be updated as I see:

[ERROR] /Users/igopinathan/dev/git/spring-projects/spring-ai/auto-configurations/vector-stores/spring-ai-qdrant-store-spring-boot-autoconfigure/src/main/java/org/springframework/ai/autoconfigure/vectorstore/qdrant/QdrantVectorStoreAutoConfiguration.java:[59,78] cannot access io.grpc.ManagedChannel
[ERROR] class file for io.grpc.ManagedChannel not found
[ERROR]

@sobychacko sobychacko force-pushed the vector-store-autoconfiguration branch 2 times, most recently from 806da0c to 778c890 Compare February 27, 2025 00:29
Move vector store auto-configuration classes to dedicated modules under auto-configurations/vector-stores/:

- Creates separate modules for Milvus, Pinecone, Qdrant, and Typesense vector stores
- Moves CommonVectorStoreProperties to spring-ai-core for better reusability
- Updates pom.xml dependencies to maintain proper relationships between modules
- Name the artifacts based on the pattern spring-ai-autoconfigure-vectorestore-<implementation>.
  For example - spring-ai-autoconfigure-vectorestore-milvus
- Package names follow the pattern org.springframework.ai.vectorstore.<implementation>.autoconfigure

This change improves modularity by allowing each vector store implementation to be
independently versioned and maintained, continuing the migration pattern established
with previous vector stores.

Signed-off-by: Soby Chacko <[email protected]>
@sobychacko sobychacko force-pushed the vector-store-autoconfiguration branch from 778c890 to c9d02ca Compare February 27, 2025 23:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants