嵌入向量将文本转换为能够捕获语义信息的向量。可将其用于搜索、检索增强生成(RAG)、聚类、推荐、去重以及相似度评分。
Venice 的嵌入端点与 OpenAI 兼容。向 /embeddings 发送一个字符串或字符串数组,然后将返回的向量存入你的数据库或向量索引中。
Venice 仅接受文本。请发送字符串或字符串数组。token ID 数组会被拒绝并返回 HTTP 400。LangChain OpenAIEmbeddings 必须设置 check_embedding_ctx_length=False,否则它会在本地使用 tiktoken 进行分词并发送整数数组。
基本用法
批量输入
传入字符串数组即可在一次请求中嵌入多段文本。每一项都必须是文本,而不是 token ID 数组:
响应会保留输入的顺序。请将每个向量连同源文本 ID、元数据以及嵌入模型 ID 一起存储。
常见工作流
- 将源文档切分为若干块。
- 为每个块生成嵌入向量。
- 将向量和元数据存入向量数据库。
- 嵌入用户的查询。
- 检索相邻的文本块。
- 将检索到的上下文发送给聊天模型。
完整实现请参阅 构建私有 RAG 机器人。
模型选择
请使用 嵌入模型 页面比较当前可用的嵌入模型、维度和价格。
索引和查询时请使用相同的嵌入模型。混用模型会导致相似度得分不可靠,因为不同模型的向量空间并不通用。
相关资源