Skip to content

Vectorize

Vectorize 是 Workers 的向量索引 binding。写入你已计算好的 embedding,按 metadata 过滤,并做相似度查询。open-compute 实现稳定后 beta 的 Vectorize API,在单机上提供确定性的精确检索。

例如可用于:

  • 文档 embedding 的语义检索
  • 从 Worker 发起推荐 / 近邻查询
  • 在调用 LLM 前做带 metadata 过滤的检索
ts
export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const { matches } = await env.VECTORIZE.query([0.12, 0.34, /* … */], {
      topK: 5,
      returnMetadata: "indexed",
    });
    return Response.json(matches);
  },
} satisfies ExportedHandler<{ VECTORIZE: Vectorize }>;

创建索引(Wrangler 或 v4)后绑定:

json
{
  "name": "vector-app",
  "main": "src/index.ts",
  "vectorize": [{ "binding": "VECTORIZE", "index_name": "embeddings" }]
}

官方文档:Cloudflare Vectorize。绑定语法见绑定

兼容性

主题Cloudflareopen-compute
Worker API稳定后 beta 的 Vectorizedescribe / query / queryById / insert / upsert / deleteByIds / getByIds方法与响应形状相同
检索托管近似 / 分布式索引单机确定性精确检索
维度 / 度量32–1536;cosine、euclidean、dot-product公开范围与 score/order 语义相同
Mutation异步 mutationId本地 authority 上的持久异步 mutation
Beta VectorizeIndex遗留不在范围 — 不提供
就近存放 / 复制全球单机;按 operator 配置使用 Local/S3

本节