ChatGoogle 对话模型。
有关所有 ChatGoogle 功能和配置的详细文档,请访问 API 参考。
概述
集成详情
模型功能
请参考表头中的链接,了解如何使用特定功能。
请注意,虽然支持 logprobs,但 Gemini 对其的使用限制较为严格。
设置
通过 AI 工作室(API 密钥)
要通过 Google AI 工作室(有时称为生成式 AI API)使用模型,您需要 API 密钥。您可以从 Google AI 工作室 获取。 获取 API 密钥后,您可以将其设置为环境变量:通过 Gemini 企业智能体平台 Express 模式(API 密钥)
Gemini 企业智能体平台也支持 Express 模式, 允许您使用 API 密钥进行身份验证。您可以从 Google 云端控制台 获取 Gemini 企业智能体平台 API 密钥。 获取 API 密钥后,您可以将其设置为环境变量:gcp。
通过 Gemini 企业智能体平台(应用默认凭证 / ADC)
对于 Google 云端的开发环境,建议使用 应用默认凭证 (ADC)。 此功能在 Node.js 环境中得到支持。 如果您在本地计算机上运行,可以通过安装 Google Cloud SDK 并运行:GOOGLE_APPLICATION_CREDENTIALS 环境变量设置为您的服务账户密钥文件的路径:
通过 Gemini 企业智能体平台(OAuth 保存的凭证)
如果您在 Web 环境中运行或希望直接提供凭证,您可以使用GOOGLE_CLOUD_CREDENTIALS 环境变量。这应包含您的服务账户密钥文件的内容(而不是路径)。
credentials 参数直接在代码中提供这些凭证。
跟踪
如果您希望自动跟踪您的模型调用,可以通过取消注释以下内容来设置您的 LangSmith API 密钥:安装
LangChainChatGoogle 集成位于 @langchain/google 包中:
实例化
导入路径取决于您是在 Node.js 环境还是 Web/边缘环境中运行。- 如果您提供
apiKey(或设置GOOGLE_API_KEY),则默认为 Google AI。 - 如果您提供
credentials(或设置GOOGLE_APPLICATION_CREDENTIALS/GOOGLE_CLOUD_CREDENTIALS在 Node 中),则默认为 Gemini 企业智能体平台。
Google AI (AI 工作室)
Gemini 企业智能体平台
Gemini 企业智能体平台 Express 模式
要使用 Gemini 企业智能体平台(API 密钥模式),您必须显式设置platformType。
模型配置最佳实践
虽然ChatGoogle 支持标准模型参数,如 temperature、topP 和 topK,
但使用 Gemini 模型的最佳实践是保持这些参数的默认值。模型针对这些默认值进行了高度优化。
如果您想控制模型的“随机性”或“创造性”,建议在提示词或系统提示词中使用特定指令(例如,“要富有创意”、“给出简洁的事实性答案”),而不是调整温度。
调用
响应元数据
AIMessage 响应包含有关生成过程的元数据,包括 Token 使用情况和 log probabilities。
Token 使用情况
usage_metadata 属性允许您检查 Token 计数。
Logprobs
如果您在模型配置中启用logprobs,则它们将可在 response_metadata 中找到。
安全设置
默认情况下,当前版本的 Gemini 已关闭安全设置。 如果您想为不同类别启用安全设置,可以使用模型的safetySettings 属性。
结构化输出
您可以使用withStructuredOutput 方法从模型获取结构化 JSON 输出。
工具调用
ChatGoogle 支持标准的 LangChain 工具调用,以及 Gemini 特有的 “专业工具”(如代码执行和接地)。
标准工具
您可以使用使用 Zod 模式定义的标准 LangChain 工具。专业工具
Gemini 提供了几个用于代码执行和接地的内置工具。代码执行
Gemini 模型支持代码执行,这允许模型生成并运行 Python 代码来解决复杂问题。使用 Google 搜索接地
您可以使用googleSearch 工具使用 Google 搜索接地。
这对于关于时事或特定事实的问题很有用。
googleSearchRetrieval 工具是为了向后兼容而保留的,但 googleSearch 更受推荐。使用 URL 接地
您也可以使用特定的 URL 接地。使用数据存储接地
如果您正在使用 Gemini 企业智能体平台(platformType: "gcp"),您可以使用 Agent Search 数据存储接地。
上下文缓存
默认情况下,Gemini 模型执行隐式上下文缓存。如果您发送给 Gemini 的历史记录的开头与 Gemini 缓存中的上下文完全匹配,它将降低该请求的 Token 成本。 您还可以显式地将一些内容一次性传递给模型,缓存输入 Token,然后在后续请求中引用缓存的 Token 以降低成本和延迟。创建这种显式缓存不受 LangChain 支持,但如果您已经创建了缓存,您可以在调用中引用它。多模态请求
ChatGoogle 模型支持多模态请求,允许您发送图像、音频和视频,以及文本。您可以使用消息中的 contentBlocks 字段以结构化的方式提供这些输入。
图像
音频
视频
推理 / 思考
Google 的 Gemini 2.5 和 Gemini 3 模型支持 “思考” 或 “推理” 步骤。 即使您没有显式配置,这些模型也可能执行推理,但库只有在您显式设置推理/思考的程度值时,才会返回推理摘要(思考块)。 该库提供了模型之间的兼容性,允许您使用统一的参数:-
maxReasoningTokens(或thinkingBudget):指定用于推理的最大 Token 数。0:关闭推理(如果受支持)。-1:使用模型的默认值。> 0:设置特定的 Token 预算。
-
reasoningEffort(或thinkingLevel):设置相对努力程度。- 值:
"minimal"、"low"、"medium"、"high"。
- 值:
思考块还包括一个
reasoningContentBlock 字段。这包含基于 Gemini 发送的底层部分的 ContentBlock。虽然这通常是文本块,但对于 Nano Banana Pro 等多模态模型,它可能是图像或其他媒体块。使用 Nano Banana 和 Nano Banana Pro 生成图像
要生成图像,您需要使用支持此功能的模型(例如gemini-2.5-flash-image),并将 responseModalities 配置为包含 “IMAGE”。
语音生成(TTS)
一些 Gemini 模型支持生成语音(音频输出)。要启用此功能,请将responseModalities 配置为包含 “AUDIO”,并提供一个 speechConfig。
speechConfig 可以是一个 完整的 Gemini 语音配置对象,但对于大多数情况,您只需要提供一个包含预构建的 语音名称 的字符串。
许多模型以原始 PCM 格式(audio/L16)返回音频,这需要 WAV 头才能被大多数媒体播放器播放。
多说话人 TTS
您还可以为单个请求配置多个说话人。这适用于让 Gemini 朗读脚本。此简化的speechConfig 要求您为每个预定义的 name(代表语音)分配一个 speaker,然后在脚本中使用该说话人。
API 参考
有关所有ChatGoogle 功能和配置的详细文档,请访问 API 参考。
官方原文:src/oss/javascript/integrations/chat/google.mdx · 非官方翻译,译文由 AI 生成,以英文原文为准。