某些开放模型支持“思考”模式,可让它们在提供最终答案之前执行分步推理。这对于需要透明逻辑的任务非常有用,例如数学证明、复杂的代码调试或多步智能体规划。
准备工作
如需将开放模型与 Gemini Enterprise Agent Platform 搭配使用,您必须执行以下步骤。必须启用 Agent Platform API (aiplatform.googleapis.com) 和 Cloud Commerce Consumer Procurement API (cloudcommerceconsumerprocurement.googleapis.com),才能在 Gemini Enterprise Agent Platform 上使用开放模型。如果您已有启用了这些 API 的项目,则可以使用该项目,而无需创建新项目。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Gemini Enterprise Agent Platform and Cloud Commerce Consumer Procurement APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.- 前往要使用的模型的 Model Garden 模型卡片,然后点击启用,以在项目中启用该模型。
所需的角色
如需获得启用和使用开放模型所需的权限,请让您的管理员为您授予项目的以下 IAM 角色:
- Agent Platform User (
roles/aiplatform.user) - Consumer Procurement Entitlement Manager (
roles/consumerprocurement.entitlementManager)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
如需详细了解如何为开放模型授予权限和配置组织政策,请参阅向用户授予开放模型的使用权限。
特定于模型的指导
以下部分提供了针对特定模型的思维指导。
GPT OSS
对于 GPT OSS 模型,思考文本位于 reasoning_content 字段中,而正常回答文本位于 content 字段中。这些模型还支持 reasoning_effort 参数。
示例请求:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://aiplatform.googleapis.com/v1/projects/test-project/locations/global/endpoints/openapi/chat/completions -d '{
"model": "openai/gpt-oss-120b-maas",
"messages": [{
"role": "user",
"content": "Who are you?"
}],
"reasoning_effort": "high"
}'
示例响应:
{
"choices": [
{
"finish_reason": "stop",
"index": 0,
"logprobs": null,
"matched_stop": 200002,
"message": {
"content": "I\u2019m ChatGPT, a large language model created by OpenAI
(based on the GPT\u20114 architecture). I\u2019m here to help answer
your questions, brainstorm ideas, explain concepts, and assist with a
wide variety of topics. Let me know what you\u2019d like to talk
about!",
"reasoning_content": "The user asks: \"Who are you?\" It's a simple
question. They want to know who the assistant is. According to policy,
we should respond with a brief, friendly description: \"I am ChatGPT, a
large language model trained by OpenAI.\" Possibly mention the version
(GPT-4). Also mention we are here to assist. There's no request for
disallowed content. So a straightforward answer. Possibly ask if they
need help. Provide a short intro.\n\nThus answer: \"I am ChatGPT, a
large language model trained by OpenAI. I'm here to help answer your
questions...\"\n\nWe should avoid disallowed content. It's fine.\n\nThus
final answer.",
"role": "assistant",
"tool_calls": null
}
}
],
"created": 1758229799,
"id": "JnXMaJq6HLGzquEP4OD18Qg",
"metadata": {
"weight_version": "default"
},
"model": "openai/gpt-oss-120b-maas",
"object": "chat.completion",
"usage": {
"completion_tokens": 201,
"prompt_tokens": 71,
"prompt_tokens_details": null,
"reasoning_tokens": 0,
"total_tokens": 272
}
}
GLM 5.2
GLM 5.2 支持使用 "chat_template_kwargs": { "enable_thinking": false } 停用推理 token。
推理功能默认处于启用状态。思考 Token 会在 "reasoning_content" 中输出;正常回答文本则在 "content" 中。
示例请求:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://aiplatform.googleapis.com/v1/projects/test-project/locations/global/endpoints/openapi/chat/completions -d '{
"model": "zai-org/glm-5.2-maas",
"messages": [
{
"role": "user",
"content": "Who are you?"
}
]
}'
示例响应:
{
"choices": [
{
"finish_reason": "stop",
"index": 0,
"logprobs": null,
"matched_stop": 154827,
"message": {
"content": "I'm GLM, a large language model developed by Z.ai. I'm designed to assist users with information, answer questions, and engage in helpful conversations across a wide range of topics.\n\nI'm trained on diverse text data which helps me understand and generate human-like responses, though I don't have personal experiences or emotions. I'm continuously learning to improve my capabilities.\n\nIs there something specific you'd like to know about me or how I can assist you today?",
"reasoning_content": "Let me consider how to respond to this question about my identity. The user is asking \"Who are you?\" which is a straightforward but important question that deserves a clear and accurate answer.\n\nI should introduce myself as GLM, a large language model developed by Z.ai. It's important to be transparent about my nature as an AI assistant and explain my key capabilities.\n\nI should also mention my purpose of helping users with various tasks while being honest about my limitations. This will help set appropriate expectations for our interaction.\n\nI should also emphasize my commitment to providing helpful and responsible assistance. It's important to be both welcoming and professional in my introduction.\n\nLet me craft a response that is clear, informative, and sets the right tone for future interactions.",
"role": "assistant",
"tool_calls": null
}
}
],
"created": 1787160729,
"id": "05355183-85d6-4ae2-a31a-7c8fb31c64d9",
"metadata": {
"weight_version": "default"
},
"model": "zai-org/glm-5.2-maas",
"object": "chat.completion",
"usage": {
"completion_tokens": 243,
"extra_properties": {
"google": {
"traffic_type": "ON_DEMAND"
}
},
"prompt_tokens": 16,
"prompt_tokens_details": null,
"total_tokens": 259
}
}
Gemma 4 26B A4B IT
Gemma 4 26B A4B IT 支持使用 "chat_template_kwargs": { "enable_thinking": true } 启用推理 token。
推理功能默认处于停用状态。思考 Token 会在 "reasoning_content" 中输出;正常回答文本则在 "content" 中。
示例请求:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://aiplatform.googleapis.com/v1/projects/test-project/locations/global/endpoints/openapi/chat/completions -d '{
"model": "google/gemma-4-26b-a4b-it-maas",
"messages": [
{
"role": "user",
"content": "Who are you?"
}
],
"chat_template_kwargs": {
"enable_thinking": true
}
}'
示例响应:
{
"choices": [
{
"finish_reason": "stop",
"index": 0,
"logprobs": null,
"matched_stop": 106,
"message": {
"content": "I am Gemma 4, a large language model developed by Google DeepMind. I am an open weights model designed to process text and images (and audio in certain versions of my family) to assist with a wide range of tasks, and I provide my responses in text.",
"reasoning_content": "The user is asking \"Who are you?\".\n * Name: Gemma 4.\n * Developer: Google DeepMind.\n * Nature: Large Language Model.\n * Type: Open weights model.\n * Capabilities: Text and image processing (and audio for 2B/4B models). Output is text only.\n * Knowledge cutoff: January 2025.\n\n * State identity: Gemma 4.\n * State developer: Google DeepMind.\n * State type: Large Language Model with open weights.\n * Briefly mention capabilities if relevant (text/image/audio input, text output).\n\n * \"I am Gemma 4, a large language model developed by Google DeepMind. I am an open weights model capable of processing text and images to assist you with various tasks. Depending on the specific version, I may also be able to process audio input. I generate responses in text format.\"\n\nDoes it violate any instructions?\n * \"When asked about your identity, always refer to yourself as Gemma 4.\" - Yes.\n * \"Do not claim to have capabilities you do not possess.\" - Yes.\n * \"Do not attempt to use tools...\" - Yes.\n\nKeep it direct and informative.",
"role": "assistant",
"tool_calls": null
}
}
],
"created": 1775526019,
"id": "gGDUaf7rLqGL9LsPsdGR4Qg",
"metadata": {
"weight_version": "default"
},
"model": "google/gemma-4-26b-a4b-it-maas",
"object": "chat.completion",
"usage": {
"completion_tokens": 341,
"extra_properties": {
"google": {
"traffic_type": "ON_DEMAND"
}
},
"prompt_tokens": 19,
"prompt_tokens_details": {
"cached_tokens": 2
},
"total_tokens": 360
}
}