向量数据库
本指南介绍 SuperSQL 支持的各种向量数据库。
支持的向量数据库
SuperSQL 通过 Spring AI 支持以下向量数据库:
- Chroma
- Milvus
- PgVector
- Redis
- Elasticsearch
- Qdrant
- Weaviate
- Pinecone
Chroma
Chroma 是一个开源的向量数据库,适合本地开发和测试。
添加依赖
xml
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-vector-store-chroma</artifactId>
</dependency>配置
yaml
spring:
ai:
vectorstore:
chroma:
client:
host: localhost
port: 8000
collection-name: supersql
initialize-schema: true启动 Chroma
使用 Docker 启动 Chroma:
bash
docker run -it --rm --name chroma -p 8000:8000 ghcr.io/chroma-core/chroma:1.0.0Milvus
Milvus 是一个高性能的向量数据库,适合生产环境。
添加依赖
xml
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-vector-store-milvus</artifactId>
</dependency>配置
yaml
spring:
ai:
vectorstore:
milvus:
client:
host: localhost
port: 19530
collection-name: supersql
initialize-schema: true
dimension: 1536启动 Milvus
使用 Docker 启动 Milvus:
bash
docker run -d --name milvus-standalone \
-p 19530:19530 \
-p 9091:9091 \
-v /path/to/milvus/data:/var/lib/milvus \
milvusdb/milvus:latestPgVector
PgVector 是 PostgreSQL 的向量扩展,适合已有 PostgreSQL 数据库的场景。
添加依赖
xml
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-vector-store-pgvector</artifactId>
</dependency>配置
yaml
spring:
ai:
vectorstore:
pgvector:
dimension: 1536
collection-name: supersql
initialize-schema: true启用 PgVector
在 PostgreSQL 中启用 pgvector 扩展:
sql
CREATE EXTENSION IF NOT EXISTS vector;Redis
Redis 可以作为向量存储使用,适合需要高性能的场景。
添加依赖
xml
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-vector-store-redis</artifactId>
</dependency>配置
yaml
spring:
ai:
vectorstore:
redis:
uri: redis://localhost:6379
index: supersql
prefix: supersql:Elasticsearch
Elasticsearch 提供向量搜索功能,适合需要全文搜索的场景。
添加依赖
xml
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-vector-store-elasticsearch</artifactId>
</dependency>配置
yaml
spring:
ai:
vectorstore:
elasticsearch:
client:
uris: http://localhost:9200
index-name: supersql
initialize-schema: true选择向量数据库
开发环境
推荐使用 Chroma:
- 易于安装和配置
- 适合本地开发
- 开源免费
生产环境
推荐使用 Milvus 或 PgVector:
- 高性能
- 可扩展
- 生产就绪
云服务
推荐使用 Pinecone 或 Qdrant Cloud:
- 托管服务
- 无需维护
- 高可用
下一步
- 查看 Spring Boot 集成 了解 Spring Boot 集成
- 学习 模型配置 了解模型配置
- 探索 高级用法 了解高级特性
