立项背景和目标:传统客服系统依赖人工值守,响应慢、成本高,高峰期排队严重,且难以处理复杂多轮咨询,企业客服人力成本逐年上升。本项目目标是搭建一套基于大语言模型的 AI 智能客服问答系统,用 AI 替代人工初筛,实现 7×24 小时即时响应,降低企业客服成本。
核心功能模块:① 多轮对话引擎——自动携带最近 20 条会话上下文,支持连续追问,上下文不丢失;② SSE 流式输出——AI 回复逐字实时呈现,无需等待完整生成,体验接近真人对话;③ 会话持久化——内存缓存 + SQLite 双写,服务重启后历史记录不丢失;④ 历史记录管理——独立页面浏览全部会话、查看完整对话、支持删除;⑤ 优雅降级——未配置模型 Key 时服务照常启动,页面显示提示条,不影响其他功能。
业务流程:用户打开聊天页面 → 输入问题 → 后端携带会话上下文调用大模型 API → SSE 流式返回回答 → 对话实时保存至 SQLite → 用户可随时在历史页面回顾。
整体架构:前后端分离设计。后端采用 FastAPI 框架,分层结构:路由层(chat.py)处理 HTTP 与 SSE 流式响应;服务层封装大模型调用(OpenAI 兼容协议,支持流式);数据层(db.py)使用 Python 标准库 sqlite3 实现会话与消息持久化,避免引入重量级 ORM;前端为纯原生 HTML/CSS/JavaScript,零前端框架依赖,部署轻量。
我的负责模块与结果:独立完成全部模块的设计与实现,包括:SSE 流式协议对接与前端逐字渲染(核心难点);多轮对话上下文拼接与 20 条滑动窗口策略;SQLite 双写存储与历史查询 API;中文输入法组词回车不误发的交互细节处理。项目交付包含完整代码、依赖清单与中文文档,所有文件 UTF-8 编码,通过语法编译校验。
难点与解决:SSE 流式输出在代理环境下可能被缓冲导致前端收不到增量——通过设置响应头禁用缓冲并采用分块传输解决;中文输入法回车误发送——通过监听 compositionend 事件区分组词确认与真实提交。