# TSP智能助手完整文档 ## 📋 目录 - [项目概述](#项目概述) - [系统架构](#系统架构) - [核心功能](#核心功能) - [技术栈](#技术栈) - [安装部署](#安装部署) - [配置说明](#配置说明) - [使用指南](#使用指南) - [API接口](#api接口) - [数据库设计](#数据库设计) - [开发指南](#开发指南) - [故障排除](#故障排除) - [更新日志](#更新日志) --- ## 🚀 项目概述 TSP智能助手是一个基于大语言模型的智能客服系统,专为TSP(Telematics Service Provider)车辆服务提供商设计。系统集成了智能对话、工单管理、知识库、数据分析、飞书集成等核心功能。 ### 核心特性 - **智能Agent架构**: 多工具集成,智能规划,自主学习 - **实时对话系统**: WebSocket支持,上下文理解,VIN识别 - **数据驱动分析**: 真实数据统计,可视化展示,系统监控 - **企业级管理**: 多环境部署,版本控制,热更新,自动备份 - **飞书集成**: 支持飞书多维表格数据同步和管理 - **AI准确率优化**: 智能判断AI建议质量,优先使用高质量内容入库 --- ## 🏗️ 系统架构 ### 整体架构 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 前端界面 │ │ 后端服务 │ │ 数据存储 │ │ │ │ │ │ │ │ • 仪表板 │◄──►│ • Flask API │◄──►│ • MySQL DB │ │ • 智能对话 │ │ • WebSocket │ │ • 知识库 │ │ • Agent管理 │ │ • Agent核心 │ │ • 工单系统 │ │ • 数据分析 │ │ • LLM集成 │ │ • 车辆数据 │ │ • 飞书同步 │ │ • 备份系统 │ │ • SQLite备份 │ └─────────────────┘ └─────────────────┘ └─────────────────┘ ``` ### 模块化设计 - **Web层**: Flask蓝图架构,模块化API设计 - **业务层**: Agent核心、对话管理、工单处理 - **数据层**: MySQL主库 + SQLite备份,ORM映射 - **集成层**: 飞书API、LLM服务、监控系统 --- ## 🎯 核心功能 ### 1. 智能对话系统 💬 - **多轮对话**: 支持上下文关联的连续对话 - **VIN识别**: 自动识别车辆VIN并获取实时数据 - **知识库检索**: 基于TF-IDF和余弦相似度的智能检索 - **工单创建**: 对话中直接创建和关联工单 ### 2. Agent管理系统 🤖 - **工具管理**: 10+内置工具,支持自定义工具注册 - **执行监控**: 实时监控Agent任务执行状态 - **性能统计**: 工具使用频率和成功率分析 - **智能规划**: 基于目标的任务分解和执行 ### 3. 工单管理系统 📋 - **AI建议生成**: 基于知识库生成工单处理建议 - **人工审核**: 支持人工输入和AI建议对比 - **语义相似度**: 使用sentence-transformers进行准确度评估 - **智能入库**: AI准确率<90%时优先使用人工描述入库 - **知识库更新**: 高相似度建议自动入库 ### 4. 知识库管理 📚 - **多格式支持**: TXT、PDF、DOC、DOCX、MD文件 - **智能提取**: 自动从文档中提取Q&A对 - **向量化检索**: TF-IDF + 余弦相似度搜索 - **质量验证**: 支持知识条目验证和置信度设置 ### 5. 数据分析系统 📊 - **实时趋势**: 基于真实数据的性能趋势分析 - **多维度统计**: 工单、预警、满意度等关键指标 - **系统健康**: CPU、内存、响应时间监控 - **可视化展示**: 丰富的图表和仪表板 ### 6. 飞书集成系统 📱 - **多维表格同步**: 自动同步飞书多维表格数据 - **字段映射**: 智能映射飞书字段到本地数据库 - **实时更新**: 支持增量同步和全量同步 - **数据预览**: 同步前预览数据,确保准确性 ### 7. 系统设置管理 ⚙️ - **API管理**: 支持多种LLM提供商配置 - **模型参数**: 温度、最大令牌数等参数调节 - **端口配置**: Web服务和WebSocket端口管理 - **日志级别**: 灵活的日志级别控制 --- ## 🛠️ 技术栈 ### 后端技术 - **Python 3.8+**: 核心开发语言 - **Flask**: Web框架和API服务 - **SQLAlchemy**: ORM数据库操作 - **WebSocket**: 实时通信支持 - **psutil**: 系统资源监控 ### 前端技术 - **Bootstrap 5**: UI框架 - **Chart.js**: 数据可视化 - **JavaScript ES6+**: 前端逻辑 - **WebSocket**: 实时通信客户端 ### AI/ML技术 - **大语言模型**: 支持OpenAI、通义千问等 - **sentence-transformers**: 语义相似度计算 - **TF-IDF**: 文本向量化 - **余弦相似度**: 语义相似度计算 - **Agent框架**: 智能任务规划 ### 部署运维 - **Docker**: 容器化部署 - **Nginx**: 反向代理和静态文件服务 - **Systemd**: 服务管理 - **Git**: 版本控制 --- ## 🚀 安装部署 ### 环境要求 - Python 3.8+ - Node.js 16+ (可选,用于前端构建) - Git - MySQL 8.0+ ### 安装步骤 1. **克隆项目** ```bash git clone http://jeason.online:3000/zhaojie/assist.git cd assist ``` 2. **安装依赖** ```bash pip install -r requirements.txt ``` 3. **配置数据库** ```bash # 创建MySQL数据库 mysql -u root -p CREATE DATABASE tsp_assistant CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 4. **初始化数据库** ```bash python init_database.py ``` 5. **启动服务** ```bash python start_dashboard.py ``` 6. **访问系统** - 打开浏览器访问: `http://localhost:5000` - 默认端口: 5000 (可在系统设置中修改) ### Windows快速启动 ```cmd # 双击运行 快速启动.bat ``` --- ## ⚙️ 配置说明 ### 环境变量 ```bash # 数据库配置 DATABASE_URL=mysql+pymysql://user:password@host:port/database # LLM配置 LLM_PROVIDER=openai LLM_API_KEY=your_api_key LLM_MODEL=gpt-3.5-turbo # 服务配置 SERVER_PORT=5000 WEBSOCKET_PORT=8765 LOG_LEVEL=INFO ``` ### 配置文件结构 ``` config/ ├── llm_config.py # LLM客户端配置 ├── integrations_config.json # 飞书集成配置 ├── ai_accuracy_config.py # AI准确率配置 └── README.md # 配置说明文档 ``` ### 飞书集成配置 ```json { "feishu": { "app_id": "cli_a8b50ec0eed1500d", "app_secret": "ccxkE7ZCFQZcwkkM1rLy0ccZRXYsT2xK", "app_token": "XXnEbiCmEaMblSs6FDJcFCqsnIg", "table_id": "tblnl3vJPpgMTSiP", "status": "active" }, "system": { "sync_limit": 10, "ai_suggestions_enabled": true, "auto_sync_interval": 0 } } ``` ### AI准确率配置 ```python # 默认配置 auto_approve_threshold = 0.95 # 自动审批阈值 use_human_resolution_threshold = 0.90 # 使用人工描述阈值 manual_review_threshold = 0.80 # 人工审核阈值 ``` --- ## 📖 使用指南 ### 基础操作 #### 1. 智能对话 1. 在"智能对话"页面输入问题 2. 系统自动检索知识库并生成回答 3. 支持VIN码识别和车辆数据查询 #### 2. 工单管理 1. 创建工单并获取AI建议 2. 输入人工处理描述 3. 系统自动计算语义相似度 4. 根据相似度决定入库策略 #### 3. 知识库维护 1. 手动添加Q&A对 2. 上传文档自动提取知识 3. 设置置信度和验证状态 #### 4. 飞书数据同步 1. 配置飞书应用凭证 2. 在主仪表板"飞书同步"标签页 3. 测试连接并执行数据同步 ### 高级功能 #### 1. Agent工具管理 - 查看工具使用统计 - 注册自定义工具 - 监控执行历史 #### 2. 数据分析 - 多维度数据统计 - 自定义时间范围 - 导出分析报告 #### 3. 系统配置 - API和模型参数配置 - 端口和日志级别设置 - 环境变量管理 --- ## 🔌 API接口 ### 工单管理API ```http POST /api/workorders/{id}/ai-suggestion POST /api/workorders/{id}/human-resolution POST /api/workorders/{id}/approve-to-knowledge GET /api/workorders POST /api/workorders PUT /api/workorders/{id} DELETE /api/workorders/{id} ``` ### 知识库API ```http GET /api/knowledge POST /api/knowledge PUT /api/knowledge/{id} DELETE /api/knowledge/{id} POST /api/knowledge/search POST /api/knowledge/upload ``` ### 对话API ```http POST /api/chat/session GET /api/chat/session/{id} DELETE /api/chat/session/{id} POST /api/chat/message ``` ### Agent管理API ```http GET /api/agent/status POST /api/agent/tools/execute POST /api/agent/tools/register GET /api/agent/tools/stats ``` --- ## 🗄️ 数据库设计 ### 核心表结构 #### work_orders (工单表) ```sql CREATE TABLE work_orders ( id INT PRIMARY KEY AUTO_INCREMENT, order_id VARCHAR(50) UNIQUE NOT NULL, title VARCHAR(200) NOT NULL, description TEXT NOT NULL, category VARCHAR(100) NOT NULL, priority VARCHAR(20) NOT NULL, status VARCHAR(20) NOT NULL, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, resolution TEXT, satisfaction_score FLOAT, -- 飞书集成字段 feishu_record_id VARCHAR(100), source VARCHAR(50), module VARCHAR(100), created_by VARCHAR(100), wilfulness VARCHAR(100), date_of_close DATETIME, vehicle_type VARCHAR(100), vin_sim VARCHAR(50), app_remote_control_version VARCHAR(100), hmi_sw VARCHAR(100), parent_record VARCHAR(100), has_updated_same_day VARCHAR(50), operating_time VARCHAR(100) ); ``` #### work_order_suggestions (工单建议表) ```sql CREATE TABLE work_order_suggestions ( id INT PRIMARY KEY AUTO_INCREMENT, work_order_id INT NOT NULL, ai_suggestion TEXT, human_resolution TEXT, ai_similarity FLOAT, approved BOOLEAN DEFAULT FALSE, use_human_resolution BOOLEAN DEFAULT FALSE, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, FOREIGN KEY (work_order_id) REFERENCES work_orders(id) ); ``` #### knowledge_entries (知识库表) ```sql CREATE TABLE knowledge_entries ( id INT PRIMARY KEY AUTO_INCREMENT, question TEXT NOT NULL, answer TEXT NOT NULL, category VARCHAR(100), confidence_score FLOAT DEFAULT 0.5, usage_count INT DEFAULT 0, is_active BOOLEAN DEFAULT TRUE, is_verified BOOLEAN DEFAULT FALSE, verified_by VARCHAR(100), verified_at DATETIME, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); ``` --- ## 👨‍💻 开发指南 ### 项目结构 ``` tsp-assistant/ ├── src/ # 源代码 │ ├── agent/ # Agent核心模块 │ ├── analytics/ # 数据分析模块 │ ├── config/ # 配置模块 │ ├── core/ # 核心模块 │ ├── dialogue/ # 对话模块 │ ├── integrations/ # 集成模块 │ ├── knowledge_base/ # 知识库模块 │ ├── utils/ # 工具模块 │ ├── vehicle/ # 车辆数据模块 │ └── web/ # Web应用模块 ├── config/ # 配置文件 ├── scripts/ # 脚本文件 ├── uploads/ # 上传文件 ├── requirements.txt # 依赖文件 ├── init_database.py # 数据库初始化 └── start_dashboard.py # 启动脚本 ``` ### 代码规范 - **Python**: 遵循PEP 8规范 - **JavaScript**: 使用ES6+语法 - **提交信息**: 使用约定式提交格式 - **文档**: 新功能需要添加相应的文档 ### 开发流程 1. Fork项目到个人仓库 2. 创建功能分支: `git checkout -b feature/new-feature` 3. 提交更改: `git commit -m "Add new feature"` 4. 推送分支: `git push origin feature/new-feature` 5. 创建Pull Request --- ## 🚨 故障排除 ### 常见问题 #### 1. 数据库连接失败 ```bash # 检查数据库服务状态 systemctl status mysql # 检查连接配置 python -c "from src.core.database import db_manager; print(db_manager.test_connection())" ``` #### 2. 飞书集成问题 - 检查飞书应用权限配置 - 验证app_token和table_id是否正确 - 确认网络连接和API访问权限 #### 3. AI建议生成失败 - 检查LLM API配置 - 验证知识库数据完整性 - 查看应用日志 #### 4. 数据库字段缺失 ```bash # 运行数据库迁移 python init_database.py # 手动添加字段 mysql -u root -p tsp_assistant ALTER TABLE work_order_suggestions ADD COLUMN use_human_resolution BOOLEAN DEFAULT FALSE; ``` ### 日志位置 - **应用日志**: `logs/tsp_assistant.log` - **访问日志**: Nginx访问日志 - **错误追踪**: 详细的错误堆栈信息 ### 性能优化 - **数据库索引**: 为常用查询字段添加索引 - **缓存策略**: 使用Redis缓存热点数据 - **异步处理**: 耗时操作使用异步处理 - **连接池**: 配置数据库连接池 --- ## 📝 更新日志 ### v1.4.0 (2025-09-19) - ✅ 飞书集成功能:支持飞书多维表格数据同步 - ✅ 页面功能合并:飞书同步页面合并到主仪表板 - ✅ 数据库架构优化:扩展工单表字段,支持飞书数据 - ✅ 代码重构优化:大文件拆分,降低运行风险 - ✅ 字段映射完善:智能映射飞书字段到本地数据库 - ✅ 数据库初始化改进:集成字段迁移到初始化流程 - ✅ AI准确率优化:AI准确率<90%时优先使用人工描述入库 - ✅ 语义相似度计算:使用sentence-transformers提升准确度 ### v1.3.0 (2025-09-17) - ✅ 数据库架构优化:MySQL主数据库+SQLite备份系统 - ✅ 工单详情API修复:解决数据库会话管理问题 - ✅ 备份管理系统:自动备份MySQL数据到SQLite - ✅ 数据库状态监控:实时监控MySQL和SQLite状态 - ✅ 备份管理API:支持数据备份和恢复操作 ### v1.2.0 (2025-09-16) - ✅ 系统设置扩展:API管理、模型参数配置、端口管理 - ✅ 真实数据分析:修复性能趋势图表显示问题 - ✅ 工单AI建议功能:智能生成处理建议 - ✅ 知识库搜索优化:提升检索准确率 - ✅ Agent管理改进:工具使用统计和自定义工具 --- ## 📄 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情 ## 📞 支持与联系 - **项目地址**: http://jeason.online:3000/zhaojie/assist - **问题反馈**: 请在Issues中提交问题 - **功能建议**: 欢迎提交Feature Request ## 🙏 致谢 感谢所有为项目做出贡献的开发者和用户! --- **TSP智能助手** - 让车辆服务更智能,让客户体验更美好! 🚗✨