快速入门:使用 Vertex AI Gemini API 生成文本
在本快速入门中,您将向 Vertex AI Gemini API 发送以下多模态请求,并查看相应响应:
- 文本提示
- 提示和图片
- 问题和视频文件(带音轨)
您可以通过在本地环境中使用编程语言 SDK 或 REST API 来完成本快速入门。
前提条件
如需完成本快速入门,您需要满足以下条件:
- 设置 Google Cloud 项目并启用 Vertex AI API
- 在本地机器上:
- 安装、初始化和使用 Google Cloud CLI 进行身份验证
- 安装适用于您所用语言的 SDK
设置 Google Cloud 项目
设置您的 Google Cloud 项目并启用 Vertex AI API。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
设置 Google Cloud CLI
在本地机器上,使用 Google Cloud CLI 进行设置和身份验证。如果您熟悉 Google AI Studio 中的 Gemini API,请注意,Vertex AI Gemini API 使用 Identity and Access Management(身份和访问管理)功能,而不是 API 密钥来管理访问权限。
-
安装并初始化 Google Cloud CLI。
-
如果您之前安装了 gcloud CLI,请运行以下命令,确保您的
gcloud
组件已更新。gcloud components update
-
如需使用 gcloud CLI 进行身份验证,请运行以下命令,生成本地应用默认凭据 (ADC) 文件。该命令启动的 Web 流程用于提供您的用户凭据。
gcloud auth application-default login
如需了解详情,请参阅设置应用默认凭据。
为您的编程语言设置 SDK
在本地机器上,点击以下任一标签页,以安装适用于您的编程语言的 SDK。
Python
运行以下命令,安装并更新 Python 版 Vertex AI SDK。
pip3 install --upgrade "google-cloud-aiplatform>=1.64"
Node.js
运行以下命令,安装或更新 Node.js 版 aiplatform
SDK。
npm install @google-cloud/vertexai
Java
如需将 google-cloud-vertexai
添加为依赖项,请为您的环境添加适当的代码。
带有 BOM 的 Maven
将以下 HTML 添加到 pom.xml
:
<dependencyManagement> <dependencies> <dependency> <artifactId>libraries-bom</artifactId> <groupId>com.google.cloud</groupId> <scope>import</scope> <type>pom</type> <version>26.34.0</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-vertexai</artifactId> </dependency> </dependencies>
不带 BOM 的 Maven
将以下内容添加到 pom.xml
:
<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-vertexai</artifactId> <version>0.4.0</version> </dependency>
不带 BOM 的 Gradle
将以下内容添加到 build.gradle
中:
implementation 'com.google.cloud:google-cloud-vertexai:0.4.0'
Go
查看可用的 Vertex AI API Go 软件包,以确定哪个软件包最符合您的项目需求。
(推荐)
cloud.google.com/go/vertexai
vertexai
是人工编写的软件包,可通过其访问常用功能和特征。对于大多数使用 Vertex AI API 进行构建的开发者,建议将此软件包作为起点。如需访问此软件包尚未涵盖的功能和特性,请改用自动生成的
aiplatform
软件包。如需安装此软件包,请运行以下命令。
go get cloud.google.com/go/vertexai
cloud.google.com/go/aiplatform
aiplatform
是自动生成的软件包。此软件包适用于需要访问人工编写的
vertexai
软件包尚未提供的 Vertex AI API 功能和特性的项目。如需安装此软件包,请运行以下命令。
go get cloud.google.com/go/aiplatform
C#
安装 NuGet 提供的 Google.Cloud.AIPlatform.V1
软件包。使用您首选的方法将软件包添加到项目中。例如,在 Visual Studio 中右键点击项目,然后选择管理 NuGet 软件包...。
REST
输入以下命令来配置环境变量。将
PROJECT_ID
替换为您的 Google Cloud 项目的 ID。MODEL_ID="gemini-1.5-flash-002" PROJECT_ID="PROJECT_ID"
使用 Google Cloud CLI 运行以下命令,以预配端点。
gcloud beta services identity create --service=aiplatform.googleapis.com --project=${PROJECT_ID}
向 Vertex AI Gemini API 发送问题
请使用以下代码向 Vertex AI Gemini API 发送提示。此示例会返回一家专营花店的可能名称列表。
您可以通过命令行、使用 IDE 或在应用中添加代码来运行代码。
Python
如需发送提示请求,请创建一个 Python 文件 (.py
),并将以下代码复制到该文件中。将 PROJECT_ID
的值设置为您的 Google Cloud 项目的 ID。更新值后,运行代码。
Node.js
如需发送提示请求,请创建一个 Node.js 文件 (.js
),并将以下代码复制到该文件中。将 PROJECT_ID
替换为您的 Google Cloud 项目的 ID。更新值后,运行代码。
Java
如需发送提示请求,请创建一个 Java 文件 (.java
),并将以下代码复制到该文件中。将 your-google-cloud-project-id
设置为您的 Google Cloud 项目 ID。更新值后,运行代码。
Go
如需发送提示请求,请创建一个 Go 文件 (.go
),并将以下代码复制到该文件中。将 projectID
替换为您的 Google Cloud 项目的 ID。更新值后,运行代码。
C#
如需发送提示请求,请创建一个 C# 文件 (.cs
),并将以下代码复制到该文件中。将 your-project-id
设置为您的 Google Cloud 项目 ID。更新值后,运行代码。
REST
如需发送此提示请求,请从命令行运行 curl 命令,或在应用中添加 REST 调用。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:generateContent -d \ $'{ "contents": { "role": "user", "parts": [ { "text": "What\'s a good name for a flower shop that specializes in selling bouquets of dried flowers?" } ] } }'
向 Vertex AI Gemini API 发送问题和图片
使用以下代码向 Vertex AI Gemini API 发送包含文本和图片的提示。此示例会返回所提供图片的说明(Java 示例图片)。
Python
如需发送提示请求,请创建一个 Python 文件 (.py
),并将以下代码复制到该文件中。将 PROJECT_ID
的值设置为您的 Google Cloud 项目的 ID。更新值后,运行代码。
Node.js
如需发送提示请求,请创建一个 Node.js 文件 (.js
),并将以下代码复制到该文件中。将 PROJECT_ID
替换为您的 Google Cloud 项目的 ID。更新值后,运行代码。
Java
如需发送提示请求,请创建一个 Java 文件 (.java
),并将以下代码复制到该文件中。将 your-google-cloud-project-id
设置为您的 Google Cloud 项目 ID。更新值后,运行代码。
Go
如需发送提示请求,请创建一个 Go 文件 (.go
),并将以下代码复制到该文件中。将 projectID
替换为您的 Google Cloud 项目的 ID。更新值后,运行代码。
C#
如需发送提示请求,请创建一个 C# 文件 (.cs
),并将以下代码复制到该文件中。将 your-project-id
设置为您的 Google Cloud 项目 ID。更新值后,运行代码。
REST
您可以从 IDE 发送此提示请求,也可以根据需要将 REST 调用嵌入到应用中。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:generateContent -d \ $'{ "contents": { "role": "user", "parts": [ { "fileData": { "mimeType": "image/jpeg", "fileUri": "gs://generativeai-downloads/images/scones.jpg" } }, { "text": "Describe this picture." } ] } }'
模型会返回回复。 请注意,系统分多个部分生成回复,其中每个部分会分别评估安全性。
向 Vertex AI Gemini API 发送提示和视频
使用以下代码向 Vertex AI Gemini API 发送包含文本、音频和视频的提示。此示例会返回提供的视频的说明,包括音轨中的所有重要内容。
您可以使用命令行、IDE 或在应用中添加 REST 调用来发送此提示请求。
Python
如需发送提示请求,请创建一个 Python 文件 (.py
),并将以下代码复制到该文件中。将 PROJECT_ID
的值设置为您的 Google Cloud 项目的 ID。更新值后,运行代码。
Node.js
如需发送提示请求,请创建一个 Node.js 文件 (.js
),并将以下代码复制到该文件中。将 PROJECT_ID
替换为您的 Google Cloud 项目的 ID。更新值后,运行代码。
Java
如需发送提示请求,请创建一个 Java 文件 (.java
),并将以下代码复制到该文件中。将 your-google-cloud-project-id
设置为您的 Google Cloud 项目 ID。更新值后,运行代码。
Go
如需发送提示请求,请创建一个 Go 文件 (.go
),并将以下代码复制到该文件中。将 projectID
替换为您的 Google Cloud 项目的 ID。更新值后,运行代码。
C#
如需发送提示请求,请创建一个 C# 文件 (.cs
),并将以下代码复制到该文件中。将 your-project-id
设置为您的 Google Cloud 项目 ID。更新值后,运行代码。
REST
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:generateContent -d \ $'{ "contents": { "role": "user", "parts": [ { "fileData": { "mimeType": "video/mp4", "fileUri": "gs://cloud-samples-data/generative-ai/video/pixel8.mp4" } }, { "text": "Provide a description of the video. The description should also contain anything important which people say in the video." } ] } }'
模型会返回回复。 请注意,系统分多个部分生成回复,其中每个部分会分别评估安全性。
后续步骤
- 详细了解 Vertex AI 中的 Gemini API。
- 探索适用于 Python、Node.js、Java、Go 或 C# 的 Vertex AI Gemini API SDK 参考文档。
- 请参阅 Vertex AI 中适用于 Gemini 的 Model API。
- 了解如何使用 OpenAI 库调用 Vertex AI 模型。