
PaLM 2
在 Vertex AI 上调用 PaLM 2 聊天模型:开通、配置与测试
介绍如何通过 Google Cloud 的 Vertex AI 平台开通 PaLM 2 聊天模型,在 Generative AI Studio 中创建聊天提示、调整 temperature、token 上限、Top-K 与 Top-P 等参数,并用代码审查、谜题推理等提示验证模型表现。
PaLM 2 是 Google 推出的大语言模型系列,开发者可以通过 Google Cloud 的 Vertex AI 平台直接调用它,而不必自己搭建推理环境。Vertex AI 的 Generative AI Studio 提供了一个可视化界面,可以在浏览器里创建聊天提示、调整生成参数、观察模型输出,适合想快速评估 PaLM 2 是否满足自己需求的开发者、产品经理和技术选型人员。本文按「开通账号 → 进入平台 → 启用 API → 配置参数 → 实际测试」的顺序,把整个流程拆成可复现的步骤。如果你更想先了解这类模型工具的定位,可以看站内的 PaLM 2 条目,再回到本文动手操作。
准备工作
在开始之前,需要确认以下几项前置条件。这些条件缺一项,后面的步骤就会卡住。
- 一个 Google 账号:用于登录 Google Cloud 控制台。建议使用专门用于云平台的账号,避免和日常个人账号混用。
- 一个 Google Cloud 项目:Vertex AI 的所有资源都挂在项目之下,没有项目就无法启用 API。
- 一个结算账号与有效的支付方式:Vertex AI API 属于付费服务,开通时需要绑定银行卡或其它支付方式。绑定过程通常会做一笔很小金额的验证扣款,用于确认支付方式有效。
- 可用的免费额度或试用赠金:新注册的 Google Cloud 账号一般会获得一定金额的试用赠金,在赠金耗尽之前不会产生实际扣费。具体金额、有效期和适用地区会随时间变化,请以 Google Cloud 官网当前显示的信息为准。
- 浏览器环境:Generative AI Studio 是纯网页界面,使用较新版本的 Chrome、Edge、Firefox 或 Safari 即可,不需要额外安装 SDK 就能完成本文的测试。
需要提醒的是,Vertex AI 的可开通地区、可用模型列表和计费方式都可能调整。本文描述的是操作路径,涉及价格、配额、模型版本的地方请以官网当前信息为准。
操作步骤
第一步:注册并配置 Google Cloud 账号
打开 Google Cloud 的 Vertex AI 产品页面,页面上会有一个引导新用户开始试用的按钮,点击后进入登录流程。
- 使用 Google 账号登录,按提示填写国家或地区、用途等基本信息。国家或地区会影响可用的服务和结算方式,填写后一般不易更改,请如实选择。
- 进入结算环节,添加支付方式。此时不会立即扣费,系统只是验证支付方式是否有效。
- 完成验证后,账号会获得试用赠金。赠金余额可以在 Google Cloud 控制台的结算页面查看。
如果账号此前已经用过试用赠金,或者所在地区不支持试用,那么这一步会直接进入正常计费流程。这种情况下仍然可以继续操作,只是调用会产生费用。
第二步:进入 Vertex AI 平台
登录 Google Cloud 控制台后,有两种方式进入 Vertex AI:
- 在控制台顶部的搜索框中输入
Vertex AI,在「产品和页面」分类下选择 Vertex AI。 - 或者从左侧导航菜单中找到「人工智能」分类,再进入 Vertex AI。
进入 Vertex AI 后,左侧菜单里会有一个「生成式 AI Studio」(Generative AI Studio)分组。展开它,可以看到语言、视觉等能力入口。本文关注文本对话,因此选择「语言」(Language)。
第三步:创建聊天提示并启用 API
在语言页面中,选择「创建聊天提示」(Create Chat Prompt)。这个界面用于和 PaLM 2 的聊天模型进行多轮对话,布局与常见的模型试验台类似:左侧设置上下文和示例,右侧选择模型并调整参数,中间是对话区域。
第一次发送提示时,大概率会收到一个错误提示,原因是当前项目还没有启用 Vertex AI API。这是正常现象,按下面的方式处理:
- 在弹出的提示框中点击「启用」(Enable)按钮,系统会尝试为当前项目开启 Vertex AI API。
- 如果项目还没有结算账号,系统会要求先添加支付方式并创建结算账号。按提示完成后返回。
- 等待 API 启用完成。启用过程通常需要一小段时间,页面刷新后即可正常发送请求。
启用成功后,再次输入提示并回车,就能看到模型返回的内容。
第四步:设置上下文与系统角色
聊天界面左侧的上下文输入框用来告诉模型「它是谁、要做什么」。这相当于给模型设定一个角色,例如:
你是一名资深代码审查员。请逐行检查用户提供的代码,指出潜在的逻辑错误、边界条件问题和安全风险,并给出修改后的代码。
也可以设定为医生、股票分析师、翻译等角色。上下文写得越具体,模型的回答越贴近预期。除了角色描述,还可以在左侧添加示例对话,用「输入—输出」的成对样例引导模型模仿特定的回答格式。
第五步:选择模型并调整生成参数
界面右侧用于选择模型和调整参数。在本文对应的阶段,聊天模型下拉框中可选的主要是 chat-bison@001,它属于 PaLM 2 系列中较小的 Bison 规模。系列中规模最大的 Unicorn 模型当时并未开放评估,因此界面上看不到它。
可调整的参数包括:
| 参数 | 作用 | 调整方向 |
|---|---|---|
| Temperature | 控制输出的随机性 | 调低更稳定、更保守;调高更发散、更有创意 |
| Token limit | 限制单次回复的最大长度 | 按需要输出的篇幅设置,过小会导致回答被截断 |
| Top-K | 每一步只从概率最高的 K 个候选词中采样 | 调小更聚焦,调大增加多样性 |
| Top-P | 按累积概率截断候选词集合 | 与 Top-K 配合使用,控制采样范围 |
这些参数没有一组「通用最优值」,需要根据任务类型反复试。做代码审查、事实问答这类要求确定的场景,通常把 temperature 调低;做头脑风暴、文案生成时再调高。参数的具体取值范围和默认值以界面当前显示为准。
第六步:发送提示并观察结果
在对话输入框中输入问题,按回车发送。模型会以流式方式返回回答。可以连续追问,形成多轮对话;上下文会随对话累积,因此长对话会更快消耗 token。
测试时建议覆盖几类不同的任务,以便判断模型能力边界:
- 代码类:给一段含有 bug 的代码,要求找出错误并修复。
- 推理类:给一道谜题或逻辑题,观察推理过程是否连贯。
- 事实类:询问模型的训练数据、基础模型来源等元信息,检查回答是否准确。
- 虚构类:询问不存在的地点或事件,观察模型是否会编造答案。
一个完整示例
下面把前面的步骤串成一个最小可跑通的流程,目标是用 PaLM 2 聊天模型完成一次代码审查。
第 1 步:准备环境。登录 Google Cloud 控制台,确认当前项目已绑定结算账号,并且 Vertex AI API 处于已启用状态。如果尚未启用,进入 Vertex AI 后任意发送一次提示,按弹窗提示启用即可。
第 2 步:打开聊天界面。在控制台搜索 Vertex AI 并进入,左侧菜单展开「生成式 AI Studio」,选择「语言」,再点击「创建聊天提示」。
第 3 步:填写上下文。在左侧上下文框中输入:
你是一名严谨的代码审查员。请找出下面代码中的错误,说明错误原因,并给出修正后的完整代码。回答使用简体中文。
第 4 步:选择模型与参数。右侧模型选择 chat-bison@001。把 temperature 调低到偏保守的区间,token limit 设置为足够容纳一段代码加解释的长度,Top-K 与 Top-P 保持界面默认值先做一次基线测试。
第 5 步:发送待审查的代码。在对话框中输入一段带缺陷的代码,例如一个在边界条件下会越界的循环:
def sum_list(items):
total = 0
for i in range(len(items) + 1):
total += items[i]
return total
第 6 步:检查输出。模型应当指出循环上界多加了 1,导致访问越界,并给出把 range(len(items) + 1) 改为 range(len(items)) 的修正版本。如果回答被截断,说明 token limit 设得太小,调大后重试。
第 7 步:追加测试。在同一个对话中继续追问一道逻辑谜题,或者询问模型的基础模型信息,观察多轮对话下回答是否保持一致。至此,一个从开通到验证的完整闭环就完成了。
注意事项
- 模型版本与可用范围会变化。本文提到的
chat-bison@001是当时的可选聊天模型,规模更大的 Unicorn 模型当时未开放评估。后续可选的模型、版本号和开放地区都可能调整,操作前请以 Vertex AI 界面和官网当前信息为准。 - 计费与赠金。Vertex AI API 是付费服务,试用赠金用完后会按实际调用计费。赠金金额、有效期和计费单价请以 Google Cloud 结算页面和官网价格页为准,不要依赖第三方文章里的数字。
- 输入与输出长度限制。Bison 规模的聊天模型对单次输入和输出都有 token 上限,输入过长会被截断或报错,输出过长会被中途截停。长文档处理需要自行分段。
- 训练数据截止时间。该模型的知识截止于 2023 年初,之后发生的事件它并不了解。涉及时效性内容时,应把最新信息放进提示中,而不是指望模型自己知道。
- 幻觉仍然存在。在虚构地点、虚构事件等问题上,模型有时会拒绝回答,有时仍会编造内容。对事实性要求高的场景,输出必须人工核验。
- 模型自我描述可能不准确。询问模型自身的基础模型或来源时,回答未必可靠,可能把它说成基于更早的模型。这类元信息不要以模型自述为准。
- API 未启用时的报错。首次发送提示报错,多数情况是项目未启用 Vertex AI API 或未绑定结算账号,按弹窗引导处理即可,不必重复提交。
- 参数需要按任务调。temperature、token limit、Top-K、Top-P 没有通用最优组合,同一组参数在不同任务上的表现差异很大,建议每次只改一个参数并记录结果。