Skip to main content
TransformerEmbeddings 类使用 Transformers.js 包为给定文本生成嵌入。 它在本地运行,甚至可以直接在浏览器中工作,允许您创建具有内置嵌入的 Web 应用程序。

设置

您需要安装 @huggingface/transformers 包作为对等依赖项:
兼容性如果您使用的 community 版本早于 0.3.21,请安装旧版的 @xenova/transformers 包, 并从下方的 "@langchain/community/embeddings/hf_transformers" 导入嵌入。
npm
npm install @huggingface/transformers
有关安装 LangChain 包的通用说明,请参阅此部分
npm
npm install @langchain/community @langchain/core

示例

请注意,如果您在浏览器上下文中使用,您可能希望将所有推理相关的代码放在 Web Worker 中,以避免 阻塞主线程。 请参阅 本指南 和 Transformers.js 文档中的其他资源,以了解如何 设置您的项目。
import { HuggingFaceTransformersEmbeddings } from "@langchain/community/embeddings/huggingface_transformers";

const model = new HuggingFaceTransformersEmbeddings({
  model: "Xenova/all-MiniLM-L6-v2",
});

/* Embed queries */
const res = await model.embedQuery(
  "What would be a good company name for a company that makes colorful socks?"
);
console.log({ res });
/* Embed documents */
const documentRes = await model.embedDocuments(["Hello world", "Bye bye"]);
console.log({ documentRes });

相关