OpenAI
OpenAI Embedding 模型是自然语言处理领域的核心工具,能够将文本(词、句、段落)高效地转化为高维向量(嵌入)。这些向量由高性能的预训练模型(如 text-embedding-3-large)生成,能够深度捕捉文本的语义信息,而无需用户进行额外的训练。其核心原理是将原始文本映射到一个密集的向量空间中,通过计算向量间的距离(如余弦相似度)即可方便地衡量文本间的语义相似性。该技术广泛应用于语义搜索、智能问答、文本聚类与分类、推荐系统增强以及检索增强生成(RAG)等场景。
使用 OpenAI 服务需要遵循 OpenAI 的收费规则,可能产生相应费用。请在继续前,访问其官网或查阅相关文档,确认并接受其收费标准。如不同意,请勿继续操作。
依赖与鉴权
-
已安装
@seekdb/openai软件包和 OpenAI 官方提供的 JavaScript SDK。如果您在浏览器环境中,也可以 直接使用fetchAPI 进行调用,无需额外安装库。 -
需要在 OpenAI Platform 注册账号并创建 API 密钥。
示例:创建 OpenAI Embedding Function
调用 new OpenAIEmbeddingFunction() 构造函数,并传入配置对象来初始化嵌入函数。
-
基本用法
不指定模型名称时,使用默认模型和环境变量中的 API 密钥。
import { OpenAIEmbeddingFunction } from "@seekdb/openai";
const ef = new OpenAIEmbeddingFunction(); -
高级用法与自定义配置
自定义 API 密钥的环境变量名称,并根据模型版本设置
modelName、baseURL等参数。import { OpenAIEmbeddingFunction } from "@seekdb/openai";
const ef = new OpenAIEmbeddingFunction({
//使用 text-embedding-3-small 模型(经济高效)
modelName: "text-embedding-3-small",
// baseURL: "https://api.openai.com/v1",
});
配置项说明:
-
apiKey:可选,API 密钥,可通过环境变量提供。 -
apiKeyEnvVar:API 密钥环境变量名称,默认值为OPENAI_API_KEY。 -
modelName:模型名称,默认值为text-embedding-3-small。 -
dimensions:可选,输出维度。 -
organizationId:可选,组织 ID,默认值为process.env.OPENAI_ORG_ID。 -
baseURL:可选,自定义基本 URL。