一、AI客服能解决什么问题
在讲AI客服系统开发之前,先想清楚一个问题:你为什么需要AI客服?
传统人工客服有三个痛点:成本高、响应慢、无法24小时在线。一个客服月薪5000+,一天工作8小时,晚上和周末没人值班,客户咨询没人回,线索就流失了。
AI客服系统能解决的核心问题:
- 24小时在线:凌晨3点客户咨询,AI秒回,不流失任何线索
- 降低人力成本:一个AI客服能同时接待几百个客户,顶10个人工客服
- 提高转化率:通过智能话术引导,识别高意向客户,自动采集联系方式,把访客变成线索
- 数据沉淀:所有对话记录自动保存,可以分析客户最关心什么问题,优化产品和话术
我自己的数码回收业务,上线AI客服后,夜间线索量提升了3倍,人工客服从3人减到1人,每月省了1万多人力成本。这就是AI客服的价值。
二、需求分析:核心功能拆解
一个完整的AI客服系统,不是调个API返回一句话那么简单。核心功能包括以下几块:
| 功能模块 | 说明 | 优先级 |
|---|---|---|
| 对话管理 | 用户与AI的多轮对话,上下文记忆,历史记录保存 | P0 必须 |
| AI回复生成 | 调用大模型API,基于系统提示词生成专业回复 | P0 必须 |
| 留资采集 | 识别高意向客户,引导留下手机号/微信,自动入库 | P0 必须 |
| 意向识别 | 关键词匹配+AI判断,识别客户意向等级,高意向自动通知 | P1 重要 |
| 知识库 | 产品FAQ、价格表、业务知识,AI回答时参考 | P1 重要 |
| 转人工 | 客户要求人工或AI无法回答时,转接人工客服 | P2 可选 |
| 后台管理 | 对话记录查看、留资管理、数据统计、话术配置 | P0 必须 |
第一版只做P0功能:对话管理+AI回复+留资采集+后台管理。P1和P2等核心流程跑通后再加。不要一开始就想做全功能,先跑通"用户咨询→AI回复→留下联系方式→后台看到线索"这个核心闭环。
三、技术架构设计
整体架构
AI客服系统采用经典的前后端分离架构:
- 前端聊天组件:嵌入客户网站的悬浮聊天窗口,Vue或React开发,打包成独立JS文件,客户网站引入即可
- 后端API服务:Python FastAPI,负责对话管理、AI调用、留资处理、后台接口
- AI接口层:封装大模型API调用,支持多模型切换(DeepSeek/OpenAI/本地Ollama)
- 数据库:SQLite或MySQL,存储用户、对话、消息、留资、知识库
- 后台管理前端:Vue + Ant Design,管理对话记录、留资、话术、数据统计
前端聊天组件的关键点
聊天组件要做成可嵌入的独立组件,这样任何网站都能引入。做法:
- 用Vue或React开发聊天窗口UI
- 打包成单个JS文件(如
ai-chat-widget.js) - 客户网站只需要加两行代码:
<script src="https://your-domain.com/ai-chat-widget.js"></script>和<div id="ai-chat" data-site-id="xxx"></div> - 组件通过WebSocket或HTTP轮询与后端通信
四、数据库设计
好的数据库设计是系统稳定的基础。AI客服系统核心表结构如下:
1. 用户表(users)
id INTEGER PRIMARY KEY
site_id VARCHAR(50) -- 站点ID(多租户用)
visitor_id VARCHAR(100) -- 访客唯一标识(浏览器指纹或cookie)
name VARCHAR(100) -- 客户姓名(留资时填写)
phone VARCHAR(20) -- 手机号
wechat VARCHAR(50) -- 微信号
source VARCHAR(100) -- 来源页面URL
intent_level INTEGER -- 意向等级:0未知 1低 2中 3高
created_at DATETIME
updated_at DATETIME
2. 对话表(conversations)
id INTEGER PRIMARY KEY
user_id INTEGER REFERENCES users(id)
site_id VARCHAR(50)
status VARCHAR(20) -- active/closed/transferred
started_at DATETIME
ended_at DATETIME
message_count INTEGER
3. 消息表(messages)
id INTEGER PRIMARY KEY
conversation_id INTEGER REFERENCES conversations(id)
role VARCHAR(20) -- user/assistant/system
content TEXT
tokens_used INTEGER -- AI调用消耗的token
cost DECIMAL(10,6) -- 本次调用成本
created_at DATETIME
4. 留资表(leads)
id INTEGER PRIMARY KEY
user_id INTEGER REFERENCES users(id)
conversation_id INTEGER
name VARCHAR(100)
phone VARCHAR(20)
wechat VARCHAR(50)
remark TEXT -- 客户需求备注
status VARCHAR(20) -- new/contacted/converted/invalid
assigned_to VARCHAR(50) -- 分配给哪个销售
created_at DATETIME
5. 知识库表(knowledge_base)
id INTEGER PRIMARY KEY
site_id VARCHAR(50)
category VARCHAR(50) -- 分类:产品/价格/售后/通用
question TEXT -- 标准问题
answer TEXT -- 标准回答
keywords VARCHAR(200) -- 关键词(用于匹配)
enabled BOOLEAN DEFAULT 1
created_at DATETIME
消息表的content字段可能很长(AI回复可能几千字),SQLite的TEXT字段最大支持1GB,够用。但要注意设置用户输入长度限制,防止恶意用户发超长文本。
五、AI集成:提示词工程是核心
AI客服的效果,80%取决于系统提示词(System Prompt),20%取决于模型选择。同样的API,提示词写得好,AI就是专业客服;提示词写得差,AI就是人工智障。
系统提示词模板
你是【XX公司】的智能客服助手,名字叫小幻。
## 你的职责
1. 用友好、专业、热情的语气回答客户关于【产品/服务】的问题
2. 准确介绍产品功能、价格、优势、使用方法
3. 识别高意向客户,引导留下联系方式(手机号或微信)
4. 遇到无法回答的问题,引导客户留联系方式,说"稍后专人回复"
## 产品知识
{这里插入产品FAQ和知识库内容}
## 回复规则
1. 回复简洁明了,不超过200字,分点说明
2. 不要说"作为AI""我是人工智能",你就是客服小幻
3. 不要编造产品没有的功能,不确定的就说"我帮您确认一下"
4. 客户问价格时,先介绍价值,再报价格,然后引导留资
5. 客户说"考虑一下"时,不要追问,说"好的,有任何问题随时找我",但可以加一句"方便留个微信吗,有活动第一时间通知您"
## 禁止事项
- 不要讨论政治、宗教等敏感话题
- 不要辱骂或贬低竞争对手
- 不要承诺做不到的事情
- 不要泄露公司内部信息
上下文管理
多轮对话需要给AI传历史消息。但不能全传(token成本高),策略是:
- 最近10轮对话全部传入
- 更早的对话用摘要替代(可以用AI生成摘要,或只保留用户的关键问题)
- 系统提示词每次都传(这是AI的"人设",不能丢)
流式输出
AI接口支持流式输出(SSE),用户体验好很多——不用等AI全部生成完才显示,而是一个字一个字蹦出来,像真人打字。FastAPI配合StreamingResponse实现,前端用EventSource接收。
六、留资与意向识别:把访客变线索
AI客服的终极目标不是陪聊,是获客。留资采集和意向识别是AI客服系统的灵魂。
留资触发策略
不要一上来就问手机号,会把客户吓跑。正确的触发时机:
- 客户主动问价格:这是最强的购买信号,立即引导留资
- 客户问"怎么购买/怎么下单":购买意向明确,引导留资
- 对话超过5轮:客户有耐心聊这么久,说明感兴趣,可以温和引导
- AI判断意向高:用AI分析对话内容,判断意向等级,高意向自动触发留资表单
意向识别实现
两层识别机制:
第一层:关键词匹配(简单高效,零成本)
HIGH_INTENT_KEYWORDS = [
"价格", "多少钱", "怎么买", "怎么收费",
"购买", "下单", "签约", "合作",
"联系方式", "电话", "微信", "加个微信",
"优惠", "活动", "折扣", "试用"
]
def check_intent(message):
for kw in HIGH_INTENT_KEYWORDS:
if kw in message:
return "high"
return "normal"
第二层:AI判断(更精准,有额外成本)
每轮对话结束后,调用AI分析对话内容,输出意向等级(0-3)和判断理由。可以用便宜的模型(如DeepSeek的fast模型),成本很低。
高意向自动通知
识别到高意向客户并成功留资后,立即通知销售:
- 企业微信/微信推送(用Server酱或企业微信机器人webhook)
- 短信通知(高价值线索用,成本约0.05元/条)
- 后台弹窗提醒(销售在后台时)
留资成功率最高的话术不是"请留下您的联系方式",而是"方便加个微信吗?我发一份详细的产品资料和报价单给您"。给客户一个留资的理由——有好处(资料/报价单),而不是单纯要信息。我的留资转化率从15%提升到了40%。
七、后台管理:数据是金矿
AI客服系统的后台管理,不只是"看对话记录",更是数据分析和运营工具。核心功能:
1. 对话记录
- 按时间、站点、意向等级筛选
- 查看完整对话内容
- 标记优质对话(作为话术优化参考)
- 导出对话记录(Excel)
2. 留资管理
- 留资列表(姓名、电话、微信、来源、意向等级、时间)
- 状态管理(新线索/已联系/已成交/无效)
- 分配给销售
- 跟进记录
- 导出Excel
3. 数据统计
- 每日/每周/每月咨询量、留资量、转化率
- 热门问题TOP10(客户最关心什么)
- 意向等级分布
- 来源页面分析(哪个页面来的客户质量高)
- AI调用成本统计(token消耗、费用)
4. 话术配置
- 系统提示词在线编辑(不用改代码)
- 知识库管理(增删改查FAQ)
- 留资触发规则配置
- 自动回复规则配置
八、部署上线
服务器配置
- 推荐配置:2核4G内存,40G硬盘,Ubuntu 22.04
- AI接口调用不消耗服务器算力(都是API调用),所以不需要显卡
- 月费约50-100元(香港服务器免备案)
部署架构
用户浏览器 → Nginx(80/443)
├─ /widget.js → 前端聊天组件静态文件
├─ /admin/ → 后台管理前端静态文件
└─ /api/ → 反向代理到 FastAPI(127.0.0.1:8000)
└─ SQLite数据库文件
进程守护
后端用systemd做进程守护,保证服务挂了自动重启:
# /etc/systemd/system/ai-chat.service
[Unit]
Description=AI Chat Service
After=network.target
[Service]
User=www-data
WorkingDirectory=/var/www/ai-chat/backend
ExecStart=/var/www/ai-chat/backend/venv/bin/uvicorn main:app --host 127.0.0.1 --port 8000
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
成本估算
| 项目 | 月成本 | 说明 |
|---|---|---|
| 服务器 | 50-100元 | 2核4G香港服务器 |
| 域名 | 约5元/月 | 年费约60元 |
| AI接口 | 50-500元 | 取决于咨询量,DeepSeek很便宜 |
| 短信通知 | 0-50元 | 高意向线索短信通知,可选 |
| 合计 | 100-700元/月 | 比一个人工客服便宜多了 |
九、优化方向
MVP跑通后,可以逐步加这些高级功能:
1. 知识库RAG
简单的关键词匹配知识库不够精准时,上RAG(检索增强生成)。把产品文档、FAQ向量化存入向量数据库(如Chroma、Milvus),用户提问时先检索相关知识,再让AI基于检索结果回答。这样AI回答更准确,不会编造信息。
2. 多轮对话优化
- 对话摘要:长对话自动生成摘要,减少token消耗
- 话题切换检测:客户换话题时,自动重置上下文
- 情感分析:识别客户情绪,生气时自动转人工
3. 数据分析深化
- 漏斗分析:访问→对话→留资→成交,每一步转化率
- 话术效果分析:哪套提示词留资率高
- 客户画像:基于对话内容分析客户特征
- 预测模型:基于对话内容预测成交概率
4. 多渠道接入
不只是网站聊天窗口,还可以接入:
- 微信公众号(自动回复)
- 企业微信(客户群发消息自动回复)
- 抖音/快手私信(自动回复)
- 电话机器人(语音对话,需要ASR+TTS)
十、总结
AI客服系统开发,核心就四句话:
- 提示词是灵魂:花80%的精力打磨系统提示词,效果比换模型好10倍
- 留资是目标:不是陪聊,是获客。所有功能围绕"把访客变线索"设计
- MVP先跑通:先做对话+AI回复+留资+后台,3-5天出第一版,再迭代
- 数据是金矿:对话记录、留资数据、热门问题,这些数据能帮你优化产品和话术
我自己的AI客服系统,从0到上线用了5天,第一个月就回本了(省了2个人工客服的工资)。现在已经稳定运行2年,处理了十几万条对话,采集了几千条线索。
如果你也想做一个AI客服系统,但觉得自己摸索太慢,可以考虑AI实战陪跑——我1v1手把手带你,从环境搭建到系统上线,把我踩过的坑都告诉你,让你少走弯路。