From 2209bfff9620c19e2fe557a9cd7be5c9bb9a1a86 Mon Sep 17 00:00:00 2001 From: Omkar Shetkar Date: Sat, 9 Dec 2023 11:54:19 +0530 Subject: [PATCH] Spring boot starters for Vector Stores - Adds spring-boot starters for: azure-ai-search, chroma, mivlus, neo4j, pgvector, pinecone and weaviate vector stores. - README.md update --- README.md | 60 +++++++++++++++++++ pom.xml | 6 ++ .../spring-ai-starter-azure-store/pom.xml | 51 ++++++++++++++++ .../spring-ai-starter-chroma-store/pom.xml | 51 ++++++++++++++++ .../spring-ai-starter-milvus-store/pom.xml | 51 ++++++++++++++++ .../spring-ai-starter-pgvector-store/pom.xml | 51 ++++++++++++++++ .../spring-ai-starter-pinecone-store/pom.xml | 51 ++++++++++++++++ .../spring-ai-starter-weaviate-store/pom.xml | 51 ++++++++++++++++ 8 files changed, 372 insertions(+) create mode 100644 spring-ai-spring-boot-starters/spring-ai-starter-azure-store/pom.xml create mode 100644 spring-ai-spring-boot-starters/spring-ai-starter-chroma-store/pom.xml create mode 100644 spring-ai-spring-boot-starters/spring-ai-starter-milvus-store/pom.xml create mode 100644 spring-ai-spring-boot-starters/spring-ai-starter-pgvector-store/pom.xml create mode 100644 spring-ai-spring-boot-starters/spring-ai-starter-pinecone-store/pom.xml create mode 100644 spring-ai-spring-boot-starters/spring-ai-starter-weaviate-store/pom.xml diff --git a/README.md b/README.md index 4f1f7fe47..dcffdb43f 100644 --- a/README.md +++ b/README.md @@ -116,6 +116,66 @@ Please use the 0.7.1-SNAPSHOT if you don't want to be on the bleeding edge. 0.7.1-SNAPSHOT ``` +### Vector Stores + +Following vector stores are supported: + +* Azure Vector Store + +```xml + + org.springframework.ai + spring-ai-azure-vector-store-spring-boot-starter + 0.8.0-SNAPSHOT + +``` + +* Chroma + +```xml + + org.springframework.ai + spring-ai-chroma-store-spring-boot-starter + 0.8.0-SNAPSHOT + +``` +* Milvus + +```xml + + org.springframework.ai + spring-ai-milvus-store-spring-boot-starter + 0.8.0-SNAPSHOT + +``` + +* PGVector + +```xml + + org.springframework.ai + spring-ai-pgvector-store-spring-boot-starter + 0.8.0-SNAPSHOT + +``` +* Pinecone + +```xml + + org.springframework.ai + spring-ai-pinecone-store-spring-boot-starter + 0.8.0-SNAPSHOT + +``` +* Weaviate + +```xml + + org.springframework.ai + spring-ai-weaviate-store-spring-boot-starter + 0.8.0-SNAPSHOT + +``` ## Workshop diff --git a/pom.xml b/pom.xml index 54939de61..e33dd2972 100644 --- a/pom.xml +++ b/pom.xml @@ -24,6 +24,12 @@ spring-ai-spring-boot-starters/spring-ai-starter-azure-openai spring-ai-spring-boot-starters/spring-ai-starter-ollama spring-ai-spring-boot-starters/spring-ai-starter-transformers-embedding + spring-ai-spring-boot-starters/spring-ai-starter-chroma-store + spring-ai-spring-boot-starters/spring-ai-starter-milvus-store + spring-ai-spring-boot-starters/spring-ai-starter-pgvector-store + spring-ai-spring-boot-starters/spring-ai-starter-pinecone-store + spring-ai-spring-boot-starters/spring-ai-starter-azure-store + spring-ai-spring-boot-starters/spring-ai-starter-weaviate-store spring-ai-docs vector-stores/spring-ai-pgvector-store vector-stores/spring-ai-milvus-store diff --git a/spring-ai-spring-boot-starters/spring-ai-starter-azure-store/pom.xml b/spring-ai-spring-boot-starters/spring-ai-starter-azure-store/pom.xml new file mode 100644 index 000000000..7950a8b2e --- /dev/null +++ b/spring-ai-spring-boot-starters/spring-ai-starter-azure-store/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + org.springframework.ai + spring-ai + 0.8.0-SNAPSHOT + ../../pom.xml + + spring-ai-azure-vector-store-spring-boot-starter + jar + Spring AI Starter - Azure Vector Store + Spring AI Azure Vector Store Auto Configuration + https://github.com/spring-projects/spring-ai + + + https://github.com/spring-projects/spring-ai + git://github.com/spring-projects/spring-ai.git + git@github.com:spring-projects/spring-ai.git + + + + + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.ai + spring-ai-spring-boot-autoconfigure + ${project.parent.version} + + + + org.springframework.ai + spring-ai-azure-vector-store + ${project.parent.version} + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + diff --git a/spring-ai-spring-boot-starters/spring-ai-starter-chroma-store/pom.xml b/spring-ai-spring-boot-starters/spring-ai-starter-chroma-store/pom.xml new file mode 100644 index 000000000..2484f848f --- /dev/null +++ b/spring-ai-spring-boot-starters/spring-ai-starter-chroma-store/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + org.springframework.ai + spring-ai + 0.8.0-SNAPSHOT + ../../pom.xml + + spring-ai-chroma-store-spring-boot-starter + jar + Spring AI Starter - Chroma Vector Store + Spring AI Chroma Vector Store Auto Configuration + https://github.com/spring-projects/spring-ai + + + https://github.com/spring-projects/spring-ai + git://github.com/spring-projects/spring-ai.git + git@github.com:spring-projects/spring-ai.git + + + + + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.ai + spring-ai-spring-boot-autoconfigure + ${project.parent.version} + + + + org.springframework.ai + spring-ai-chroma-store + ${project.parent.version} + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + diff --git a/spring-ai-spring-boot-starters/spring-ai-starter-milvus-store/pom.xml b/spring-ai-spring-boot-starters/spring-ai-starter-milvus-store/pom.xml new file mode 100644 index 000000000..525eaf995 --- /dev/null +++ b/spring-ai-spring-boot-starters/spring-ai-starter-milvus-store/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + org.springframework.ai + spring-ai + 0.8.0-SNAPSHOT + ../../pom.xml + + spring-ai-milvus-store-spring-boot-starter + jar + Spring AI Starter - Milvus Vector Store + Spring AI Milvus Vector Store Auto Configuration + https://github.com/spring-projects/spring-ai + + + https://github.com/spring-projects/spring-ai + git://github.com/spring-projects/spring-ai.git + git@github.com:spring-projects/spring-ai.git + + + + + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.ai + spring-ai-spring-boot-autoconfigure + ${project.parent.version} + + + + org.springframework.ai + spring-ai-milvus-store + ${project.parent.version} + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + diff --git a/spring-ai-spring-boot-starters/spring-ai-starter-pgvector-store/pom.xml b/spring-ai-spring-boot-starters/spring-ai-starter-pgvector-store/pom.xml new file mode 100644 index 000000000..defa4fd2e --- /dev/null +++ b/spring-ai-spring-boot-starters/spring-ai-starter-pgvector-store/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + org.springframework.ai + spring-ai + 0.8.0-SNAPSHOT + ../../pom.xml + + spring-ai-pgvector-store-spring-boot-starter + jar + Spring AI Starter - PGVector Vector Store + Spring AI PGVector Vector Store Auto Configuration + https://github.com/spring-projects/spring-ai + + + https://github.com/spring-projects/spring-ai + git://github.com/spring-projects/spring-ai.git + git@github.com:spring-projects/spring-ai.git + + + + + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.ai + spring-ai-spring-boot-autoconfigure + ${project.parent.version} + + + + org.springframework.ai + spring-ai-pgvector-store + ${project.parent.version} + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + diff --git a/spring-ai-spring-boot-starters/spring-ai-starter-pinecone-store/pom.xml b/spring-ai-spring-boot-starters/spring-ai-starter-pinecone-store/pom.xml new file mode 100644 index 000000000..4d019551d --- /dev/null +++ b/spring-ai-spring-boot-starters/spring-ai-starter-pinecone-store/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + org.springframework.ai + spring-ai + 0.8.0-SNAPSHOT + ../../pom.xml + + spring-ai-pinecone-store-spring-boot-starter + jar + Spring AI Starter - Pinecone Vector Store + Spring AI Pinecone Vector Store Auto Configuration + https://github.com/spring-projects/spring-ai + + + https://github.com/spring-projects/spring-ai + git://github.com/spring-projects/spring-ai.git + git@github.com:spring-projects/spring-ai.git + + + + + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.ai + spring-ai-spring-boot-autoconfigure + ${project.parent.version} + + + + org.springframework.ai + spring-ai-pinecone + ${project.parent.version} + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + diff --git a/spring-ai-spring-boot-starters/spring-ai-starter-weaviate-store/pom.xml b/spring-ai-spring-boot-starters/spring-ai-starter-weaviate-store/pom.xml new file mode 100644 index 000000000..a3d514904 --- /dev/null +++ b/spring-ai-spring-boot-starters/spring-ai-starter-weaviate-store/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + org.springframework.ai + spring-ai + 0.8.0-SNAPSHOT + ../../pom.xml + + spring-ai-weaviate-store-spring-boot-starter + jar + Spring AI Starter - Weaviate Vector Store + Spring AI Weaviate Vector Store Auto Configuration + https://github.com/spring-projects/spring-ai + + + https://github.com/spring-projects/spring-ai + git://github.com/spring-projects/spring-ai.git + git@github.com:spring-projects/spring-ai.git + + + + + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.ai + spring-ai-spring-boot-autoconfigure + ${project.parent.version} + + + + org.springframework.ai + spring-ai-weaviate-store + ${project.parent.version} + + + + + org.springframework.boot + spring-boot-starter-test + test + + + +