## 1. 背景与目标 随着大模型(LLM)在自然语言理解与生成能力上的成熟,AI 智能客服已具备在真实业务中承担「**首轮接待、常见问题解答、用户情绪安抚**」等角色的能力。 **本方案目标:** - 在 **最短周期(1~2 周)内完成 AI 客服接入** - **显著改善用户体验**(回答自然、连贯、有温度) - **不引入复杂架构、不增加系统不稳定性** - 为后续升级(RAG / 工具调用 / 私有化模型)保留演进空间 ## 2. LLM 接入技术选型概览 ## 2.1 常见 LLM 接入方案对比 | 方案类型 | 技术构成 | 优点 | 缺点 | 适用阶段 | 成熟框架 / 实际案例 | | --- | --- | --- | --- | --- | --- | | **规则型客服** | 关键词 / 状态机 | 稳定、可控、零成本 | 命中率低、体验生硬 | 传统客服 | **Chatwoot(未启用 AI)**Zammad | | **RAG 架构** | 向量库 + 检索 + LLM | 准确性高、可扩展 | 架构复杂、交付慢 | 中后期 | **Dify**(知识库问答)\n**Haystack** | | **Agent / Tool** | LLM + 函数 / API | 能执行操作、自动化 | 成本高、不稳定 | 成熟期 | **LangChain**(Agent)\n**AutoGPT** | | **Prompt All-in-One** | Prompt + LLM | 上线最快、见效最快 | 知识规模受限 | 短期交付 | **Rasa**(早期 FAQ)\n**Botpress**(Prompt 技能) | ### 2.2 技术选型结论 **基于当前阶段目标(短期交付 + 快速见效),本方案选择:** > **Prompt All-in-One 方式接入 LLM** 即: - 不引入向量数据库 - 不引入 Agent / Tool 体系 - 不拆分复杂 AI 中台 - 通过 **精心设计的 Prompt**,将角色、规则、知识与上下文统一注入模型 *** ## 3. Prompt All-in-One 接入方案概述 ### 3.1 核心思想 > **将“客服经验”而不是“系统复杂度”注入模型** 模型只做一件事: **在清晰约束下,用专业客服语言回答问题** *** ### 3.2 整体交互流程 ```javascript 用户提问 ↓ 会话上下文拼装(最近 N 轮) ↓ 业务规则判断(是否命中硬规则) ↓ Prompt 构建(角色 + 规则 + 知识 + 上下文) ↓ LLM API 调用 ↓ 结果校验 / 兜底 ↓ 返回用户 ``` *** ## 4. Prompt All-in-One 方案详细设计 ### 4.1 Prompt 结构设计 Prompt 采用**分段式结构**,确保模型行为可控、稳定。 #### 4.1.1 角色定义(Role) ```javascript 你是一个专业、克制、可靠的智能客服助手。 你需要像人工客服一样回答问题,而不是聊天机器人。 ``` *** #### 4.1.2 行为规则(Rules) ```javascript 规则: 1. 不允许编造事实 2. 如果无法确认答案,必须明确说明“需要人工客服介入” 3. 回答应简洁、直接、礼貌 4. 不输出与问题无关的内容 ``` *** #### 4.1.3 业务知识(Knowledge) > 采用 **FAQ / 固定问答** 形式,直接注入 Prompt ```javascript 已知业务信息: Q: 如何修改账号密码? A: 在【个人中心】→【安全设置】中进行修改。 Q: 会员是否支持退款? A: 会员服务一经开通暂不支持退款。 Q: 视频无法播放怎么办? A: 请先检查网络环境,若仍无法播放请联系客服。 ``` > 初期建议 **10~50 条核心问题** 即可产生明显效果 *** #### 4.1.4 对话上下文(Context) ```javascript 最近对话: 用户:我昨天开的会员 客服:请问您遇到了什么问题? 用户:我想退款 ``` *** #### 4.1.5 用户当前问题 ```javascript 用户问题: {{question}} ``` *** ### 4.2 Prompt 模板示例(完整版) ```javascript 你是一个专业、克制的智能客服助手。 规则: 1. 只能基于已知信息回答 2. 不允许编造事实 3. 不确定时明确提示需要人工客服 4. 回答要简洁、清晰、礼貌 已知信息: {{faq_list}} 最近对话: {{context}} 用户问题: {{question}} ``` *** ## 5. 系统落地实现方案(工程视角) ### 5.1 模块划分(最小可运行) ```javascript ai_customer_service/ ├── prompt.go // Prompt 构建 ├── context.go // 会话上下文管理 ├── rules.go // 硬规则与兜底 ├── llm_client.go // LLM API 封装 └── handler.go // 对外接口 ``` *** ### 5.2 关键实现要点 #### 5.2.1 会话上下文控制 - 仅保留最近 **3~5 轮对话** - 防止 Prompt 过长导致成本失控 - 避免历史误导当前回答 *** #### 5.2.2 规则优先级设计 ```javascript 硬规则(最高) ↓ Prompt + LLM ↓ 兜底回复(最低) ``` 例如: - 退款、价格、政策 → 规则直出 - 模糊咨询 → LLM - 异常 / 空回复 → 人工 *** #### 5.2.3 风险控制与兜底 - LLM 返回空 / 非法 → 固定话术 - 关键词触发(投诉 / 法律 / 情绪)→ 转人工 - 可配置「最大连续 LLM 轮数」 *** ## 6. 预期效果与评估指标 ### 6.1 短期可见效果 - 用户首次问题命中率明显提升 - 客服话术更自然,减少追问 - 人工客服接入压力下降 *** ### 6.2 可量化指标(上线即可统计) | 指标 | 说明 | | --- | --- | | AI 命中率 | AI 独立解决的会话占比 | | 转人工率 | 未解决会话比例 | | 平均轮数 | 用户追问次数 | | 成本 | 单会话 Token 消耗 | *** ## 7. 后续演进路径(非本期实施) ```javascript Prompt All-in-One ↓ FAQ 规模扩大 ↓ 向量检索(RAG) ↓ 工具调用(查订单 / 查状态) ↓ 私有化模型 / 成本优化 ``` *** ## 8. 方案总结 - 本方案 **以业务效果为第一优先级** - 避免初期复杂架构导致的交付风险 - 在 **最小投入下获取最大用户感知提升** - 为后续智能客服能力升级保留清晰演进路径 > **结论:Prompt All-in-One 是当前阶段性最优解**