rucora Retrieval
rucora 的向量存储与检索实现。
概述
本 crate 为 rucora 提供 VectorStore 实现,用于向量存储、相似度搜索和检索,支持语义搜索和 RAG 应用。
支持的 VectorStore
| VectorStore | 说明 |
|---|---|
| InMemoryVectorStore | 内存向量存储 |
| ChromaVectorStore | ChromaDB 集成 |
| ChromaPersistentVectorStore | 持久化 ChromaDB 存储 |
| QdrantVectorStore | Qdrant 集成 |
安装
[]
= "0.1"
或通过主 rucora crate:
[]
= { = "0.1", = ["retrieval"] }
使用方式
内存向量存储
use InMemoryVectorStore;
use ;
let store = new;
// 添加向量
store.add.await?;
// 搜索
let results = store.search.await?;
Chroma 向量存储
use ChromaVectorStore;
let store = new?;
// 创建集合(如果不存在)
store.ensure_collection.await?;
// 添加和搜索向量
store.add.await?;
let results = store.search.await?;
持久化 Chroma 向量存储
use ChromaPersistentVectorStore;
let store = new?;
Qdrant 向量存储
use QdrantVectorStore;
let store = new?;
store.ensure_collection.await?;
Feature 配置
| Feature | 说明 |
|---|---|
in-memory |
内存向量存储(默认) |
chroma |
ChromaDB 集成 |
all |
启用所有向量存储 |
许可证
MIT