所有与 Google Cloud、Google Gemini 及其他 Google 产品相关的功能。
- Google 生成式 AI (Gemini API & AI Studio):通过 Gemini API 直接访问 Google Gemini 模型。使用 Google AI Studio 进行快速原型设计,并通过
langchain-google-genai包快速上手。这通常是个人开发者的最佳起点。 - Google Cloud (Vertex AI 及其他服务):通过 Google Cloud Platform 访问 Gemini 模型、Vertex AI Model Garden 以及各种云服务(数据库、存储、文档 AI 等)。使用
langchain-google-vertexai包来获取 Vertex AI 模型,以及特定包(例如langchain-google-cloud-sql-pg、langchain-google-community)来获取其他云服务。这非常适合已在使用 Google Cloud 或需要企业级功能(如 MLOps、特定模型微调或企业支持)的开发者。
有关更多差异信息,请参阅 Google 关于从 Gemini API 迁移到 Vertex AI 的指南。
Gemini 模型和 Vertex AI 平台的集成包维护在
langchain-google 仓库中。
您可以在 googleapis
GitHub 组织和 langchain-google-community 包中找到 LangChain 与其他 Google API 和服务的集成。
Google 生成式 AI (Gemini API & AI Studio)
使用 Gemini API 直接访问 Google Gemini 模型,最适合快速开发和实验。Gemini 模型可在 Google AI Studio 中找到。
pip install -U langchain-google-genai
免费开始使用,并从 Google AI Studio 获取您的 API 密钥。
export GOOGLE_API_KEY="YOUR_API_KEY"
Chat Models
使用 ChatGoogleGenerativeAI 类与 Gemini 2.0 和 2.5 模型 进行交互。详情请参阅
本指南。
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain_core.messages import HumanMessage
llm = ChatGoogleGenerativeAI(model="gemini-2.0-flash")
# 简单的文本调用
result = llm.invoke("Sing a ballad of LangChain.")
print(result.content)
# 使用 gemini-pro-vision 进行多模态调用
message = HumanMessage(
content=[
{
"type": "text",
"text": "What's in this image?",
},
{"type": "image_url", "image_url": "https://picsum.photos/seed/picsum/200/300"},
]
)
result = llm.invoke([message])
print(result.content)
image_url 可以是公共 URL、GCS URI(gs://...)、本地文件路径、base64 编码的图像字符串(data:image/png;base64,...)或 PIL Image 对象。
Embedding Models
使用 GoogleGenerativeAIEmbeddings 类生成文本嵌入,例如使用 gemini-embedding-exp-03-07 模型。
请参阅用法示例。
from langchain_google_genai import GoogleGenerativeAIEmbeddings
embeddings = GoogleGenerativeAIEmbeddings(model="models/gemini-embedding-exp-03-07")
vector = embeddings.embed_query("What are embeddings?")
print(vector[:5])
LLMs
使用 (旧版) LLM
接口和 GoogleGenerativeAI 类来访问相同的 Gemini 模型。
请参阅用法示例。
from langchain_google_genai import GoogleGenerativeAI
llm = GoogleGenerativeAI(model="gemini-2.0-flash")
result = llm.invoke("Sing a ballad of LangChain.")
print(result)
Google Cloud
通过 Vertex AI 和特定的云集成访问 Gemini 模型、Vertex AI Model Garden 及其他 Google Cloud 服务。
Vertex AI 模型需要 langchain-google-vertexai 包。其他服务可能需要额外的包,如 langchain-google-community、langchain-google-cloud-sql-pg 等。
pip install langchain-google-vertexai
# pip install langchain-google-community[...] # 适用于其他服务
Google Cloud 集成通常使用 Application Default Credentials (ADC)。有关设置说明(例如,使用 gcloud auth application-default login),请参阅Google Cloud 身份验证文档。
Chat Models
Vertex AI
通过 Vertex AI 平台访问 Gemini 等聊 天模型。
请参阅用法示例。
from langchain_google_vertexai import ChatVertexAI
Vertex AI Model Garden 中的 Anthropic 模型
请参阅用法示例。
from langchain_google_vertexai.model_garden import ChatAnthropicVertex
Vertex AI Model Garden 中的 Llama 模型
from langchain_google_vertexai.model_garden_maas.llama import VertexModelGardenLlama
Vertex AI Model Garden 中的 Mistral 模型
from langchain_google_vertexai.model_garden_maas.mistral import VertexModelGardenMistral
Hugging Face 的本地 Gemma 模型
从
HuggingFace加载的本地Gemma模型。需要langchain-google-vertexai。
from langchain_google_vertexai.gemma import GemmaChatLocalHF
Kaggle 的本地 Gemma 模型
从
Kaggle加载的本地Gemma模型。需要langchain-google-vertexai。
from langchain_google_vertexai.gemma import GemmaChatLocalKaggle