Skip to main content

Google Vertex

vertex 提供程序与 Google 的 Vertex AI 服务兼容,该服务提供对 Gemini 和 Bison 等模型的访问。

您可以通过指定 Vertex AI 提供的任何可用稳定或最新模型版本来使用它。这些包括:

  • vertex:chat-bison
  • vertex:chat-bison@001
  • vertex:chat-bison@002
  • vertex:chat-bison-32k
  • vertex:chat-bison-32k@001
  • vertex:chat-bison-32k@002
  • vertex:codechat-bison
  • vertex:codechat-bison@001
  • vertex:codechat-bison@002
  • vertex:codechat-bison-32k
  • vertex:codechat-bison-32k@001
  • vertex:codechat-bison-32k@002
  • vertex:gemini-pro
  • vertex:gemini-ultra
  • vertex:gemini-1.0-pro-vision
  • vertex:gemini-1.0-pro-vision-001
  • vertex:gemini-1.0-pro
  • vertex:gemini-1.0-pro-001
  • vertex:gemini-1.0-pro-002
  • vertex:gemini-pro-vision
  • vertex:gemini-1.5-pro-latest
  • vertex:gemini-1.5-pro-preview-0409
  • vertex:gemini-1.5-pro-preview-0514
  • vertex:gemini-1.5-pro
  • vertex:gemini-1.5-pro-001
  • vertex:gemini-1.0-pro-vision-001
  • vertex:gemini-1.5-flash-preview-0514
  • vertex:gemini-1.5-flash-001
  • vertex:aqa

还支持诸如 vertex:embedding:text-embedding-004 的嵌入模型。

tip

如果您使用的是 Google AI Studio,请参阅 google 提供程序

使用 Google 进行身份验证

要在 Node 中调用 Vertex AI 模型,您需要将 Google 的官方身份验证客户端作为对等依赖项安装:

npm i google-auth-library

确保在 Google Cloud 的相关项目中启用了 Vertex AI API。然后,确保您已在 gcloud CLI 中选择了该项目:

gcloud config set project PROJECT_ID

接下来,确保您已使用以下方法之一向 Google Cloud 进行了身份验证:

  • 您已使用 gcloud auth application-default login 登录到帐户
  • 您正在使用具有适当角色的服务帐户的机器上运行
  • 您已下载具有适当角色的服务帐户的凭据,并将 GOOGLE_APPLICATION_CREDENTIALS 环境变量设置为凭据文件的路径。

环境变量

  • VERTEX_API_KEY - gcloud API 令牌。获取 API 密钥的最简单方法是运行 gcloud auth print-access-token
  • VERTEX_PROJECT_ID - gcloud 项目 ID
  • VERTEX_REGION - gcloud 区域,默认为 us-central1
  • VERTEX_PUBLISHER - 模型发布者,默认为 google
  • VERTEX_API_HOST - 用于覆盖完整的 Google API 主机,例如用于 LLM 代理,默认为 {region}-aiplatform.googleapis.com

Vertex 提供程序还支持各种配置选项,例如上下文、示例、温度、maxOutputTokens 等,可用于自定义模型的行为,如下所示:

providers:
- id: vertex:chat-bison-32k
config:
generationConfig:
temperature: 0
maxOutputTokens: 1024

安全设置

可以使用 safetySettings 键配置 AI 安全设置。例如:

- id: vertex:gemini-pro
config:
safetySettings:
- category: HARM_CATEGORY_HARASSMENT
threshold: BLOCK_ONLY_HIGH
- category: HARM_CATEGORY_VIOLENCE
threshold: BLOCK_MEDIUM_AND_ABOVE

有关 Google 的 SafetySetting API 的更多详细信息,请参见此处

覆盖评分器

要使用 Vertex 模型进行模型评分(例如 llm-rubricfactuality 断言),或覆盖 similar 断言的嵌入提供程序,请使用 defaultTest 覆盖所有测试的提供程序:

defaultTest:
options:
provider:
# 使用 gemini-pro 进行模型评分评估(例如 llm-rubric 等断言)
text: vertex:chat:gemini-pro
# 使用 vertex 嵌入进行相似性评估
embedding: vertex:embedding:text-embedding-004

其他配置选项

选项描述默认值
apiKeygcloud API 令牌。
apiHost完整的 Google API 主机,例如用于 LLM 代理。{region}-aiplatform.googleapis.com
projectIdgcloud 项目 ID。None
regiongcloud 区域。us-central1
publisher模型发布者。google
context生成响应时模型考虑的上下文。None
examples用于引导模型的示例。None
safetySettings安全设置 用于过滤生成的内容。None
generationConfig.temperature控制随机性。较低的值使模型更具确定性。None
generationConfig.maxOutputTokens生成的最大令牌数。None
generationConfig.topP核采样:较高的值使模型考虑更多候选者。None
generationConfig.topK通过随机采样控制多样性:较低的值使采样更具确定性。None
generationConfig.stopSequences将停止输出生成的字符串集合。[]
toolConfig工具使用配置None
systemInstruction系统提示。支持 Nunjucks 模板变量 {{var}}None

请注意,并非所有模型都支持所有参数。请参阅 Google 文档 了解如何使用和格式化参数。