要设计出效果良好的提示,可以测试不同版本的提示,并尝试使用提示参数,以确定哪种方式能获得最佳响应。您可以使用 Codey API 以程序化方式测试提示,也可以使用 Vertex AI Studio 在 Google Cloud 控制台中测试提示。
测试聊天提示
如需测试代码聊天提示,请选择以下方法之一。
REST
如需使用 Vertex AI API 测试代码聊天提示,请向发布方模型端点发送 POST 请求。
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的项目 ID。
- 消息:以结构化的备用作者形式提供给模型的对话历史记录。消息按时间顺序显示:最旧的消息在前面,最新的信息在后面。当消息的历史记录导致输入超过最大长度时,最旧的消息会被移除,直到整个提示在允许的限制范围内。 必须有奇数条消息(AUTHOR-CONTENT 对),模型才能生成回复。
- AUTHOR:消息的作者。
- CONTENT:消息的内容。
- TEMPERATURE:温度 (temperature) 在生成回复期间用于采样。温度可以控制词元选择的随机性。较低的温度有利于需要更少开放性或创造性回复的提示,而较高的温度可以带来更具多样性或创造性的结果。温度为
0
表示始终选择概率最高的词元。在这种情况下,给定提示的回复大多是确定的,但可能仍然有少量变化。 - MAX_OUTPUT_TOKENS:回复中可生成的词元数量上限。词元约为 4 个字符。100 个词元对应大约 60-80 个单词。
指定较低的值可获得较短的回复,指定较高的值可获得可能较长的回复。
- CANDIDATE_COUNT:要返回的响应变体版本数量。
有效值的范围是 1 到 4 之间的
int
。
HTTP 方法和网址:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/codechat-bison:predict
请求 JSON 正文:
{ "instances": [ { "messages": [ { "author": "AUTHOR", "content": "CONTENT" } ], "parameters": { "temperature": TEMPERATURE, "maxOutputTokens": MAX_OUTPUT_TOKENS, "candidateCount": CANDIDATE_COUNT } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/codechat-bison:predict"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/codechat-bison:predict" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应。
Python
如需了解如何安装或更新 Python 版 Vertex AI SDK,请参阅安装 Python 版 Vertex AI SDK。如需了解详情,请参阅 Python API 参考文档。
Node.js
在尝试此示例之前,请按照《Vertex AI 快速入门:使用客户端库》中的 Node.js 设置说明执行操作。如需了解详情,请参阅 Vertex AI Node.js API 参考文档。
如需向 Vertex AI 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
在尝试此示例之前,请按照《Vertex AI 快速入门:使用客户端库》中的 Java 设置说明执行操作。如需了解详情,请参阅 Vertex AI Java API 参考文档。
如需向 Vertex AI 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
控制台
如需在 Google Cloud 控制台中使用 Vertex AI Studio 测试代码聊天提示,请执行以下操作:
- 在 Google Cloud 控制台的 Vertex AI 部分,进入 Vertex AI Studio。
- 点击开始使用。
- 点击 代码聊天。
- 在模型中,选择名称以
codechat-bison
开头的模型。codechat-bison
后面的三位数表示模型的版本号。例如,codechat-bison@001
是代码聊天模型的版本名称。 - 调整温度和词元限制,以试验它们如何影响回复。如需了解详情,请参阅代码聊天模型参数。
- 在输入提示开始对话中,输入提示以发起有关代码的对话。
- 点击继续对话,将提示提交到聊天。
- 收到回复后,重复前两个步骤以继续对话。
- 如果您想保存提示,请点击 保存。
- 点击 查看代码以查看提示的 Python 代码或 curl 命令。
代码聊天提示示例
MODEL_ID="codechat-bison"
PROJECT_ID=PROJECT_ID
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}:predict -d \
$"{
'instances': [
{
'messages': [
{
'author': 'user',
'content': 'Hi, how are you?',
},
{
'author': 'system',
'content': 'I am doing good. What Can I help you with in the coding world?',
},
{
'author': 'user',
'content': 'Please help write a function to calculate the min of two numbers',
}
]
}
],
'parameters': {
'temperature': 0.2,
'maxOutputTokens': 1024,
'candidateCount': 1
}
}"
如需详细了解如何设计聊天提示,请参阅聊天提示。
流式传输来自代码聊天模型的回复
如需使用 REST API 查看示例代码请求和响应,请参阅使用流式传输 REST API 的示例。
如需使用 Python 版 Vertex AI SDK 查看示例代码请求和响应,请参阅使用 Python 版 Vertex AI SDK 进行流式传输的示例。
后续步骤
- 了解如何创建代码补全提示。
- 了解如何创建代码生成提示。
- 了解 Responsible AI 最佳实践和 Vertex AI 的安全过滤条件。