跳至主要内容

CloudflareWorkersAIEmbeddings

这将帮助您使用 LangChain 开始使用 Cloudflare Workers AI 嵌入模型。有关 CloudflareWorkersAIEmbeddings 功能和配置选项的详细文档,请参阅 API 参考

概述

集成详细信息

本地Py 支持包下载包最新
CloudflareWorkersAIEmbeddings@langchain/cloudflareNPM - DownloadsNPM - Version

设置

要访问 Cloudflare 嵌入模型,您需要创建一个 Cloudflare 帐户并安装 @langchain/cloudflare 集成包。此集成旨在在 Cloudflare 工作程序中运行并接受绑定。

按照 官方文档 设置您的工作程序。

您的 wrangler.toml 文件应类似于此

name = "langchain-test"
main = "worker.js"
compatibility_date = "2024-01-10"

[[vectorize]]
binding = "VECTORIZE_INDEX"
index_name = "langchain-test"

[ai]
binding = "AI"

凭据

如果您想获得模型调用的自动跟踪,您还可以通过取消下面的注释来设置您的 LangSmith API 密钥

# export LANGCHAIN_TRACING_V2="true"
# export LANGCHAIN_API_KEY="your-api-key"

安装

LangChain CloudflareWorkersAIEmbeddings 集成位于 @langchain/cloudflare 包中

yarn add @langchain/cloudflare @langchain/core

用法

以下是一个使用 Workers AI 嵌入和 Cloudflare Vectorize 向量存储 的示例工作程序。

// @ts-nocheck

import type {
VectorizeIndex,
Fetcher,
Request,
} from "@cloudflare/workers-types";

import {
CloudflareVectorizeStore,
CloudflareWorkersAIEmbeddings,
} from "@langchain/cloudflare";

export interface Env {
VECTORIZE_INDEX: VectorizeIndex;
AI: Fetcher;
}

export default {
async fetch(request: Request, env: Env) {
const { pathname } = new URL(request.url);
const embeddings = new CloudflareWorkersAIEmbeddings({
binding: env.AI,
model: "@cf/baai/bge-small-en-v1.5",
});
const store = new CloudflareVectorizeStore(embeddings, {
index: env.VECTORIZE_INDEX,
});
if (pathname === "/") {
const results = await store.similaritySearch("hello", 5);
return Response.json(results);
} else if (pathname === "/load") {
// Upsertion by id is supported
await store.addDocuments(
[
{
pageContent: "hello",
metadata: {},
},
{
pageContent: "world",
metadata: {},
},
{
pageContent: "hi",
metadata: {},
},
],
{ ids: ["id1", "id2", "id3"] }
);

return Response.json({ success: true });
} else if (pathname === "/clear") {
await store.delete({ ids: ["id1", "id2", "id3"] });
return Response.json({ success: true });
}

return Response.json({ error: "Not Found" }, { status: 404 });
},
};

API 参考

有关所有 CloudflareWorkersAIEmbeddings 功能和配置的详细文档,请访问 API 参考:https://api.js.langchain.com/classes/langchain_cloudflare.CloudflareWorkersAIEmbeddings.html


此页面对您有帮助吗?


您也可以留下详细的反馈 在 GitHub 上.