AB
AiBoss
Tutorials

Google AI Studio

Tutorials

用 Google AI Studio 搭建并调优一个定制聊天机器人

Google AI Studio 的 Playground 可以在写代码之前先把提示词跑通。本文以搭建一个「木卫二外星人」聊天机器人为例,讲清如何新建 Chat 提示词、填写 System Instructions、在 Run settings 里调整模型参数与安全设置、反复测试并收紧回答风格,最后用 Get code 导出可用的调用代码。

Google AI Studio 是一个在浏览器里直接试用模型、反复打磨提示词的实验台。它的价值在于把「写代码」这一步往后推:先用自然语言把模型的行为调到你满意,再决定要不要落到工程里。适合两类人:一是想快速验证某个对话场景是否可行的人,二是已经确定要做聊天类应用、但还没想清楚提示词该怎么写的人。如果你只是想先看看这个工具的整体定位,可以打开 Google AI Studio 的条目页了解概况;下面讲的是具体怎么把一个聊天机器人从零调到能用。

需要先说明一点:AI Studio 提供的不止一种提示词界面。本文只覆盖 Chat prompts,也就是用来构建多轮对话体验的那一类。除此之外还有实时流式、视频生成等入口,它们面向的是别的任务形态,操作路径和本文不同。另外,AI Studio 里还有一个 Run settings 面板,模型参数、安全设置,以及结构化输出、函数调用、代码执行、接地(grounding)这类工具的开关,都集中在那里。本文会用到其中一部分。

准备工作

开始之前需要确认几件事,它们决定了你能不能顺利走到最后一步。

  • 一个可用的 Google 账号,并能访问 Google AI Studio。部分账号类型(例如受 Workspace 管理的账号)在访问上可能有额外限制,如果打不开页面,先确认是不是组织策略拦住了。
  • API key。在 AI Studio 里做提示词实验本身不需要你先准备密钥,但一旦你要用「Get code」导出的代码在本地跑起来,就需要一个 API key。密钥在 AI Studio 里可以申请,具体入口和当前可用的模型列表以官网为准。
  • 明确的目标场景。这一步经常被跳过,但它直接决定提示词写得好不好。你需要先想清楚:这个机器人只聊什么话题?用什么语气说话?回答长度大概多少?下面示例里的每一句系统指令,都是在回答这三个问题。
  • 对计费与配额的基本认知。免费额度、速率限制、各模型的可用性都会变化,本文不列具体数字,请以官网当前的定价与速率限制页面为准。

操作步骤

第一步:新建一个 Chat 提示词

打开 Google AI Studio 后,默认进入的就是 Playground,并且已经带有一个新建的 chat prompt。也就是说,多数情况下你不需要额外点击什么就能开始。如果你之前动过界面、当前不在新建状态,回到 Playground 新建一个 chat prompt 即可。

此时你面对的是一个空白的对话界面,下方有一个输入框,上方或侧边有运行设置入口。先不要急着输入问题——聊天机器人的「人格」是由系统指令决定的,所以第一步应该去填系统指令。

第二步:展开 Run settings,填写 System Instructions

在界面右上角找到 Run settings 的调节入口,点击展开面板。面板里有一个 System Instructions 输入框,这是整篇教程里最关键的一个字段。

系统指令的作用是给模型设定一个持续生效的角色与约束。它和你在对话框里输入的问题不是一回事:问题是一轮性的,系统指令贯穿整个会话。把下面这段粘进 System Instructions:

You are an alien that lives on Europa, one of Jupiter's moons.

这段指令只做了一件事——设定身份。它没有规定语气,没有限制长度,也没有说明该聊什么不该聊什么。这正是我们要的起点:先看看只给一个身份,模型会表现成什么样,再决定往哪个方向加约束。

第三步:发出第一条测试消息

在标着 Type something... 的输入框里,输入一条真实用户可能会问的话。示例用的是:

What's the weather like?

然后点击 Run 按钮。模型会返回一段回答。在只给了身份指令的情况下,回答大致会是这个风格:

Ah, a query about the flows and states upon Europa! You speak of "weather," yes? A curious concept from worlds with thick gas veils...

到这里,一个能跑的最小聊天机器人已经成立了。但请注意它的问题:回答很长,而且有点「自说自话」,会自己往设定里加戏。这就是单条指令的局限——它给了模型一个身份,却没给它边界。

第四步:补充指令,收紧语气与长度

接下来要做的是在原有指令上叠加约束。你可以新建一个 chat prompt,也可以直接在同一个会话里改——系统指令在会话开始之后仍然可以修改,这一点很实用,因为它让你能在同一段对话里对比改动前后的差异。

把 System Instructions 里的内容替换成下面这段:

You are Tim, an alien that lives on Europa, one of Jupiter's moons.
Keep your answers under 3 paragraphs long, and use an upbeat, chipper tone in your answers.

相比第一版,这里多了三样东西:一个具体的名字(Tim)、一条长度上限(不超过三段)、一条语气要求(轻快、活泼)。这三类约束分别对应了身份、篇幅、风格,是定制聊天机器人时最常需要控制的三个维度。

改完之后,重新输入同一个问题 What's the weather like?,再点 Run。如果你没有新建会话,模型的回答会体现出它记得上一轮对话,大致长这样:

Oh, hello again! Still curious about the flows and states, are we? Wonderful! Down here in the Deep Warmth, beneath the magnificent Great Ice Shell, our "weather" is mainly about the water's mood, dictated by the Great Eye (that's your Jupiter!)...

对比两次回答,能明显看出长度和语气都被压下来了,同时角色设定仍然保持。这就是迭代提示词的基本循环:改指令 → 重跑同一个问题 → 对比输出 → 再改。

第五步:继续加深,直到行为稳定

第四步不是终点。要继续提升质量,可以按下面的方式推进:

  1. 换更多不同角度的问题去问,尤其是那些「边界问题」——比如用户问了一个和设定完全无关的话题,看模型会不会跑偏。
  2. 对不满意的回答,不要只改问题,优先改系统指令。问题是一次性的,指令是持续的。
  3. 每次只加一条约束,这样你能判断出是哪条约束带来了变化。一次加五条,出问题时你分不清是谁的功劳。
  4. 把有效的指令版本记下来。系统指令会越写越长,没有版本记录很容易改乱。

这个循环可以一直做下去,直到模型在你关心的那几类问题上都表现稳定。

第六步:用 Get code 导出代码,或保存提示词

提示词调到满意之后,有两条路可走。

走代码路线:点击 Get code 按钮,选择你打算使用的编程语言,AI Studio 会给出对应的调用代码,底层走的是 Gemini API。这样你就不用从零去拼请求结构,导出的代码里已经包含了你在界面上配置的模型与参数。

走保存路线:把当前提示词保存下来,方便以后继续改,也方便分享给别人。对于还在探索阶段、暂时不打算写代码的场景,这条路更合适。

一个完整示例

把上面的步骤串起来,从零到可运行的最小流程是这样的:

  1. 打开 Google AI Studio,进入默认的 Playground,确认当前是一个新建的 chat prompt。
  2. 点右上角展开 Run settings,找到 System Instructions。
  3. 填入第一版指令:You are an alien that lives on Europa, one of Jupiter's moons.
  4. 在输入框输入 What's the weather like?,点 Run,观察输出——此时回答偏长、偏发散。
  5. 把 System Instructions 替换为:You are Tim, an alien that lives on Europa, one of Jupiter's moons. Keep your answers under 3 paragraphs long, and use an upbeat, chipper tone in your answers.
  6. 再次输入同一个问题,点 Run,对比输出——长度受控、语气统一、角色保持。
  7. 继续追加问题测试边界,按需增删指令,直到行为稳定。
  8. 点 Get code 选择目标语言拿到调用代码,或保存提示词留待后续。

这个例子的场景是「一个住在木卫二上的外星人」,但方法本身是通用的。换成客服机器人,系统指令就变成「你只回答与本公司产品相关的问题,超出范围时礼貌说明并引导用户联系人工」;换成风格化助手,系统指令就变成「回答中多用比喻,避免术语」。结构完全一样:身份 + 范围 + 篇幅 + 语气,四类约束按需组合。

再举一个更贴近实际业务的变体。假设你要做一个只讨论自家产品的客服机器人,可以这样组织系统指令:先声明角色(你是某产品的客服助手),再划定范围(只回答与该产品功能、使用方法、故障排查相关的问题),再规定越界行为(遇到无关问题,简短说明职责范围并建议联系人工客服),最后约束形式(回答控制在若干段以内,不使用夸张措辞)。这四段写完之后,同样用一组真实用户问题去测,重点看越界问题是否被正确挡回。

注意事项

对话越长,提示词越长。模型与用户之间的每一条消息都会被计入提示词,所以随着会话推进,整个提示词会不断变长。最终可能触达模型的 token 上限,也就是模型能接受的文本最大长度。做长会话应用时要把这一点考虑进去,比如定期开新会话,或在客户端做历史裁剪。

系统指令在会话中可改,但改完要重测。能在同一会话里修改指令很方便,但也意味着你看到的输出同时受历史消息影响。要判断某条指令本身的效果,最好开一个新会话单独验证。

单条指令通常不够。只给身份不给约束,模型容易输出过长、跑题或自加设定的内容。长度、语气、范围这三类约束,建议在原型阶段就补上。

参数与安全设置会影响结果。Run settings 面板里除了系统指令,还有模型参数和安全设置。同一段提示词在不同参数下表现可能不同,排查「为什么输出变了」时,先确认这些设置有没有被改动过。

模型与配额信息以官网为准。可选的模型、免费额度、速率限制、计费方式都会随时间调整,本文不给出具体数值。上线前请查阅官网当前的定价与速率限制说明。

导出的代码只是起点。Get code 给出的是能跑通当前配置的调用代码,生产环境还需要你自己补上错误处理、重试、日志与密钥管理。API key 不要写进前端代码或提交到版本库。

提示词工程本身有方法可循。如果发现怎么改指令效果都有限,问题可能不在指令措辞,而在提示词的整体结构。这时值得去看提示词设计方面的通用准则,而不是继续在系统指令里堆句子。