对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

Voyage AI快速入门

在本指南中,您学习;了解如何使用 Voyage AI生成第一个向量嵌入并构建基本应用程序。

使用本教程的可运行版本以作为 Python 笔记本。

要访问Voyage AI模型,请在MongoDB Atlas用户界面中创建模型API密钥。

1

如果您是Atlas的新用户,它会为您创建一个组织和项目。

要学习;了解更多信息,请参阅创建Atlas帐户。

2
  1. 在Atlas项目中,从导航栏中选择 AI Models

  2. 单击 Create model API key(连接)。

  3. 为API密钥命名,然后单击 Create

要学习;了解更多信息,请参阅模型API密钥

3

复制API密钥并将其存储在安全位置。然后,将API密钥导出为终端中的环境变量,以便 Voyage客户端可以访问权限它。

export VOYAGE_API_KEY="<your-model-api-key>"
set VOYAGE_API_KEY=<your-model-api-key>

在本部分中,您将使用 Voyage AI嵌入模型和Python客户端生成向量嵌入。

Voyage AI嵌入图
点击放大
1

在终端中运行以下命令,创建项目并安装 Voyage AI Python客户端。

mkdir mongodb-voyage-quickstart
cd mongodb-voyage-quickstart
pip install --upgrade voyageai
2

在项目中创建一个名为 quickstart.py 的文件,并将以下代码粘贴到其中。此代码初始化 Voyage AI客户端,定义示例文本,并使用客户端访问 Voyage API以使用 voyage-4-large 模型生成向量嵌入。

有关详细信息,请参阅Python客户端或浏览完整的API规范。

import voyageai
# Initialize Voyage client
vo = voyageai.Client()
# Sample texts
texts = [
"hello, world",
"welcome to voyage ai!"
]
# Generate embeddings
result = vo.embed(
texts,
model="voyage-4-large"
)
print(f"Generated {len(result.embeddings)} embeddings")
print(f"Each embedding has {len(result.embeddings[0])} dimensions")
print(f"First embedding (truncated): {result.embeddings[0][:5]}...")
3

在终端中运行以下命令以生成嵌入。

python quickstart.py
Generated 2 embeddings
Each embedding has 1024 dimensions
First embedding (truncated): [-0.02806740067899227, 0.05503412336111069, 0.0038576999213546515, -0.04668188467621803, 0.007834268733859062]...

现在您已经知道如何生成向量嵌入,构建一个基本的 RAG 应用程序,以学习如何使用 Voyage AI模型来实现AI搜索和检索。RAG 使法学硕士能够在生成答案之前从数据中检索相关信息,从而生成上下文感知的响应。

注意

RAG 应用程序需要访问 LLM。本教程提供了使用 Anthropic 或 OpenAI 的示例,但您也可以使用您选择的任何 LLM提供商。

基本 Voyage AI RAG 图表
点击放大

现在您已经使用 Voyage AI创建了第一个应用程序,请展开以下部分以学习;了解有关本快速入门中涵盖的概念的更多信息:

您使用 voyage-4-large 嵌入模型将文本转换为 1024 维向量。每个维度代表一个学习到的功能,捕获文本含义的各个方面。

您还使用了 rerank-2.5 重新排名模型来根据查询优化搜索结果。分数越高表示查询和文档内容之间的相似性越强。

要学习;了解更多信息,请参阅模型概述。

您使用 voyageai Python SDK 访问权限 Embedding and Reranking API。使用 SDK 调用模型时,您指定了 input_type 参数以提高搜索准确性:

  • document:优化表示数据的嵌入。

  • query:优化查询嵌入。

要学习;了解更多信息,请参阅文本嵌入用法指定输入类型。

您使用点积相似度函数查找语义相似的文档。Numpy 是一个开源库,可为向量运算提供内置函数,该应用程序使用 dot()argsort() 函数来计算查询与文档嵌入之间的点积相似度,然后按其相似度分数对文档进行排序。

要学习;了解有关语义搜索的更多信息,请参阅使用 Voyage AI嵌入进行语义搜索。有关文本嵌入用法和 input_type 参数的更多详细信息,请参阅用法

您将语义搜索和重新排名与 LLM 相结合,创建了一个基本的 RAG 系统。系统使用语义搜索检索相关文档,对它们重新排名,然后向LLM提供最相关的文档,以对您的查询生成准确、有根据的响应。

要学习;了解有关 RAG 的更多信息,请参阅使用 Voyage AI进行检索增强生成 (RAG)。

要继续学习,请参阅以下资源: