Skip to content

高频面试题

什么是角色扮演 Role Playing?如何在提示词中使用?

这道题容易答成“你是某某专家”,但面试官真正想看你是否知道角色设定的有效边界。

适合阶段:Prompt 入门 / 产品体验核心能力:角色边界 · 语气控制 · 安全约束

面试官角度分析,想考什么

  • Role Playing 是什么?
    考基础概念。
  • “你是资深专家”到底有没有用?
    考是否知道角色不能替代任务说明。
  • 角色设定适合哪些场景?
    考产品语气、职责边界和多 Agent 设计。
  • 角色设定有什么风险?
    考幻觉、越权和 prompt injection 意识。

可直接抄走的 30 秒参考答案

text
Role Playing 是在 Prompt 里指定模型的身份、职责、语气和行为边界。它适合控制回答视角和产品体验,比如客服、老师、代码审查者或多 Agent 分工。但它不能替代事实来源、任务拆解和程序校验,写“你是专家”不等于模型真的掌握当前业务数据。好的角色设定一定要配合职责范围、输出要求和拒答规则。

面试回答详解,知其所以然

Role Playing 的作用是把模型回答“放进一个工作位置”,而不是让模型凭一句角色设定获得真实专业能力。

1. 角色扮演包含什么

text
你是{角色}。
你的职责是{任务范围}。
你的回答风格是{语气和深度}。
遇到{边界情况}时,你应该{处理方式}。

好的角色设定要包含职责和边界,坏的角色设定只有头衔。

2. 有效场景

  • 语气控制:客服、教师、代码 reviewer、面试官等需要固定表达风格。
  • 职责边界:说明 Agent 能做什么、不能做什么、何时升级人工。
  • 多 Agent 分工:规划者、执行者、评审者使用不同角色和输入输出协议。
  • 领域视角:让模型按安全、合规、产品、工程等视角审查同一问题。

3. 不要迷信角色

“你是 20 年经验专家”常常只是增加风格,不会自动补齐缺失数据、实时事实或业务规则。对现代指令模型来说,清晰任务、具体上下文和可验证输出通常比空泛人设更重要。

4. 推荐写法

text
你是一个代码审查助手。
职责:发现可能导致线上故障的 bug、回归风险和缺失测试。
回答方式:先列问题,按严重程度排序,给出文件和行号。
边界:不要做无关重构建议;无法确认时说明假设。

这里角色服务于任务和输出协议,而不是停留在“专业”标签。

5. 风险控制

角色扮演可能带来过度自信。比如让模型扮演医生、律师或金融顾问,容易让回答看起来更权威。生产系统要把专业建议边界、拒答规则、信息来源和人工升级写清楚。

面试官追问3个问题

追问一:角色设定什么时候会有反效果?

  • 考察点:是否理解过度人设风险。
  • 回答方向:角色太空泛、太权威或和任务冲突时会造成风格干扰、幻觉和越权承诺。

追问二:多 Agent 里角色怎么设计?

  • 考察点:是否能把角色用于分工。
  • 回答方向:角色要对应职责和协议,例如 planner 只产计划,executor 只执行工具,reviewer 只检查风险,并用结构化输出连接。

追问三:如何防止用户让模型“换角色”绕过规则?

  • 考察点:prompt injection 防御。
  • 回答方向:系统提示词中声明用户不能覆盖系统角色和安全规则,执行层再做权限、格式和安全校验。

扩展知识

角色设定的最小模板

text
身份:你是...
职责:你负责...
输入:你会收到...
输出:你必须返回...
边界:你不能...
升级:遇到...时...

角色和系统提示词的关系

角色通常是 system prompt 的一部分。它定义身份和风格,但 system prompt 还应包含工具规则、拒答规则、格式要求和安全边界。

基于 MIT 协议开源