ChatGoogle 聊天模型。有关所有 ChatGoogle 功能和配置的详细文档,请前往 API 参考。
概览
集成详情
模型功能
有关如何使用特定功能的指南,请参见下表表头中的链接。
请注意,虽然支持对数概率,但 Gemini 对它们的使用有相当严格的限制。
设置
通过 AI Studio 获取凭证(API 密钥)
要通过 Google AI Studio(有时称为 Generative AI API)使用该模型,您需要一个 API 密钥。您可以从 Google AI Studio 获取一个。 获得 API 密钥后,您可以将其设置为环境变量:通过 Vertex AI Express Mode 获取凭证(API 密钥)
Vertex AI 也支持 Express Mode,允许您使用 API 密钥进行身份验证。您可以从 Google Cloud Console 获取 Vertex AI API 密钥。 获得 API 密钥后,您可以将其设置为环境变量:gcp。
通过 Vertex AI 获取凭证(OAuth 应用程序默认凭据 / ADC)
对于 Google Cloud 上的生产环境,建议使用 应用程序默认凭据 (ADC)。这在 Node.js 环境中受支持。 如果您在本地机器上运行,可以通过安装 Google Cloud SDK 并运行以下命令来设置 ADC:GOOGLE_APPLICATION_CREDENTIALS 环境变量设置为服务帐户密钥文件的路径:
通过 Vertex AI 获取凭证(OAuth 保存的凭据)
如果您在 Web 环境中运行或希望直接提供凭据,可以使用GOOGLE_CLOUD_CREDENTIALS 环境变量。这应该包含服务帐户密钥文件的内容(而不是路径)。
credentials 参数直接提供这些凭据。
追踪
如果您希望获得模型调用的自动追踪,也可以通过取消下面的注释来设置您的 LangSmith API 密钥:安装
LangChain 的ChatGoogle 集成位于 @langchain/google 包中:
实例化
导入路径取决于您是在 Node.js 环境还是 Web/Edge 环境中运行。- 如果您提供
apiKey(或设置了GOOGLE_API_KEY),则默认使用 Google AI。 - 如果您提供
credentials(或在 Node 中设置了GOOGLE_APPLICATION_CREDENTIALS/GOOGLE_CLOUD_CREDENTIALS),则默认使用 Vertex AI。
Google AI (AI Studio)
Vertex AI
Vertex AI Express Mode
要使用带有 API 密钥的 Vertex AI(Express Mode),必须显式设置platformType。
模型配置最佳实践
虽然ChatGoogle 支持标准的模型参数,如 temperature、topP 和 topK,但使用 Gemini 模型的最佳实践是将这些值保持为默认值。这些模型围绕这些默认值进行了高度调优。
如果您想控制模型的“随机性”或“创造性”,建议在提示或系统提示中使用具体的指令(例如,“请发挥创意”、“给出简洁的事实性回答”),而不是调整温度参数。
调用
响应元数据
AIMessage 响应包含关于生成的元数据,包括令牌使用情况和对数概率。
令牌使用情况
usage_metadata 属性允许您检查令牌计数。
对数概率
如果您在模型配置中启用了logprobs,它们将在 response_metadata 中可用。
安全设置
默认情况下,当前版本的 Gemini 已关闭安全设置。 如果您想为各种类别启用安全设置,可以使用模型的safetySettings 属性。
结构化输出
您可以使用withStructuredOutput 方法从模型获取结构化的 JSON 输出。
工具调用
ChatGoogle 支持标准的 LangChain 工具调用 以及 Gemini 特有的“专业工具”(如代码执行和基础搜索)。
标准工具
您可以使用通过 Zod 模式定义的标准 LangChain 工具。专业工具
Gemini 提供了多个内置工具用于代码执行和基础搜索。代码执行
Gemini 模型支持代码执行,允许模型生成并运行 Python 代码来解决复杂问题。使用 Google 搜索进行基础搜索
您可以使用googleSearch 工具,利用 Google 搜索对回答进行基础搜索。这对于有关时事或特定事实的问题很有用。
googleSearchRetrieval 工具为向后兼容而保留,但建议使用 googleSearch。使用 URL 检索进行基础搜索
您也可以使用特定的 URL 对回答进行基础搜索。使用数据存储进行基础搜索
如果您使用 Vertex AI (platformType: "gcp"),则可以使用 Vertex AI Search 数据存储对回答进行基础搜索。
上下文缓存
默认情况下,Gemini 模型会进行隐式上下文缓存。如果您发送给 Gemini 的历史记录开头与其缓存中的上下文完全匹配,它将减少该请求的令牌成本。 您也可以明确地将某些内容一次传递给模型,缓存输入令牌,然后在后续请求中引用缓存的令牌以减少成本和延迟。LangChain 不支持创建此显式缓存,但如果您已创建缓存,可以在调用中引用它。多模态请求
ChatGoogle 模型支持多模态请求,允许您发送图像、音频和视频以及文本。您可以在消息中使用 contentBlocks 字段以结构化的方式提供这些输入。
图像
音频
视频
推理 / 思考
Google 的 Gemini 2.5 和 Gemini 3 模型支持“思考”或“推理”步骤。即使您没有显式配置,这些模型也可能执行推理,但只有当您显式设置推理/思考的量时,库才会返回推理摘要(思考块)。 此库在不同模型间提供了兼容性,允许您使用统一的参数:-
maxReasoningTokens(或thinkingBudget):指定用于推理的最大令牌数。0:关闭推理(如果支持)。-1:使用模型默认值。> 0:设置特定的令牌预算。
-
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,然后在脚本中使用该 speaker。
API 参考
有关所有ChatGoogle 功能和配置的详细文档,请前往 API 参考。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

