与 Google Cloud Platform 相关的功能
聊天模型
Gemini 模型
通过 ChatGoogleGenerativeAI
访问 Gemini 模型,例如 gemini-pro
和 gemini-pro-vision
,或者如果使用 VertexAI,则通过 ChatVertexAI
类访问。
- GenAI
- VertexAI
提示
- npm
- Yarn
- pnpm
npm install @langchain/google-genai @langchain/core
yarn add @langchain/google-genai @langchain/core
pnpm add @langchain/google-genai @langchain/core
配置您的 API 密钥。
export GOOGLE_API_KEY=your-api-key
import { ChatGoogleGenerativeAI } from "@langchain/google-genai";
const model = new ChatGoogleGenerativeAI({
model: "gemini-pro",
maxOutputTokens: 2048,
});
// Batch and stream are also supported
const res = await model.invoke([
[
"human",
"What would be a good company name for a company that makes colorful socks?",
],
]);
Gemini 视觉模型在提供单个人类消息时支持图像输入。例如
const visionModel = new ChatGoogleGenerativeAI({
model: "gemini-pro-vision",
maxOutputTokens: 2048,
});
const image = fs.readFileSync("./hotdog.jpg").toString("base64");
const input2 = [
new HumanMessage({
content: [
{
type: "text",
text: "Describe the following image.",
},
{
type: "image_url",
image_url: `data:image/png;base64,${image}`,
},
],
}),
];
const res = await visionModel.invoke(input2);
提示
单击 此处 获取 @langchain/google-genai
特定集成文档
提示
- npm
- Yarn
- pnpm
npm install @langchain/google-vertexai @langchain/core
yarn add @langchain/google-vertexai @langchain/core
pnpm add @langchain/google-vertexai @langchain/core
然后,您需要添加您的服务帐户凭据,可以直接作为 GOOGLE_VERTEX_AI_WEB_CREDENTIALS
环境变量
GOOGLE_VERTEX_AI_WEB_CREDENTIALS={"type":"service_account","project_id":"YOUR_PROJECT-12345",...}
或作为文件路径
GOOGLE_VERTEX_AI_WEB_CREDENTIALS_FILE=/path/to/your/credentials.json
import { ChatVertexAI } from "@langchain/google-vertexai";
// Or, if using the web entrypoint:
// import { ChatVertexAI } from "@langchain/google-vertexai-web";
const model = new ChatVertexAI({
model: "gemini-1.0-pro",
maxOutputTokens: 2048,
});
// Batch and stream are also supported
const res = await model.invoke([
[
"human",
"What would be a good company name for a company that makes colorful socks?",
],
]);
Gemini 视觉模型在提供单个人类消息时支持图像输入。例如
const visionModel = new ChatVertexAI({
model: "gemini-pro-vision",
maxOutputTokens: 2048,
});
const image = fs.readFileSync("./hotdog.png").toString("base64");
const input2 = [
new HumanMessage({
content: [
{
type: "text",
text: "Describe the following image.",
},
{
type: "image_url",
image_url: `data:image/png;base64,${image}`,
},
],
}),
];
const res = await visionModel.invoke(input2);
提示
单击 此处 获取 @langchain/google-vertexai
特定集成文档
image_url
的值必须是 base64 编码的图像(例如:data:image/png;base64,abcd124
)。
向量存储
Vertex AI 向量搜索
Vertex AI 向量搜索(以前称为 Vertex AI 匹配引擎)提供业界领先的高规模低延迟向量数据库。这些向量数据库通常被称为向量相似度匹配或近似最近邻 (ANN) 服务。
import { MatchingEngine } from "langchain/vectorstores/googlevertexai";
工具
Google 搜索
- 设置自定义搜索引擎,按照 这些说明
- 从上一步获取 API 密钥和自定义搜索引擎 ID,并将它们分别设置为环境变量
GOOGLE_API_KEY
和GOOGLE_CSE_ID
存在一个 GoogleCustomSearch
实用程序,它包装了这个 API。要导入这个实用程序
import { GoogleCustomSearch } from "langchain/tools";
我们可以轻松地将这个包装器加载为一个工具(与代理一起使用)。我们可以通过以下方式做到这一点
const tools = [new GoogleCustomSearch({})];
// Pass this variable into your agent.