e3c68b5133c1d3927618794dc8d932bc1f8855f1
This commit includes general updates to application configuration, core data models, and various web application components (knowledge base, error handling, static assets, and websocket server). It also refreshes the Python 3.11 bytecode cache, likely due to underlying code changes and environment alignment.
TSP智能助手 (TSP Assistant)
基于大语言模型的智能客服系统,专为TSP(Telematics Service Provider)车辆服务提供商设计
🚀 项目特色
🧠 智能Agent架构
- 多工具集成: 知识库搜索、工单管理、数据分析、通知推送等10+工具
- 智能规划: 基于目标驱动的任务规划和执行
- 自主学习: 从用户反馈中持续优化响应质量
- 实时监控: 主动监控系统状态和异常情况
- 模块化重构: 后端服务(Agent, 车辆数据, 分析, 测试)蓝图化,提高可维护性和扩展性
- 前端模块化: 引入ES6模块化架构,优化UI组件、状态管理和API服务
💬 智能对话系统
- 实时通信: WebSocket支持,毫秒级响应,已修复连接稳定性问题
- 上下文理解: 多轮对话记忆和上下文关联
- VIN识别: 自动识别车辆VIN码并获取实时数据
- 知识库集成: 基于TF-IDF和余弦相似度的智能检索
- 自定义提示词: 支持飞书同步和实时对话不同场景的LLM提示词
📊 数据驱动分析
- 真实数据: 基于数据库的真实性能趋势分析
- 多维度统计: 工单、预警、满意度、性能指标
- 可视化展示: Chart.js图表,直观的数据呈现
- 系统监控: 实时CPU、内存、健康状态监控
- 专属蓝图: 独立的数据分析API模块,提供专业数据报告导出
🔧 企业级管理
- 多环境部署: 开发、测试、生产环境隔离
- 版本控制: 完整的版本管理和变更日志
- 热更新: 支持前端文件热更新,无需重启服务
- 自动备份: 更新前自动备份,支持一键回滚
- 飞书集成: 支持飞书多维表格数据同步和管理
- 统一错误处理: 后端API统一异常处理,提高系统健壮性
🏗️ 系统架构
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 前端界面 │ │ 后端服务 │ │ 数据存储 │
│ │ │ │ │ │
│ • 仪表板 │◄──►│ • Flask API │◄──►│ • MySQL DB │
│ • 智能对话 │ │ • WebSocket │ │ • Redis缓存 │
│ • Agent管理 │ │ • Agent核心 │ │ • 知识库 │
│ • 数据分析 │ │ • LLM集成 │ │ • 工单系统 │
│ • 备份管理 │ │ • 备份系统 │ │ • 车辆数据 │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ 监控系统 │
│ │
│ • Prometheus │
│ • Grafana │
│ • Nginx代理 │
└─────────────────┘
🎯 核心功能
1. 智能对话 💬
- 多轮对话: 支持上下文关联的连续对话
- VIN识别: 自动识别车辆VIN并获取实时数据
- 知识库检索: 智能匹配相关技术文档和解决方案
- 工单创建: 对话中直接创建和关联工单
- 错误修复: 解决了WebSocket连接TypeError问题
2. Agent管理 🤖
- 工具管理: 10+内置工具,支持自定义工具注册
- 执行监控: 实时监控Agent任务执行状态
- 性能统计: 工具使用频率和成功率分析
- 智能规划: 基于目标的任务分解和执行
- 专用蓝图: Agent相关API已独立为蓝图管理
3. 工单系统 📋
- AI建议: 基于知识库生成工单处理建议
- 人工审核: 支持人工输入和AI建议对比
- 相似度评估: 自动计算AI与人工建议的相似度
- 知识库更新: 高相似度建议自动入库
- 飞书AI提示词: 针对飞书同步场景提供更详细的AI建议提示词
4. 知识库管理 📚
- 多格式支持: TXT、PDF、DOC、DOCX、MD文件
- 智能提取: 自动从文档中提取Q&A对
- 向量化检索: TF-IDF + 余弦相似度搜索
- 质量验证: 支持知识条目验证和置信度设置
5. 数据分析 📊
- 实时趋势: 基于真实数据的性能趋势分析
- 多维度统计: 工单、预警、满意度等关键指标
- 系统健康: CPU、内存、响应时间监控
- 可视化展示: 丰富的图表和仪表板
- 专用蓝图: 数据分析API已独立为蓝图管理,并支持Excel报告导出
6. 系统设置 ⚙️
- API管理: 支持多种LLM提供商配置
- 模型参数: 温度、最大令牌数等参数调节
- 端口配置: Web服务和WebSocket端口管理
- 日志级别: 灵活的日志级别控制
- 数据库健壮性: 优化了数据库连接配置和错误处理
7. 飞书集成 📱
- 多维表格同步: 自动同步飞书多维表格数据
- 字段映射: 智能映射飞书字段到本地数据库
- 实时更新: 支持增量同步和全量同步
- 数据预览: 同步前预览数据,确保准确性
- 统一管理: 飞书功能集成到主仪表板
🛠️ 技术栈
后端技术
- Python 3.11+: 核心开发语言
- Flask 2.3+: Web框架和API服务
- SQLAlchemy 2.0+: ORM数据库操作
- WebSocket: 实时通信支持
- psutil: 系统资源监控
- Redis: 缓存和会话管理
前端技术
- Bootstrap 5: UI框架
- Chart.js: 数据可视化
- JavaScript ES6+: 前端逻辑
- WebSocket: 实时通信客户端
AI/ML技术
- 大语言模型: 支持OpenAI、通义千问等
- TF-IDF: 文本向量化
- 余弦相似度: 语义相似度计算
- Agent框架: 智能任务规划
- Transformers: 预训练模型支持
部署运维
- Docker: 容器化部署
- Docker Compose: 多服务编排
- Nginx: 反向代理和静态文件服务
- Prometheus: 监控数据收集
- Grafana: 监控仪表板
- MySQL 8.0: 主数据库
- Redis 7: 缓存服务
🚀 快速开始
环境要求
Docker部署(推荐)
- Docker 20.10+
- Docker Compose 2.0+
- 4GB+ 可用内存
- 10GB+ 可用磁盘空间
本地部署
- Python 3.11+
- Node.js 16+ (可选,用于前端构建)
- MySQL 8.0+ 或 SQLite
- Redis 7+ (可选)
- Git
🐳 Docker部署(推荐)
- 克隆项目
git clone http://jeason.online:3000/zhaojie/assist.git
cd assist
- 一键启动所有服务
# 使用部署脚本
chmod +x scripts/docker_deploy.sh
./scripts/docker_deploy.sh start
# 或直接使用docker-compose
docker-compose up -d
- 访问系统
- TSP助手: http://localhost:5000
- Nginx代理: http://localhost
- Prometheus监控: http://localhost:9090
- Grafana仪表板: http://localhost:3000 (admin/admin123456)
- 服务管理
# 查看服务状态
./scripts/docker_deploy.sh status
# 查看日志
./scripts/docker_deploy.sh logs tsp-assistant
# 停止服务
./scripts/docker_deploy.sh stop
# 重启服务
./scripts/docker_deploy.sh restart
💻 本地部署
- 克隆项目
git clone http://jeason.online:3000/zhaojie/assist.git
cd assist
- 安装依赖
pip install -r requirements.txt
- 初始化数据库
python init_database.py
- 启动服务
python start_dashboard.py
- 访问系统
- 打开浏览器访问:
http://localhost:5000 - 默认端口: 5000 (可在系统设置中修改)
Windows快速启动
# 双击运行
快速启动.bat
📖 使用指南
基础操作
-
智能对话
- 在"智能对话"页面输入问题
- 系统自动检索知识库并生成回答
- 支持VIN码识别和车辆数据查询
-
工单管理
- 创建工单并获取AI建议
- 人工输入解决方案
- 系统自动评估相似度并更新知识库
-
知识库维护
- 手动添加Q&A对
- 上传文档自动提取知识
- 设置置信度和验证状态
-
系统监控
- 查看实时性能趋势
- 监控系统健康状态
- 管理预警和通知
高级功能
-
Agent工具管理
- 查看工具使用统计
- 注册自定义工具
- 监控执行历史
-
数据分析
- 多维度数据统计
- 自定义时间范围
- 导出分析报告
-
系统配置
- API和模型参数配置
- 端口和日志级别设置
- 环境变量管理
🔄 部署与更新
多环境部署
# 开发环境
python scripts/update_manager.py auto-update --source . --environment development
# 测试环境
python scripts/update_manager.py auto-update --source . --environment staging
# 生产环境
python scripts/update_manager.py auto-update --source . --environment production
版本管理
# 更新版本号
python version.py increment --type minor
# 添加变更日志
python version.py changelog --message "新功能描述"
# 创建发布标签
python version.py tag --message "Release v1.3.0"
热更新
# 热更新(无需重启)
python scripts/update_manager.py hot-update --source ./new_version --environment production
# 自动更新(智能选择)
python scripts/update_manager.py auto-update --source ./new_version --environment production
📊 系统监控
健康检查
- API状态:
/api/health - 服务监控: 自动健康检查和故障恢复
- 性能指标: 响应时间、吞吐量、错误率
日志管理
- 应用日志:
logs/tsp_assistant.log - 访问日志: Nginx访问日志
- 错误追踪: 详细的错误堆栈信息
🔧 配置说明
Docker环境变量
# 数据库配置
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_API_KEY=your_api_key
LLM_MODEL=gpt-3.5-turbo
# 服务配置
SERVER_PORT=5000
WEBSOCKET_PORT=8765
LOG_LEVEL=INFO
TZ=Asia/Shanghai
Docker服务配置
主要服务
- tsp-assistant: 主应用服务 (端口: 5000, 8765)
- mysql: MySQL数据库 (端口: 3306)
- redis: Redis缓存 (端口: 6379)
- nginx: 反向代理 (端口: 80, 443)
监控服务
- prometheus: 监控数据收集 (端口: 9090)
- grafana: 监控仪表板 (端口: 3000)
数据卷
mysql_data: MySQL数据持久化redis_data: Redis数据持久化prometheus_data: Prometheus数据持久化grafana_data: Grafana配置和数据持久化
配置文件
config/llm_config.py: LLM客户端配置config/integrations_config.json: 飞书集成配置nginx.conf: Nginx反向代理配置monitoring/prometheus.yml: Prometheus监控配置init.sql: 数据库初始化脚本docker-compose.yml: Docker服务编排配置Dockerfile: 应用镜像构建配置
🤝 贡献指南
开发流程
- Fork项目到个人仓库
- 创建功能分支:
git checkout -b feature/new-feature - 提交更改:
git commit -m "Add new feature" - 推送分支:
git push origin feature/new-feature - 创建Pull Request
代码规范
- Python代码遵循PEP 8规范
- JavaScript使用ES6+语法
- 提交信息使用约定式提交格式
- 新功能需要添加相应的测试
📝 更新日志
v2.1.0 (2025-12-08) - 全面架构优化与问题修复
- ⚙️ 后端架构重构:
- 将Agent、车辆数据、数据分析、API测试相关路由拆分为独立蓝图。
- 精简
app.py主应用文件,提升模块化和可维护性。 - 引入统一错误处理装饰器和依赖注入机制。
- 🎨 前端架构优化:
- 实现了JavaScript模块化架构,划分
core,services,components目录。 - 引入了统一状态管理 (
store.js) 和API服务 (api.js)。 - 优化了通知管理和预警显示组件。
- 实现了JavaScript模块化架构,划分
- 🛠️ 关键问题修复:
- 修复了WebSocket连接中
TypeError: missing 1 required positional argument: 'path'错误。 - 改进了数据库连接的健壮性,优化MySQL连接池配置,并增强了异常处理和重连机制。
- 解决了
generator didn't stop错误,确保数据库会话的正确关闭。 - 增强了预警系统异常处理,并在规则检查失败时生成系统预警。
- 优化了API错误响应,包含更详细的错误信息。
- 修复了WebSocket连接中
- ✨ 新功能增强:
- 为飞书同步和实时对话场景引入了不同的LLM提示词,提升AI建议的针对性。
- 增加了对
Analysising工单状态的映射处理。
v2.0.0 (2025-09-22) - Docker环境全面升级
- 🐳 Docker环境重构: 升级到Python 3.11,优化镜像构建
- 🐳 多服务编排: MySQL 8.0 + Redis 7 + Nginx + Prometheus + Grafana
- 🐳 监控系统: 集成Prometheus监控和Grafana仪表板
- 🐳 安全增强: 非root用户运行,数据卷隔离
- 🐳 部署脚本: 一键部署脚本,支持启动/停止/重启/清理
- 🔧 知识库搜索修复: 简化搜索算法,提升检索准确率
- 🔧 批量删除优化: 修复外键约束和缓存问题
- 🔧 日志编码修复: 解决中文乱码问题
- 📊 可视化增强: 修复预警、性能、满意度图表显示
- 📚 文档更新: 完整的Docker部署和使用指南
v1.4.0 (2025-09-19)
- ✅ 飞书集成功能:支持飞书多维表格数据同步
- ✅ 页面功能合并:飞书同步页面合并到主仪表板
- ✅ 数据库架构优化:扩展工单表字段,支持飞书数据
- ✅ 代码重构优化:大文件拆分,降低运行风险
- ✅ 字段映射完善:智能映射飞书字段到本地数据库
- ✅ 数据库初始化改进:集成字段迁移到初始化流程
v1.3.0 (2025-09-17)
- ✅ 数据库架构优化:MySQL主数据库+SQLite备份系统
- ✅ 工单详情API修复:解决数据库会话管理问题
- ✅ 备份管理系统:自动备份MySQL数据到SQLite
- ✅ 数据库状态监控:实时监控MySQL和SQLite状态
- ✅ 备份管理API:支持数据备份和恢复操作
v1.2.0 (2025-09-16)
- ✅ 系统设置扩展:API管理、模型参数配置、端口管理
- ✅ 真实数据分析:修复性能趋势图表显示问题
- ✅ 工单AI建议功能:智能生成处理建议
- ✅ 知识库搜索优化:提升检索准确率
- ✅ Agent管理改进:工具使用统计和自定义工具
v1.1.0 (2025-09-16)
- ✅ 工单AI建议功能
- ✅ 知识库搜索优化
- ✅ Agent管理改进
v1.0.0 (2024-01-01)
- ✅ 初始版本发布
📄 许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情
🔧 故障排除
Docker部署问题
常见问题
- 端口冲突
# 检查端口占用
netstat -tulpn | grep :5000
# 修改docker-compose.yml中的端口映射
- 内存不足
# 检查Docker资源使用
docker stats
# 增加Docker内存限制或关闭其他服务
- 数据库连接失败
# 检查MySQL服务状态
docker-compose logs mysql
# 等待数据库完全启动(约30秒)
- 权限问题
# 给脚本添加执行权限
chmod +x scripts/docker_deploy.sh
# 检查文件权限
ls -la scripts/
日志查看
# 查看所有服务日志
docker-compose logs -f
# 查看特定服务日志
docker-compose logs -f tsp-assistant
docker-compose logs -f mysql
docker-compose logs -f redis
服务重启
# 重启特定服务
docker-compose restart tsp-assistant
# 重启所有服务
docker-compose down && docker-compose up -d
性能优化
Docker资源限制
# 在docker-compose.yml中添加资源限制
services:
tsp-assistant:
deploy:
resources:
limits:
memory: 2G
cpus: '1.0'
数据库优化
-- MySQL性能优化
SET GLOBAL innodb_buffer_pool_size = 1G;
SET GLOBAL max_connections = 200;
📞 支持与联系
- 项目地址: http://jeason.online:3000/zhaojie/assist
- 问题反馈: 请在Issues中提交问题
- 功能建议: 欢迎提交Feature Request
- Docker问题: 请提供docker-compose logs输出
🙏 致谢
感谢所有为项目做出贡献的开发者和用户!
TSP智能助手 - 让车辆服务更智能,让客户体验更美好! 🚗✨
Description
Languages
Python
57%
JavaScript
20.7%
HTML
17.8%
CSS
4.5%