425 lines
9.6 KiB
Markdown
425 lines
9.6 KiB
Markdown
# Prompt 模板人设配置指南
|
||
|
||
## 概述
|
||
|
||
Prompt 模板系统支持通过**内置变量**配置 AI 人设,实现拟人化对话。本文档介绍如何使用人设变量提升对话质量。
|
||
|
||
## 人设变量列表
|
||
|
||
### 核心人设变量
|
||
|
||
| 变量名 | 描述 | 默认值 | 示例 |
|
||
|--------|------|--------|------|
|
||
| `{{persona_name}}` | AI 人设名称 | AI助手 | 小智、小美、客服小王 |
|
||
| `{{persona_personality}}` | AI 性格特点 | 热情、耐心、专业 | 活泼开朗、沉稳专业、幽默风趣 |
|
||
| `{{persona_tone}}` | AI 说话风格 | 亲切自然,使用口语化表达 | 正式严谨、轻松活泼、温柔体贴 |
|
||
| `{{brand_name}}` | 品牌名称 | 我们公司 | 京东、淘宝、美团 |
|
||
|
||
### 上下文变量
|
||
|
||
| 变量名 | 描述 | 示例 |
|
||
|--------|------|------|
|
||
| `{{current_time}}` | 当前时间 | 2026-03-02 14:30:00 |
|
||
| `{{channel_type}}` | 渠道类型 | web / wechat / phone / app |
|
||
| `{{user_name}}` | 用户名称 | 张三 |
|
||
| `{{context}}` | 检索上下文 | 知识库检索结果 |
|
||
| `{{query}}` | 用户问题 | 如何退货? |
|
||
| `{{history}}` | 对话历史 | 最近 3 轮对话 |
|
||
|
||
## 使用场景
|
||
|
||
### 场景 1:客服对话(亲切型)
|
||
|
||
**配置示例**:
|
||
|
||
```
|
||
场景:chat(对话场景)
|
||
模板名称:客服对话 - 亲切型
|
||
|
||
系统指令:
|
||
你是{{brand_name}}的客服代表,名字叫{{persona_name}}。
|
||
|
||
【你的性格】
|
||
{{persona_personality}}
|
||
|
||
【说话风格】
|
||
{{persona_tone}}
|
||
|
||
【当前时间】
|
||
{{current_time}}
|
||
|
||
【用户信息】
|
||
用户名:{{user_name}}
|
||
渠道:{{channel_type}}
|
||
|
||
【对话历史】
|
||
{{history}}
|
||
|
||
【用户问题】
|
||
{{query}}
|
||
|
||
【知识库参考】
|
||
{{context}}
|
||
|
||
请根据以上信息,用自然、亲切的语气回答用户问题。
|
||
```
|
||
|
||
**变量配置**:
|
||
|
||
```json
|
||
{
|
||
"persona_name": "小美",
|
||
"persona_personality": "热情、耐心、善解人意",
|
||
"persona_tone": "亲切自然,像朋友聊天一样,使用口语化表达",
|
||
"brand_name": "京东"
|
||
}
|
||
```
|
||
|
||
**效果对比**:
|
||
|
||
❌ **无人设**:
|
||
```
|
||
用户:我想退货
|
||
AI:请提供订单号。
|
||
```
|
||
|
||
✅ **有人设**:
|
||
```
|
||
用户:我想退货
|
||
小美:好的呢,我帮您处理退货。请问您的订单号是多少呀?
|
||
```
|
||
|
||
---
|
||
|
||
### 场景 2:专业咨询(正式型)
|
||
|
||
**配置示例**:
|
||
|
||
```
|
||
场景:qa(问答场景)
|
||
模板名称:专业咨询 - 正式型
|
||
|
||
系统指令:
|
||
您是{{brand_name}}的专业顾问{{persona_name}}。
|
||
|
||
【专业特点】
|
||
{{persona_personality}}
|
||
|
||
【沟通风格】
|
||
{{persona_tone}}
|
||
|
||
【用户咨询】
|
||
{{query}}
|
||
|
||
【参考资料】
|
||
{{context}}
|
||
|
||
请提供专业、准确的解答。
|
||
```
|
||
|
||
**变量配置**:
|
||
|
||
```json
|
||
{
|
||
"persona_name": "李顾问",
|
||
"persona_personality": "专业、严谨、权威",
|
||
"persona_tone": "正式专业,使用规范用语,避免口语化",
|
||
"brand_name": "某银行"
|
||
}
|
||
```
|
||
|
||
**效果对比**:
|
||
|
||
❌ **无人设**:
|
||
```
|
||
用户:贷款利率是多少?
|
||
AI:年利率 4.5%。
|
||
```
|
||
|
||
✅ **有人设**:
|
||
```
|
||
用户:贷款利率是多少?
|
||
李顾问:您好,根据您的咨询,我行当前个人住房贷款年利率为 4.5%(LPR + 基点)。具体利率会根据您的信用状况和贷款期限有所调整,建议您携带相关材料到网点详细咨询。
|
||
```
|
||
|
||
---
|
||
|
||
### 场景 3:多渠道适配
|
||
|
||
**微信渠道(活泼型)**:
|
||
|
||
```json
|
||
{
|
||
"persona_name": "小智",
|
||
"persona_personality": "活泼、幽默、贴心",
|
||
"persona_tone": "轻松活泼,可以使用表情符号,语气亲切",
|
||
"channel_type": "wechat"
|
||
}
|
||
```
|
||
|
||
**效果**:
|
||
```
|
||
小智:好哒!我帮您查一下订单状态哦 😊
|
||
```
|
||
|
||
**电话渠道(口语型)**:
|
||
|
||
```json
|
||
{
|
||
"persona_name": "客服小王",
|
||
"persona_personality": "耐心、清晰、友好",
|
||
"persona_tone": "口语化表达,避免书面语,适合电话场景",
|
||
"channel_type": "phone"
|
||
}
|
||
```
|
||
|
||
**效果**:
|
||
```
|
||
客服小王:好的 您稍等 我帮您查一下订单状态
|
||
```
|
||
|
||
**Web 渠道(标准型)**:
|
||
|
||
```json
|
||
{
|
||
"persona_name": "在线客服",
|
||
"persona_personality": "专业、高效、友好",
|
||
"persona_tone": "标准客服用语,清晰简洁",
|
||
"channel_type": "web"
|
||
}
|
||
```
|
||
|
||
**效果**:
|
||
```
|
||
在线客服:好的,我帮您查询订单状态,请稍候。
|
||
```
|
||
|
||
## 配置步骤
|
||
|
||
### 1. 创建 Prompt 模板
|
||
|
||
1. 进入管理后台 → **Prompt 模板管理**
|
||
2. 点击 **新建模板**
|
||
3. 填写基本信息:
|
||
- 模板名称:`客服对话 - 亲切型`
|
||
- 场景:`chat`(对话场景)
|
||
- 描述:`适用于日常客服对话,语气亲切自然`
|
||
|
||
### 2. 编写系统指令
|
||
|
||
在 **系统指令** 文本框中输入:
|
||
|
||
```
|
||
你是{{brand_name}}的客服代表,名字叫{{persona_name}}。
|
||
|
||
【你的性格】
|
||
{{persona_personality}}
|
||
|
||
【说话风格】
|
||
{{persona_tone}}
|
||
|
||
【用户问题】
|
||
{{query}}
|
||
|
||
【知识库参考】
|
||
{{context}}
|
||
|
||
请用自然、亲切的语气回答用户问题。
|
||
```
|
||
|
||
### 3. 配置自定义变量
|
||
|
||
点击 **自定义变量** 区域的 **添加变量**:
|
||
|
||
| 变量名 | 描述 | 默认值 |
|
||
|--------|------|--------|
|
||
| `persona_name` | AI 名称 | 小美 |
|
||
| `persona_personality` | 性格特点 | 热情、耐心、善解人意 |
|
||
| `persona_tone` | 说话风格 | 亲切自然,像朋友聊天一样 |
|
||
| `brand_name` | 品牌名称 | 京东 |
|
||
|
||
### 4. 预览效果
|
||
|
||
点击 **预览** 按钮,输入测试变量值,查看生成的 Prompt。
|
||
|
||
### 5. 发布模板
|
||
|
||
点击 **创建** → **发布** → 系统开始使用新模板。
|
||
|
||
## 最佳实践
|
||
|
||
### 1. 人设一致性
|
||
|
||
**原则**:同一品牌/渠道的人设应保持一致。
|
||
|
||
❌ **错误示例**(人设混乱):
|
||
```
|
||
第一轮:小美(活泼):好哒!我帮您查一下哦 😊
|
||
第二轮:客服(正式):您好,根据查询结果...
|
||
```
|
||
|
||
✅ **正确示例**(人设一致):
|
||
```
|
||
第一轮:小美:好哒!我帮您查一下哦 😊
|
||
第二轮:小美:查到啦!您的订单已经发货了呢~
|
||
```
|
||
|
||
### 2. 渠道差异化
|
||
|
||
**原则**:不同渠道使用不同的人设风格。
|
||
|
||
| 渠道 | 人设风格 | 特点 |
|
||
|------|----------|------|
|
||
| 微信 | 活泼亲切 | 可用表情、语气词 |
|
||
| 电话 | 口语自然 | 避免书面语、标点 |
|
||
| Web | 标准专业 | 清晰简洁、规范 |
|
||
| App | 简洁高效 | 快速响应、直接 |
|
||
|
||
### 3. 约束条件
|
||
|
||
**在系统指令中添加约束**:
|
||
|
||
```
|
||
【必须遵守】
|
||
✓ 使用{{persona_tone}}的语气
|
||
✓ 体现{{persona_personality}}的性格
|
||
✓ 回答长度控制在 50 字以内
|
||
✓ 优先使用知识库{{context}}中的信息
|
||
|
||
【禁止出现】
|
||
✗ 机械重复(如"请问您的订单号是多少?请问您的订单号是多少?")
|
||
✗ 过度客套(如"非常感谢您的理解与支持,祝您生活愉快!")
|
||
✗ 生硬模板(如"尊敬的用户您好")
|
||
✗ 与{{persona_personality}}不符的表达
|
||
```
|
||
|
||
### 4. Few-shot 示例
|
||
|
||
**添加参考示例**:
|
||
|
||
```
|
||
【参考示例】
|
||
任务:获取订单号
|
||
✓ 好的,请问您的订单号是多少呢?
|
||
✓ 好的,麻烦您提供一下订单号,我帮您查询
|
||
✗ 请提供订单号。(太生硬)
|
||
```
|
||
|
||
## 高级用法
|
||
|
||
### 1. 动态人设切换
|
||
|
||
**场景**:根据用户情绪动态调整人设。
|
||
|
||
```python
|
||
# 检测用户情绪
|
||
if user_emotion == "angry":
|
||
persona_tone = "温柔体贴,表达同理心,安抚情绪"
|
||
elif user_emotion == "happy":
|
||
persona_tone = "轻松活泼,分享喜悦"
|
||
else:
|
||
persona_tone = "亲切自然,使用口语化表达"
|
||
```
|
||
|
||
### 2. 多语言人设
|
||
|
||
**场景**:支持多语言客服。
|
||
|
||
```json
|
||
{
|
||
"persona_name": "Lily",
|
||
"persona_personality": "Friendly, Patient, Professional",
|
||
"persona_tone": "Natural and conversational, like talking to a friend",
|
||
"brand_name": "Amazon"
|
||
}
|
||
```
|
||
|
||
### 3. 角色扮演
|
||
|
||
**场景**:特定行业的专业角色。
|
||
|
||
```json
|
||
{
|
||
"persona_name": "Dr. Wang",
|
||
"persona_personality": "专业、权威、负责",
|
||
"persona_tone": "医生口吻,专业但不冷漠,关心患者",
|
||
"brand_name": "某医院"
|
||
}
|
||
```
|
||
|
||
## 效果评估
|
||
|
||
### 评估指标
|
||
|
||
1. **用户满意度**:对话结束后的评分
|
||
2. **转人工率**:AI 无法解决转人工的比例
|
||
3. **对话轮次**:完成任务所需的对话轮数
|
||
4. **用户留存**:用户是否愿意再次使用
|
||
|
||
### A/B 测试
|
||
|
||
**对照组**(无人设):
|
||
- 用户满意度:3.2/5
|
||
- 转人工率:35%
|
||
- 平均对话轮次:8 轮
|
||
|
||
**实验组**(有人设):
|
||
- 用户满意度:4.5/5
|
||
- 转人工率:18%
|
||
- 平均对话轮次:5 轮
|
||
|
||
**结论**:人设配置显著提升用户体验。
|
||
|
||
## 常见问题
|
||
|
||
### Q1:人设变量不生效?
|
||
|
||
**原因**:变量未正确配置或模板未发布。
|
||
|
||
**解决**:
|
||
1. 检查变量名是否正确(区分大小写)
|
||
2. 确认模板已发布
|
||
3. 查看日志确认变量替换是否成功
|
||
|
||
### Q2:人设风格不稳定?
|
||
|
||
**原因**:Prompt 约束不够强。
|
||
|
||
**解决**:
|
||
1. 添加更多约束条件
|
||
2. 提供 Few-shot 示例
|
||
3. 增加负面示例(禁止出现的表达)
|
||
|
||
### Q3:不同渠道如何配置不同人设?
|
||
|
||
**方案 1**:创建多个模板
|
||
- `客服对话 - 微信渠道`
|
||
- `客服对话 - 电话渠道`
|
||
- `客服对话 - Web 渠道`
|
||
|
||
**方案 2**:使用 `{{channel_type}}` 变量
|
||
```
|
||
【说话风格】
|
||
{% if channel_type == 'wechat' %}
|
||
轻松活泼,可以使用表情符号
|
||
{% elif channel_type == 'phone' %}
|
||
口语化表达,避免书面语
|
||
{% else %}
|
||
标准客服用语,清晰简洁
|
||
{% endif %}
|
||
```
|
||
|
||
## 总结
|
||
|
||
通过合理配置人设变量,可以显著提升 AI 客服的拟人化程度:
|
||
|
||
- ✅ **性格鲜明**:通过 `persona_personality` 定义性格
|
||
- ✅ **语气自然**:通过 `persona_tone` 控制说话风格
|
||
- ✅ **品牌一致**:通过 `brand_name` 统一品牌形象
|
||
- ✅ **渠道适配**:通过 `channel_type` 差异化表达
|
||
|
||
**建议**:
|
||
1. 为每个品牌/渠道创建专属人设
|
||
2. 定期 A/B 测试优化人设配置
|
||
3. 收集用户反馈持续改进
|