跳转到内容
搜索文档

向量搜索

最后更新 查看 MarkdownAgent 设置

向量搜索将您的查询转换为向量嵌入,并找到具有相似含义的分块。默认情况下,所有 AI Search 实例都启用了该功能。有关搜索模式的概述,请参阅 搜索模式

内置向量索引

AI Search 实例包含由 Vectorize 提供支持的内置向量索引。该向量索引存储从您的内容生成的嵌入,并自动创建和维护。您无需自己创建或管理 Vectorize 索引。

嵌入模型

嵌入模型 决定了向量索引的向量维度。嵌入模型是在创建实例时设置的,创建后无法更改。

禁用向量搜索

向量搜索是所有实例的默认索引方法。要切换为仅 关键词搜索,请将 index_method.vector 设置为 falsevectorkeyword 必须至少有一个为 true

const instance = await env.AI_SEARCH.create({
	id: "my-instance",
	index_method: {
		vector: false,
		keyword: true,
	},
});

按请求覆盖

即使实例上已启用了关键词搜索,您也可以使用 ai_search_options.retrieval.retrieval_type 在每次请求时强制执行仅向量搜索。

const instance = env.AI_SEARCH.get("my-instance");

const results = await instance.search({
	messages: [{ role: "user", content: "What is Cloudflare?" }],
	ai_search_options: {
		retrieval: {
			retrieval_type: "vector",
		},
	},
});

评分详情

使用向量搜索时,每个分块都包含一个 scoring_details 对象:

字段 (Field) 类型 (Type) 描述 (Description)
vector_score number 向量相似度分数(0 到 1)。
vector_rank number 结果集中的排名位置。

限制

有关向量索引的限制,请参阅 限制与定价

这篇文档对您有帮助吗?