# 智能客服系统开发计划文档 ## 1. 项目概述 ### 1.1 项目目标 基于 Eino Framework + Kratos 架构,开发一个具备智能意图识别、RAG知识库查询、订单诊断和实时监控的智能客服系统后端API服务。 ### 1.2 技术栈 - **后端框架**: Eino Framework + Kratos - **AI模型**: Ollama (qwen3:8b + deepseek-v3.1) - **数据存储**: SQLite + Redis + ChromaDB - **监控**: Coze-Loop - **部署**: Docker Compose ## 2. 敏捷开发阶段规划 ### 阶段划分原则 - 每个阶段都有独立的交付物和验证标准 - 按技术依赖和业务价值排序 - 支持快速迭代和反馈 - 风险前置,核心功能优先 ## 3. 开发阶段详细规划 ### 🚀 阶段1:基础框架集成 (2-3天) **目标**: 建立项目基础架构,集成核心框架 **开发内容**: - Eino Framework 集成到 Kratos 项目 - 基础配置文件和环境设置 - Docker Compose 服务编排 - 基础 API 路由和中间件 - 健康检查接口 **交付物**: - 可启动的 Kratos + Eino 服务 - Docker Compose 配置文件 - 基础配置文件模板 - `/api/system/status` 健康检查接口 **验证标准**: - [ ] 服务能正常启动在8302端口 - [ ] Docker Compose 能拉起所有依赖服务 - [ ] 健康检查接口返回正常状态 - [ ] 基础日志和监控能正常工作 **技术风险**: - Eino Framework 与 Kratos 的集成兼容性 - Docker 服务间网络通信配置 --- ### 💬 阶段2:核心聊天功能 (3-4天) **目标**: 实现基础聊天对话和SSE流式响应 **开发内容**: - 聊天会话管理 (SQLite) - 基础对话API接口 - SSE (Server-Sent Events) 流式响应 - Ollama 模型调用集成 - 消息存储和会话管理 **交付物**: - `/api/chat` POST 接口 (SSE流式响应) - `/api/sessions` GET/POST 接口 - 会话数据存储 (SQLite) - 基础对话功能 **验证标准**: - [ ] 能创建和管理聊天会话 - [ ] 支持SSE流式消息推送 - [ ] 能调用Ollama模型生成回复 - [ ] 消息历史正确存储和检索 **技术风险**: - SSE 长连接稳定性 - Ollama 模型调用延迟和错误处理 --- ### 🧠 阶段3:AI智能功能 (4-5天) **目标**: 实现智能意图识别和多模型调用 **开发内容**: - 意图识别服务 (qwen3:8b) - 多模型调用管理 - 对话上下文管理 - AI成本统计和监控 - 智能路由逻辑 **交付物**: - 意图识别服务 - 多模型调用框架 - AI成本统计功能 - 智能对话路由 **验证标准**: - [ ] 能准确识别用户意图 (订单查询/知识库查询/闲聊) - [ ] 根据意图选择合适的处理流程 - [ ] AI调用成本能正确统计 - [ ] 支持上下文相关的多轮对话 **技术风险**: - 意图识别准确率 - 多模型调用的性能优化 --- ### 📚 阶段4:知识库系统 (4-5天) **目标**: 实现RAG知识库查询和文档管理 **开发内容**: - 文档上传和解析 (Word/TXT) - 文档分块和向量化 (ChromaDB) - RAG 检索和生成 - 知识库管理接口 - 相似度搜索优化 **交付物**: - `/api/knowledge/upload` 文档上传接口 - `/api/knowledge/list` 知识库列表接口 - `/api/knowledge/{id}` 文档删除接口 - RAG 查询集成到聊天功能 **验证标准**: - [ ] 支持Word和TXT文档上传 - [ ] 文档能正确分块和向量化存储 - [ ] RAG检索能返回相关知识 - [ ] 知识库查询集成到对话流程 **技术风险**: - 文档解析的准确性 - 向量检索的相关性和性能 --- ### 🔍 阶段5:订单诊断与监控集成 (3-4天) **目标**: 实现订单诊断功能和完整监控 **开发内容**: - 订单查询API (Mock数据) - 订单问题智能诊断 - Coze-Loop 监控集成 - 性能指标收集 - 完整的API文档 **交付物**: - `/api/order/query` 订单查询接口 - 订单智能诊断功能 - Coze-Loop 监控面板 - `/api/analytics/*` 统计接口 - 完整的API接口文档 **验证标准**: - [ ] 订单查询能返回Mock数据 - [ ] 能基于订单信息进行智能诊断 - [ ] Coze-Loop 能收集和展示监控数据 - [ ] 所有API接口文档完整 **技术风险**: - Coze-Loop 集成复杂度 - 监控数据的准确性和实时性 ## 4. 开发排期 ```mermaid gantt title 智能客服系统开发排期 dateFormat YYYY-MM-DD section 阶段1 基础框架集成 :a1, 2025-01-16, 3d section 阶段2 核心聊天功能 :a2, after a1, 4d section 阶段3 AI智能功能 :a3, after a2, 5d section 阶段4 知识库系统 :a4, after a3, 5d section 阶段5 订单诊断监控 :a5, after a4, 4d ``` **总开发周期**: 约 3-4 周 (21个工作日) **关键里程碑**: - 第1周末: 基础框架 + 聊天功能完成 - 第2周末: AI智能功能完成 - 第3周末: 知识库系统完成 - 第4周末: 完整系统交付 ## 5. Mock数据设计 ### 5.1 订单测试数据 (3条) ```json [ { "order_id": "ORD20250115001", "status": "已发货", "need_ai": true, "details": { "product": "iPhone 15 Pro Max 256GB 深空黑色", "amount": 9999.00, "create_time": "2025-01-10T10:30:00Z", "shipping_address": "北京市朝阳区xxx街道xxx号", "tracking_number": "SF1234567890", "estimated_delivery": "2025-01-18" }, "issues": ["物流延迟", "用户催单"] }, { "order_id": "ORD20250114002", "status": "退款处理中", "need_ai": true, "details": { "product": "MacBook Air M2 13英寸 午夜色", "amount": 8999.00, "create_time": "2025-01-08T14:20:00Z", "refund_reason": "商品质量问题", "refund_amount": 8999.00, "refund_status": "审核中" }, "issues": ["质量投诉", "退款咨询"] }, { "order_id": "ORD20250113003", "status": "已完成", "need_ai": false, "details": { "product": "AirPods Pro 第二代", "amount": 1899.00, "create_time": "2025-01-05T09:15:00Z", "delivery_time": "2025-01-12T16:30:00Z", "rating": 5, "review": "音质很棒,降噪效果出色" }, "issues": [] } ] ``` ### 5.2 知识库示例文档 (3个) **文档1: 产品使用手册.docx** ``` 内容预览: "iPhone 15 Pro Max 使用指南:1. 开机设置 2. Face ID配置 3. 相机功能详解 4. 电池优化建议 5. 常见问题解答..." 分块策略: 按功能模块分块,每块300-500字 ``` **文档2: 售后服务政策.txt** ``` 内容预览: "退换货政策:7天无理由退货,15天质量问题换货。保修政策:1年免费保修,人为损坏不在保修范围内..." 分块策略: 按政策类型分块,每块200-400字 ``` **文档3: 常见问题解答.txt** ``` 内容预览: "Q: 如何重置密码?A: 进入设置-账户安全-重置密码。Q: 物流查询方式?A: 订单详情页点击物流跟踪..." 分块策略: 按Q&A对分块,每个问答为一块 ``` ### 5.3 用户会话场景 **场景1: 订单咨询** ``` 用户: "我的订单ORD20250115001什么时候能到?" 意图: 订单查询 处理: 调用订单API + AI诊断 ``` **场景2: 知识库查询** ``` 用户: "iPhone 15 Pro Max 怎么设置Face ID?" 意图: 知识库查询 处理: RAG检索 + 知识生成 ``` **场景3: 闲聊对话** ``` 用户: "你好,今天天气怎么样?" 意图: 闲聊 处理: 通用对话模型 ``` ## 6. Docker服务管理 ### 6.1 Docker Compose 配置 ```yaml version: '3.8' services: # 智能客服后端服务 eino-customer-service: build: . ports: - "8302:8302" depends_on: - redis - chromadb - coze-loop environment: - REDIS_URL=redis://redis:6379 - CHROMADB_URL=http://chromadb:8000 - OLLAMA_URL=http://host.docker.internal:11434 - COZE_LOOP_URL=http://coze-loop:8080 volumes: - ./data:/app/data - ./configs:/app/configs networks: - eino-network # Redis 缓存服务 redis: image: redis:7-alpine ports: - "6379:6379" volumes: - redis_data:/data networks: - eino-network healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 3 # ChromaDB 向量数据库 chromadb: image: chromadb/chroma:latest ports: - "8000:8000" volumes: - chromadb_data:/chroma/chroma environment: - CHROMA_SERVER_HOST=0.0.0.0 - CHROMA_SERVER_HTTP_PORT=8000 networks: - eino-network healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/api/v1/heartbeat"] interval: 30s timeout: 10s retries: 3 # Coze-Loop 监控服务 coze-loop: image: cozedev/coze-loop:latest ports: - "8080:8080" environment: - COZE_LOOP_PORT=8080 - COZE_LOOP_LOG_LEVEL=info volumes: - coze_loop_data:/app/data networks: - eino-network healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8080/health"] interval: 30s timeout: 10s retries: 3 volumes: redis_data: chromadb_data: coze_loop_data: networks: eino-network: driver: bridge ``` ### 6.2 服务启动顺序 1. **基础服务**: Redis, ChromaDB 2. **监控服务**: Coze-Loop 3. **应用服务**: eino-customer-service ### 6.3 健康检查策略 - **Redis**: `redis-cli ping` - **ChromaDB**: HTTP heartbeat 接口 - **Coze-Loop**: HTTP health 接口 - **主服务**: `/api/system/status` 接口 ## 7. 技术风险评估 ### 7.1 高风险项 - **Eino Framework 集成**: 新框架,文档可能不完善 - **SSE 长连接**: 网络稳定性和资源管理 - **AI模型调用**: 延迟和错误处理 ### 7.2 中风险项 - **ChromaDB 性能**: 向量检索性能优化 - **Docker 服务编排**: 服务间依赖和网络配置 ### 7.3 低风险项 - **SQLite 数据存储**: 成熟技术,风险较低 - **Redis 缓存**: 标准配置,风险可控 ## 8. 质量保证 ### 8.1 测试策略 - **单元测试**: 核心业务逻辑覆盖率 > 80% - **集成测试**: API接口功能验证 - **性能测试**: 并发和响应时间测试 ### 8.2 代码质量 - **代码规范**: Go 标准代码规范 - **文档完整**: API文档和部署文档 - **错误处理**: 完善的错误处理和日志记录 ## 9. 交付清单 ### 9.1 代码交付 - [ ] 完整的 Go 项目代码 - [ ] Docker Compose 配置文件 - [ ] 配置文件模板和示例 ### 9.2 文档交付 - [ ] API 接口文档 - [ ] 部署运维文档 - [ ] 开发者使用指南 ### 9.3 测试交付 - [ ] 单元测试用例 - [ ] 集成测试脚本 - [ ] 性能测试报告 --- **项目负责人**: AI Assistant **文档版本**: v1.0 **创建日期**: 2025-01-16 **更新日期**: 2025-01-16