链载Ai

标题: 从0到1落地一个RAG智能客服系统 [打印本页]

作者: 链载Ai    时间: 昨天 18:42
标题: 从0到1落地一个RAG智能客服系统

目录

  1. 项目背景
  2. 技术怎么选?LangChain、dify、Coze、百炼都试了
  3. 数据预处理:说明书+聊天记录怎么搞
  4. Prompt设计那些事:写得好像编程一样重要
  5. Agent流程设计:多机器人协作才靠谱
  6. 测试与评估:效果咋样?问题在哪?
  7. 遇到的坑 & 接下来要干啥?

1️⃣ 项目背景:我们为啥要做这个?

过年的时候DeepSeek火了,年后老板提出要做智能客服的项目。(主要是大模型api价格降下来了,我们中小厂也能入场了


2️⃣ 技术选型与工具链

项目初期我调研了几种主流方案:

最终我选择了阿里云百炼的 Assistant API + 自主代码调度方案,主要基于以下几点考虑:


3️⃣ 数据预处理:说明书+聊天记录怎么处理?

📘 说明书数据结构化处理

我把说明书整理成结构化数据,结构大概是这样:

设备型号
功能标题
内容详情
AT01 / BT02
2.4G 模式连接
将设备底部开关拨至 2.4G 模式后长按连接键3秒…
M001
灯不亮了
操作步骤扩展说明。。。
M002
无法连接
操作步骤扩展说明

这种结构化方式便于后续切片,同时也能做关键词 + 向量双重匹配

💬 客服聊天记录的挑战与策略

聊天记录处理远比说明书复杂,挑战包括:

所以我用了“弱监督 + 大模型协助”的方式来处理:

  1. 清洗数据:去除异常对话、乱码、特殊字符、低质量样本。
  2. 隐私脱敏:正则规则 + 模型辅助识别敏感字段。
  3. 编写 Prompt,批量传入大模型,提取成结构化问答数据
问题描述
解决方案
相关设备型号
问题分类
用户满意度
设备无法通过2.4G模式连接
将开关拨至2.4G模式后长按连接键5秒,重启路由器
AT01、BT02、CT03
网络连接类
满意
2.4G模式连接后频繁断连
检查设备与路由器距离是否超过10米,更换信道
BT02、DT04
信号稳定性
适中
连接键长按无反应
检查电池电量是否低于20%,清洁按键触点
AT01、ET05
硬件故障类
不满意

在大模型批量数据处理方面,推荐使用阿里云百炼的批处理接口,在非高峰时段提交任务,降低成本,非常适合我们这种对时效性要求不高但成本敏感的业务场景


4️⃣ Prompt设计:像编程一样,但更靠猜!

Prompt 设计就像写代码,但还得多试多改,以下是我踩过的坑总结👇

💡 小技巧合集:

  1. 让模型输出思考过程,看看它是不是在瞎编。
  2. 提供高质量示例,尽可能在短小的示例中命中你全部的需求。
  3. 模型适配 Prompt:比如 GPT-4 更擅长理解英文结构化提示,通义千问在处理中文口语类表达上有优势。
  4. 用伪代码表示复杂逻辑,清晰明确。
  5. Prompt 要版本管理,以便对比优化效果。
  6. 分工协作:复杂任务可拆分给多个机器人串联处理。
  7. 指令不生效时,多换几种表述方式,越简单越好。
  8. 复杂句换成直白口语,命中率更高。
  9. 指定风格和语气:通过 token 联想来控制语调(如“俏皮”风格)。
  10. 任务说明必须明确,让模型知道你要“提取”、“摘要”还是“判断”。
  11. 角色设定要清晰,角色决定语言风格和知识背景。
  12. 格式控制要写死,不然模型输出容易走偏。
  13. 添加反向约束,如“不要解释,不要重复问题”等防止模型加戏。

此外,我的实际体会是,即便是最优设计的 Prompt,也可能在实际调用中不稳定——同样的输入,有时生效有时不生效。这跟大模型服务商的底层实现有关,我怀疑部分平台在负载均衡时会调用不同版本或权重参数的模型实例。


5️⃣ Agent流程设计:多个机器人一起干活才靠谱!

我采用了多智能体分工协作的设计,结合阿里云百炼提供的 API 服务,构建了一套可控、可维护的智能体系统。

智能体划分如下:

  1. 型号与问题收集智能体






欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5