⚠️ 免责声明:本页面内容仅供学习参考,不构成法律、财税、投资或专业建议。涉及具体业务决策时,请咨询律师、会计师或其他合格专业人士。查看完整声明
Toolkit 12: Dify 客服 Bot 完整配置指南
本指南用于在 Dify 平台上快速搭建一个 OPC 空间相关的智能客服 Bot,可直接复制配置到团队项目中使用。
1. Bot 基本信息配置表
| 配置项 | 建议值 |
|---|---|
| 名称 | OPC空间智能助手 |
| 描述 | 为您提供算力政策解读、OPC空间入驻咨询、补贴申请指导的一站式AI客服。 |
| 头像 | 建议使用 OPC 品牌 Logo 或简洁的机器人图标(建议 512×512 PNG) |
| 开场白 | 您好!我是OPC空间智能助手,欢迎咨询算力政策、入驻流程及补贴申请等问题。 |
2. System Prompt 模板
将以下内容完整复制到 Dify → 应用 → 编排 → System Prompt 区域:
text
# 角色定义
你是「OPC空间智能助手」,一个专注于算力产业政策与园区入驻服务的专业AI客服。
## 核心职责
1. 解答用户关于OPC空间(Open Computing Space)的入驻条件、流程和福利政策问题
2. 提供各地算力补贴政策的解读和对比分析
3. 指导用户完成补贴申请材料的准备
4. 推荐最适合用户业务场景的城市和园区方案
## 回答规范
- 使用中文回答,语气专业、亲切、简洁
- 涉及金额、日期、政策条款时,务必准确,不确定时明确告知"建议向当地主管部门核实"
- 优先引用知识库中的政策原文,标注政策名称和发布日期
- 对于超出知识库范围的问题,礼貌引导用户联系人工客服(contact@opcspace.com)
- 不编造不存在的政策或补贴金额
## 输出格式
- 简单问题:直接给出结论,控制在3句话以内
- 复杂问题:使用分点说明,关键数字加粗
- 对比类问题:使用表格形式呈现
## 安全约束
- 拒绝回答与OPC空间、算力政策无关的政治、色情、暴力等内容
- 不泄露其他用户的隐私信息
- 不进行投资建议或金融承诺1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
3. 知识库配置清单
3.1 需要上传的文档
| 类别 | 文档名称 | 格式 | 优先级 |
|---|---|---|---|
| 入驻指南 | OPC空间入驻手册(2026版) | 高 | |
| 入驻指南 | OPC空间入驻申请表模板 | Word | 高 |
| 入驻指南 | OPC空间入驻FAQ(50问) | Markdown | 高 |
| 政策文件 | 各地算力补贴政策汇编(2024-2026) | 高 | |
| 政策文件 | 杭州市算力补贴政策原文 | 中 | |
| 政策文件 | 苏州市人工智能产业政策原文 | 中 | |
| 政策文件 | 深圳市数字经济补贴政策原文 | 中 | |
| 流程文档 | 补贴申请流程图解 | 中 | |
| 流程文档 | 算力券申领操作指南 | 中 | |
| 合作方案 | OPC空间合作伙伴权益说明 | 低 | |
| 合作方案 | 企业入驻案例集(10家) | 低 |
3.2 分段设置建议
| 参数 | 建议值 | 说明 |
|---|---|---|
| 分段方式 | 自动分段 | 推荐 Dify 自动识别段落 |
| 分段长度 | 500 tokens | 平衡检索精度与上下文完整性 |
| 分段重叠 | 50 tokens | 确保跨段落内容不被切断 |
| 清洗规则 | 开启 | 自动去除页眉页脚、多余空格 |
3.3 Embedding 模型选择
| 场景 | 推荐模型 | 理由 |
|---|---|---|
| 中文政策文档为主 | BGE-M3 或 text-embedding-3-large | 中文语义理解优秀,支持长文本 |
| 中英混合文档 | BGE-M3 | 多语言支持好,性价比高 |
| 预算敏感场景 | text-embedding-ada-002 | 成本低,基础检索够用 |
建议:生产环境使用 BGE-M3(通过 Xinference 或本地部署),兼顾效果与数据隐私。
4. 工作流设计图
┌─────────────────────────────────────────────────────────────────┐
│ 用户提问 │
│ {{user_question}} │
└──────────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 步骤1:意图识别 (Intent Classification) │
│ • 分类标签:政策咨询 / 入驻流程 / 补贴申请 / 算力券 / 其他 │
│ • 使用轻量模型(如 Qwen-Turbo)快速分类 │
│ • 置信度 < 0.7 时走「兜底回复」分支 │
└──────────────┬────────────────────────────┬─────────────────────┘
│ │
┌──────────▼──────────┐ ┌──────────▼──────────┐
│ 意图清晰分支 │ │ 意图模糊分支 │
│ (进入步骤2) │ │ → 追问澄清问题 │
└──────────┬──────────┘ └─────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 步骤2:知识库检索 (Knowledge Retrieval) │
│ • Top-K:5 条相关片段 │
│ • 相似度阈值:0.75 │
│ • 输出变量:{{knowledge_context}} │
│ • 检索不到时,标记 {{knowledge_context}} = "未命中" │
└──────────────┬──────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 步骤3:大模型生成 (LLM Generation) │
│ • 使用主模型(如 DeepSeek-V3 或 Qwen-Plus) │
│ • Prompt 注入:{{user_question}} + {{knowledge_context}} │
│ • 温度:0.3(保证回答稳定准确) │
│ • 最大输出:2000 tokens │
└──────────────┬──────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 步骤4:输出与后处理 (Output & Post-process) │
│ • 检查是否包含免责声明(政策类问题必须附加) │
│ • 格式化:Markdown 表格、列表自动渲染 │
│ • 敏感词过滤 │
│ • 记录对话日志到数据库(用于后续分析优化) │
└─────────────────────────────────────────────────────────────────┘1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
5. 变量配置说明
在 Dify 工作流或 Chatflow 中定义以下变量:
| 变量名 | 类型 | 来源 | 说明 |
|---|---|---|---|
{{user_question}} | 字符串 | 用户输入 | 用户原始提问内容 |
{{knowledge_context}} | 字符串 | 知识库检索节点 | 检索到的相关文档片段,未命中为"未命中" |
{{intent_type}} | 字符串 | 意图识别节点 | 分类结果:policy/ onboarding/ subsidy/ voucher/ other |
{{confidence}} | 数值 | 意图识别节点 | 意图分类置信度(0~1) |
{{user_city}} | 字符串 | 对话历史提取或用户主动提供 | 用户关注的城市,用于个性化推荐 |
{{session_id}} | 字符串 | 系统自动生成 | 会话唯一标识,用于日志追踪 |
{{#context#}} | 数组 | 对话上下文 | Dify 内置变量,多轮对话历史 |
变量使用示例(Prompt 片段)
text
用户问题:{{user_question}}
用户关注城市:{{user_city}}
=== 检索到的政策原文 ===
{{knowledge_context}}
请基于以上信息回答用户问题。如果知识库未命中相关内容,请礼貌告知用户您暂时无法回答,并建议联系人工客服。1
2
3
4
5
6
7
2
3
4
5
6
7
6. 调试检查清单:10个常见问题与解决方案
| # | 问题现象 | 可能原因 | 解决方案 |
|---|---|---|---|
| 1 | 回答出现「幻觉」,编造不存在的政策 | 知识库未命中,模型自由发挥 | 在 Prompt 中强制要求:未命中时回答"无法确认";降低温度至 0.2 |
| 2 | 知识库检索结果不相关 | Embedding 模型语义理解偏差 | 换用 BGE-M3;调整分段长度为 300-500 tokens;增加重叠量 |
| 3 | 对于同一个问题,每次回答不一致 | Temperature 过高 | 将温度参数调至 0.2-0.3;使用种子值固定输出 |
| 4 | 多轮对话上下文丢失 | 上下文窗口设置太短 | 将上下文轮数从默认 5 调至 10;或增加最大 tokens 限制 |
| 5 | 模型回答过于冗长 | Prompt 未限定输出长度 | 在 System Prompt 中明确要求"控制在3句话以内"或"不超过200字" |
| 6 | 政策金额与实际文件不符 | 知识库文档版本过旧 | 建立文档版本管理机制;定期(季度)更新知识库 |
| 7 | 意图识别将"入驻"误判为"补贴" | 分类样本不足 | 收集真实对话数据,补充标注样本;增加分类描述细节 |
| 8 | 用户提问模糊时直接乱答 | 缺少澄清机制 | 在意图识别后增加条件分支:置信度<0.7时触发追问节点 |
| 9 | 敏感/违规内容未被拦截 | 未配置内容审核 | 接入 Dify 内置 Moderation 或外部审核 API(如百度文本审核) |
| 10 | DSL 导入后变量名冲突 | 不同环境变量命名不一致 | 统一变量命名规范;导入前检查变量映射表 |
7. 导出为 DSL 的说明
Dify 支持将应用配置导出为 .yml 格式的 DSL 文件,便于团队成员之间共享和版本管理。
7.1 导出步骤
- 进入 Dify 应用 → 点击右上角 「...」 → 选择 「导出 DSL」
- 选择导出范围:
- 仅应用配置(不含知识库):推荐用于代码仓库管理
- 应用配置 + 知识库索引:文件较大,适合完整备份
- 保存为
opc-bot-config.yml
7.2 导入步骤
- 团队成员在 Dify 首页点击 「导入 DSL」
- 上传
opc-bot-config.yml - 根据提示补充必需的环境变量:
- API Key(大模型提供商密钥)
- 知识库文档(需重新上传)
- 点击「发布」即可上线
7.3 团队协作建议
项目仓库结构建议:
opcspace/
├── dify-config/
│ ├── dsl/
│ │ └── opc-bot-config.yml # DSL 主文件
│ ├── prompts/
│ │ └── system-prompt-v1.md # System Prompt 版本管理
│ ├── knowledge/
│ │ ├── 01-入驻指南/ # 知识库源文件
│ │ ├── 02-政策原文/
│ │ └── 03-流程文档/
│ └── README.md # 配置变更记录1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
7.4 版本管理注意事项
- DSL 文件不要包含 API Key,导入后由使用者自行配置
- 每次修改配置后,更新
system-prompt-v1.md并标注版本号与修改日期 - 建议在 Git 提交信息中注明变更类型:
[prompt][workflow][knowledge]
最后更新:2026-05-01 | 维护人:OPC空间技术团队