Mastra
Mastra 是一个 Typescript 框架,用于快速构建 AI 应用和功能。它提供了你所需的基本元素:工作流、智能体、RAG、集成、同步和评估。你可以在本地机器上运行 Mastra,或部署到无服务器云。
Qdrant 在 Mastra 节点中可用作向量存储,以增强应用程序的检索能力。
设置
用法
import { QdrantVector } from "@mastra/rag";
const qdrant = new QdrantVector({
url: "https://xyz-example.eu-central.aws.cloud.qdrant.io:6333"
apiKey: "<YOUR_API_KEY>",
https: true
});
构造函数选项
方法
createIndex()
名称 | 类型 | 描述 | 默认值 |
---|
indexName | string | 要创建的索引名称 | |
维度 | number | 向量维度大小 | |
度量 | string | 用于相似性搜索的距离度量 | cosine |
upsert()
名称 | 类型 | 描述 | 默认值 |
---|
向量 | number[][] | 嵌入向量数组 | |
元数据 | Record<string, any>[] | 每个向量的元数据(可选) | |
命名空间 | string | 用于组织的可选命名空间 | |
query()
名称 | 类型 | 描述 | 默认值 |
---|
向量 | number[] | 用于查找相似向量的查询向量 | |
topK | number | 返回结果的数量(可选) | 10 |
过滤器 | Record<string, any> | 查询的元数据过滤器(可选) | |
listIndexes()
返回一个包含索引名称(字符串)的数组。
describeIndex()
名称 | 类型 | 描述 |
---|
indexName | string | 要描述的索引名称 |
返回值
interface IndexStats {
dimension: number;
count: number;
metric: "cosine" | "euclidean" | "dotproduct";
}
deleteIndex()
名称 | 类型 | 描述 |
---|
indexName | string | 要删除的索引名称 |
响应类型
查询结果将以此格式返回
interface QueryResult {
id: string;
score: number;
metadata: Record<string, any>;
}
延伸阅读