diff --git a/README.md b/README.md index 1b3712b..1b78a35 100644 --- a/README.md +++ b/README.md @@ -15,13 +15,15 @@ - **智能规划**: 基于目标驱动的任务规划和执行 - **自主学习**: 从用户反馈中持续优化响应质量 - **实时监控**: 主动监控系统状态和异常情况 -- **模块化重构**: 代码优化,降低运行风险,提升维护性 +- **模块化重构**: Flask蓝图架构,将1953行单文件重构为模块化蓝图,提升可维护性 +- **代码优化**: 降低运行风险,提升代码质量和可扩展性 ### 💬 智能对话系统 - **实时通信**: WebSocket支持,毫秒级响应 - **上下文理解**: 多轮对话记忆和上下文关联 - **VIN识别**: 自动识别车辆VIN码并获取实时数据 - **知识库集成**: 基于TF-IDF和余弦相似度的智能检索 +- **语义理解**: 使用sentence-transformers进行深度语义相似度计算 ### 📊 数据驱动分析 - **真实数据**: 基于数据库的真实性能趋势分析 @@ -35,20 +37,25 @@ - **热更新**: 支持前端文件热更新,无需重启服务 - **自动备份**: 更新前自动备份,支持一键回滚 - **飞书集成**: 支持飞书多维表格数据同步和管理 +- **数据库架构**: MySQL主数据库 + SQLite备份系统,双重保障 +- **权限管理**: 工单分发和权限管理,支持模块化权限控制 ## 🏗️ 系统架构 +### 整体架构 + ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 前端界面 │ │ 后端服务 │ │ 数据存储 │ │ │ │ │ │ │ │ • 仪表板 │◄──►│ • Flask API │◄──►│ • MySQL DB │ -│ • 智能对话 │ │ • WebSocket │ │ • Redis缓存 │ -│ • Agent管理 │ │ • Agent核心 │ │ • 知识库 │ -│ • 数据分析 │ │ • LLM集成 │ │ • 工单系统 │ -│ • 备份管理 │ │ • 备份系统 │ │ • 车辆数据 │ -└─────────────────┘ └─────────────────┘ └─────────────────┘ - │ +│ • 智能对话 │ │ • WebSocket │ │ (主数据库) │ +│ • Agent管理 │ │ • 蓝图架构 │ │ • SQLite备份 │ +│ • 数据分析 │ │ • Agent核心 │ │ • Redis缓存 │ +│ • 飞书同步 │ │ • LLM集成 │ │ • 知识库 │ +│ • 备份管理 │ │ • 备份系统 │ │ • 工单系统 │ +└─────────────────┘ └─────────────────┘ │ • 车辆数据 │ + │ └─────────────────┘ ▼ ┌─────────────────┐ │ 监控系统 │ @@ -59,6 +66,35 @@ └─────────────────┘ ``` +### 模块化架构 + +``` +src/ +├── web/ # Web层 +│ ├── app.py # Flask主应用(674行) +│ ├── blueprints/ # 模块化蓝图 +│ │ ├── alerts.py # 预警管理 +│ │ ├── workorders.py # 工单管理 +│ │ ├── conversations.py # 对话管理 +│ │ ├── knowledge.py # 知识库管理 +│ │ ├── monitoring.py # 监控管理 +│ │ └── system.py # 系统管理 +│ └── websocket_server.py # WebSocket服务 +├── agent/ # Agent层 +│ ├── agent_core.py # Agent核心 +│ ├── tool_manager.py # 工具管理 +│ └── planner.py # 任务规划 +├── core/ # 核心层 +│ ├── database.py # 数据库管理 +│ ├── models.py # 数据模型 +│ └── backup_manager.py # 备份管理 +├── integrations/ # 集成层 +│ ├── feishu_client.py # 飞书客户端 +│ └── workorder_sync.py # 工单同步 +└── knowledge_base/ # 知识库层 + └── knowledge_manager.py # 知识管理 +``` + ## 🎯 核心功能 ### 1. 智能对话 💬 @@ -69,50 +105,62 @@ ### 2. Agent管理 🤖 - **工具管理**: 10+内置工具,支持自定义工具注册 -- **执行监控**: 实时监控Agent任务执行状态 +- **执行监控**: 实时监控Agent任务执行状态和日志 - **性能统计**: 工具使用频率和成功率分析 - **智能规划**: 基于目标的任务分解和执行 +- **状态管理**: 完整的Agent状态跟踪(IDLE、PLANNING、EXECUTING等) ### 3. 工单系统 📋 -- **AI建议**: 基于知识库生成工单处理建议 -- **人工审核**: 支持人工输入和AI建议对比 -- **相似度评估**: 自动计算AI与人工建议的相似度 -- **知识库更新**: 高相似度建议自动入库 +- **AI建议生成**: 基于知识库和工单描述智能生成处理建议 +- **语义相似度评估**: 使用sentence-transformers进行深度语义相似度计算 +- **智能入库策略**: AI准确率<90%时优先使用人工描述,≥95%自动审批 +- **人工审核流程**: 支持人工输入和AI建议对比,灵活选择最佳方案 +- **处理过程记录**: 完整的工单处理历史记录,支持追溯和优化 +- **知识库自动更新**: 高相似度建议自动入库,持续优化知识库质量 +- **工单分发管理**: 支持模块化分发(TBOX、OTA等),权限管理 ### 4. 知识库管理 📚 - **多格式支持**: TXT、PDF、DOC、DOCX、MD文件 - **智能提取**: 自动从文档中提取Q&A对 - **向量化检索**: TF-IDF + 余弦相似度搜索 - **质量验证**: 支持知识条目验证和置信度设置 +- **批量管理**: 支持批量导入、导出和删除操作 +- **使用统计**: 跟踪知识条目使用频率,优化检索结果 ### 5. 数据分析 📊 -- **实时趋势**: 基于真实数据的性能趋势分析 -- **多维度统计**: 工单、预警、满意度等关键指标 +- **实时趋势**: 基于真实数据库的性能趋势分析 +- **多维度统计**: 工单、预警、满意度、AI准确率等关键指标 - **系统健康**: CPU、内存、响应时间监控 -- **可视化展示**: 丰富的图表和仪表板 +- **可视化展示**: Chart.js图表,直观的数据呈现 +- **Token监控**: LLM Token使用情况统计和优化建议 +- **AI性能监控**: AI建议准确率、响应时间等性能指标 ### 6. 系统设置 ⚙️ -- **API管理**: 支持多种LLM提供商配置 +- **API管理**: 支持多种LLM提供商配置(OpenAI、通义千问等) +- **统一配置**: 集中管理LLM、飞书、AI准确率等配置 - **模型参数**: 温度、最大令牌数等参数调节 - **端口配置**: Web服务和WebSocket端口管理 - **日志级别**: 灵活的日志级别控制 +- **数据库状态**: 实时监控MySQL和SQLite数据库状态 ### 7. 飞书集成 📱 - **多维表格同步**: 自动同步飞书多维表格数据 -- **字段映射**: 智能映射飞书字段到本地数据库 +- **灵活字段映射**: 智能映射飞书字段到本地数据库,支持自定义映射规则 - **实时更新**: 支持增量同步和全量同步 - **数据预览**: 同步前预览数据,确保准确性 -- **统一管理**: 飞书功能集成到主仪表板 +- **统一管理**: 飞书功能集成到主仪表板,无需独立页面 +- **工单扩展**: 支持12+飞书字段扩展,包括来源、模块、责任人等 ## 🛠️ 技术栈 ### 后端技术 - **Python 3.11+**: 核心开发语言 -- **Flask 2.3+**: Web框架和API服务 -- **SQLAlchemy 2.0+**: ORM数据库操作 -- **WebSocket**: 实时通信支持 +- **Flask 2.3+**: Web框架和API服务,采用蓝图架构实现模块化 +- **SQLAlchemy 2.0+**: ORM数据库操作,支持MySQL和SQLite +- **WebSocket**: 实时通信支持,毫秒级响应 - **psutil**: 系统资源监控 -- **Redis**: 缓存和会话管理 +- **Redis**: 缓存和会话管理(可选) +- **Pandas**: 数据处理和分析 ### 前端技术 - **Bootstrap 5**: UI框架 @@ -121,11 +169,13 @@ - **WebSocket**: 实时通信客户端 ### AI/ML技术 -- **大语言模型**: 支持OpenAI、通义千问等 -- **TF-IDF**: 文本向量化 -- **余弦相似度**: 语义相似度计算 -- **Agent框架**: 智能任务规划 -- **Transformers**: 预训练模型支持 +- **大语言模型**: 支持OpenAI、通义千问等多种LLM提供商 +- **TF-IDF**: 文本向量化和特征提取 +- **余弦相似度**: 传统语义相似度计算(备用方案) +- **Sentence-Transformers**: 深度语义相似度计算,准确率更高 +- **Agent框架**: 智能任务规划和执行 +- **Transformers**: 预训练模型支持(可选) +- **AI准确率优化**: 智能判断AI建议质量,优先使用高质量内容入库 ### 部署运维 - **Docker**: 容器化部署 @@ -207,7 +257,11 @@ pip install -r requirements.txt 3. **初始化数据库** ```bash +# 初始化数据库表结构和初始数据 python init_database.py + +# 或创建管理员用户 +python create_admin_user.py ``` 4. **启动服务** @@ -217,6 +271,7 @@ python start_dashboard.py 5. **访问系统** - 打开浏览器访问: `http://localhost:5000` +- WebSocket服务: `ws://localhost:8765` - 默认端口: 5000 (可在系统设置中修改) ### Windows快速启动 @@ -233,21 +288,26 @@ python start_dashboard.py - 在"智能对话"页面输入问题 - 系统自动检索知识库并生成回答 - 支持VIN码识别和车辆数据查询 + - 支持多轮对话,保持上下文关联 2. **工单管理** - - 创建工单并获取AI建议 + - 创建工单并获取AI建议(基于知识库和工单描述) - 人工输入解决方案 - - 系统自动评估相似度并更新知识库 + - 系统使用sentence-transformers自动评估语义相似度 + - AI准确率≥95%自动审批,<90%优先使用人工描述 + - 审批后自动入库,持续优化知识库质量 3. **知识库维护** - 手动添加Q&A对 - - 上传文档自动提取知识 + - 上传文档自动提取知识(支持多种格式) - 设置置信度和验证状态 + - 批量导入导出和删除操作 4. **系统监控** - - 查看实时性能趋势 - - 监控系统健康状态 + - 查看实时性能趋势(基于真实数据库) + - 监控系统健康状态(CPU、内存、响应时间) - 管理预警和通知 + - 监控Token使用和AI性能指标 ### 高级功能 @@ -321,18 +381,30 @@ python scripts/update_manager.py auto-update --source ./new_version --environmen DATABASE_URL=mysql+pymysql://tsp_user:tsp_password@mysql:3306/tsp_assistant?charset=utf8mb4 REDIS_URL=redis://redis:6379/0 -# LLM配置 -LLM_PROVIDER=openai +# LLM配置(通过config/llm_config.py统一管理) +LLM_PROVIDER=openai # 或 qwen, 其他支持的提供商 LLM_API_KEY=your_api_key -LLM_MODEL=gpt-3.5-turbo +LLM_MODEL=gpt-3.5-turbo # 或通义千问模型名称 # 服务配置 SERVER_PORT=5000 WEBSOCKET_PORT=8765 LOG_LEVEL=INFO TZ=Asia/Shanghai + +# AI准确率配置(可选) +AI_AUTO_APPROVE_THRESHOLD=0.95 +AI_USE_HUMAN_THRESHOLD=0.90 ``` +### 统一配置管理 + +系统采用统一配置管理器,配置优先级: +1. `config/unified_config.json` - 统一配置文件(推荐) +2. `config/llm_config.py` - LLM配置 +3. 环境变量 - Docker部署时使用 +4. 系统设置界面 - 运行时动态配置 + ### Docker服务配置 #### 主要服务 @@ -352,11 +424,15 @@ TZ=Asia/Shanghai - `grafana_data`: Grafana配置和数据持久化 ### 配置文件 -- `config/llm_config.py`: LLM客户端配置 +- `config/llm_config.py`: LLM客户端配置(统一配置管理器) +- `config/unified_config.json`: 统一配置文件(LLM、飞书、AI准确率等) - `config/integrations_config.json`: 飞书集成配置 +- `config/ai_accuracy_config.py`: AI准确率阈值配置 +- `config/field_mapping_config.json`: 飞书字段映射配置 - `nginx.conf`: Nginx反向代理配置 - `monitoring/prometheus.yml`: Prometheus监控配置 - `init.sql`: 数据库初始化脚本 +- `init_database.py`: 数据库初始化Python脚本(推荐使用) - `docker-compose.yml`: Docker服务编排配置 - `Dockerfile`: 应用镜像构建配置 @@ -388,6 +464,8 @@ TZ=Asia/Shanghai - 🔧 **日志编码修复**: 解决中文乱码问题 - 📊 **可视化增强**: 修复预警、性能、满意度图表显示 - 📚 **文档更新**: 完整的Docker部署和使用指南 +- 🧠 **AI准确率优化**: 集成sentence-transformers进行语义相似度计算 +- 🏗️ **模块化重构**: Flask蓝图架构,代码模块化,提升可维护性 ### v1.4.0 (2025-09-19) - ✅ 飞书集成功能:支持飞书多维表格数据同步