一、角色设定基础
什么是角色设定
角色设定,说白了就是给AI戴上一副「人格面具」。
你告诉它:「你现在是某某人,有某某背景,用某某语气说话。」
就这么简单。
我刚开始接触提示词工程时,总觉得这步可有可无。直接问问题不就完了吗?干嘛要搞这些花里胡哨的?
直到有一次,我需要AI帮我写一封商务邮件。我直接说「帮我写封邮件」,结果出来一版干巴巴的、像机器人念稿的东西。
后来我加了一句:「你是一名有10年经验的销售总监,语气要专业但不失亲和。」
嗯,效果天差地别。
角色设定,就是给AI一个「人设」。它决定了AI会用什么视角、什么知识储备、什么表达方式来回答你。
为什么角色设定重要
你想想看,同样一个问题,问不同的人,答案能一样吗?
问一个物理学家「什么是时间」,和问一个诗人「什么是时间」,得到的回答完全不同。
AI也是一样的道理。
没有角色设定的AI,就像一个没有灵魂的答题机器。它给出的答案往往泛泛而谈、缺乏深度、没有个性。
我做过一个实验:
- 不加角色设定:「帮我解释一下什么是微服务架构」
- 加了角色设定:「你是一名有8年后端经验的架构师,曾在电商公司主导过微服务拆分」
结果呢?
前者给了一堆教科书式的定义,后者直接给出了实际项目中踩过的坑、选型建议、以及团队协作的注意事项。
高下立判。
角色设定的重要性,我总结为三点:
- 提升回答质量 — 让AI调用更相关的知识库
- 控制输出风格 — 让AI用你想要的语气说话
- 减少试错成本 — 一次设定到位,不用反复调教
角色设定的核心三要素
好,接下来是重点。角色设定有三个核心要素:身份、背景、语气。
这三者就像三脚架,缺一个就站不稳。
1. 身份
身份,就是告诉AI「你是谁」。
比如:
- 「你是一名资深前端工程师」
- 「你是一位心理咨询师」
- 「你是一个10岁的小学生」
身份决定了AI的知识边界和视角。
我遇到过一个问题:有学员问「你是一名医生」和「你是一名中医」有什么区别?
区别大了去了。前者可能给你开西药,后者会给你讲阴阳五行。
身份越具体,AI的定位越精准。
示例:「你是一名有5年经验的Python后端开发,专长是Django和微服务」
2. 背景
背景,就是告诉AI「你经历过什么」。
这比身份更进一层。身份是标签,背景是故事。
比如:
- 「你曾在阿里巴巴工作过3年,参与过双11大促的架构设计」
- 「你自学编程出身,从零基础到拿到大厂offer只用了8个月」
- 「你带过20人以上的技术团队,经历过多次项目延期和重构」
背景信息越丰富,AI的回答就越有「人情味」。
我曾经让AI扮演一个「创业失败的CTO」和「创业成功的CTO」,让他们分别给新手建议。
结果呢?
前者更多讲「避坑」和「教训」,后者更多讲「方法论」和「最佳实践」。
你看,背景不同,输出的角度完全不同。
比如:「你曾经因为技术选型失误导致项目延期,从那以后你特别注重技术调研」
3. 语气
语气,就是告诉AI「你怎么说话」。
这是最容易被忽略的一点。
很多人只设定了身份和背景,结果AI说出来的话还是冷冰冰的。
语气包括:
- 正式 vs 随意
- 严肃 vs 幽默
- 简洁 vs 详细
- 专业术语多 vs 大白话多
举个例子:
同样解释「什么是递归」:
- 正式语气:「递归是一种通过函数调用自身来解决问题的方法,通常包含基线条件和递归条件。」
- 幽默语气:「递归?就是『要理解递归,你得先理解递归』。开个玩笑,其实就是函数自己调用自己。」
我个人的习惯是:语气设定越具体越好。
不要说「语气要友好」,要说「语气像老朋友聊天一样,偶尔带点调侃」。
三要素组合示例
好,理论说完了。咱们看一个完整的例子:
| 要素 | 设定内容 |
|---|---|
| 身份 | 你是一名有10年经验的Java架构师 |
| 背景 | 你曾在两家互联网大厂工作过,主导过日活千万级系统的架构设计。你经历过从单体架构到微服务的完整迁移过程,踩过不少坑。 |
| 语气 | 语气专业但不装逼,能用大白话解释复杂概念。偶尔分享一些实际案例,像在跟后辈聊天一样。 |
组合起来就是:
你是一名有10年经验的Java架构师。
你曾在两家互联网大厂工作过,主导过日活千万级系统的架构设计。
你经历过从单体架构到微服务的完整迁移过程,踩过不少坑。
语气专业但不装逼,能用大白话解释复杂概念。
偶尔分享一些实际案例,像在跟后辈聊天一样。
你看,这样设定完,AI就像一个活生生的人坐在你面前。
本章小结
角色设定,说白了就是给AI一个「人设」。
它重要,是因为没有角色设定的AI就像白开水,解渴但无味。
核心三要素:身份、背景、语气。三者缺一不可。
下一章,我会讲怎么把这三个要素写成一条完整的提示词。到时候咱们再细聊。
嗯,今天就先到这儿。