Voy
Voy 是一个使用 Rust 编写的 WASM 向量相似性搜索引擎。 它支持在非 Node 环境(如浏览器)中运行。您可以将 Voy 与 LangChain.js 一起用作向量存储。
安装 Voy
:::提示 请参阅安装集成包的一般说明部分。 :::
- npm
- Yarn
- pnpm
npm 安装 @langchain/openai voy-search @langchain/community @langchain/core
npm 安装 @langchain/openai voy-search @langchain/community @langchain/core
# couldn't auto-convert command
npm 安装 @langchain/openai voy-search @langchain/community @langchain/core
# couldn't auto-convert command
使用方法
import { VoyVectorStore } from "@langchain/community/vectorstores/voy";
import { Voy as VoyClient } from "voy-search";
import { OpenAIEmbeddings } from "@langchain/openai";
import { Document } from "@langchain/core/documents";
// Create Voy client using the library.
const voyClient = new VoyClient();
// Create embeddings
const embeddings = new OpenAIEmbeddings();
// Create the Voy store.
const store = new VoyVectorStore(voyClient, embeddings);
// Add two documents with some metadata.
await store.addDocuments([
new Document({
pageContent: "How has life been treating you?",
metadata: {
foo: "Mike",
},
}),
new Document({
pageContent: "And I took it personally...",
metadata: {
foo: "Testing",
},
}),
]);
const model = new OpenAIEmbeddings();
const query = await model.embedQuery("And I took it personally");
// Perform a similarity search.
const resultsWithScore = await store.similaritySearchVectorWithScore(query, 1);
// Print the results.
console.log(JSON.stringify(resultsWithScore, null, 2));
/*
[
[
{
"pageContent": "And I took it personally...",
"metadata": {
"foo": "Testing"
}
},
0
]
]
*/
API Reference:
- VoyVectorStore from
@langchain/community/vectorstores/voy - OpenAIEmbeddings from
@langchain/openai - Document from
@langchain/core/documents
相关内容
Related
- Vector store conceptual guide
- Vector store how-to guides