From b2d70431f49a8eba9bcae00f9d19a3c8451b5f33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E6=9D=B0=20Jie=20Zhao=20=EF=BC=88=E9=9B=84?= =?UTF-8?q?=E7=8B=AE=E6=B1=BD=E8=BD=A6=E7=A7=91=E6=8A=80=EF=BC=89?= <00061074@chery.local> Date: Tue, 16 Sep 2025 16:36:12 +0100 Subject: [PATCH] first commit --- README.md | 295 ------------------------------------------------------ 1 file changed, 295 deletions(-) diff --git a/README.md b/README.md index ddfcba4..e69de29 100644 --- a/README.md +++ b/README.md @@ -1,295 +0,0 @@ -# TSP助手 - 基于大模型的AI客服机器人 - -## 项目简介 - -TSP助手是一个基于阿里云千问大模型的智能客服机器人系统,具备以下核心功能: - -- **智能对话处理**:基于大模型进行自然语言理解和回复生成 -- **知识库学习**:从历史工单中自动学习问题处理经验 -- **实时数据分析**:统计工单处理情况,生成分析报告 -- **智能预警系统**:监控关键指标,及时发现问题 -- **工单管理**:完整的工单生命周期管理 - -## 系统架构 - -``` -TSP_assistant/ -├── src/ -│ ├── config/ # 配置文件 -│ ├── core/ # 核心模块 -│ ├── knowledge_base/ # 知识库管理 -│ ├── dialogue/ # 对话管理 -│ ├── analytics/ # 分析统计 -│ └── utils/ # 工具函数 -├── data/ # 数据存储 -├── logs/ # 日志文件 -└── requirements.txt # 依赖包 -``` - -## 核心功能 - -### 1. 智能对话处理 -- 基于阿里云千问大模型进行自然语言理解 -- 支持上下文记忆和对话历史管理 -- 自动从知识库检索相关信息 -- 生成准确、有用的回复 - -### 2. 知识库学习 -- 从已解决的工单中自动提取问题和答案 -- 使用TF-IDF向量化进行相似度匹配 -- 支持知识库条目的增删改查 -- 自动更新和优化知识库内容 - -### 3. 工单管理 -- 创建、更新、查询工单 -- 支持工单分类和优先级设置 -- 记录完整的对话历史 -- 工单状态跟踪和满意度评分 - -### 4. 数据分析与统计 -- 每日自动生成分析报告 -- 统计工单处理效率、满意度等指标 -- 支持多维度数据分析 -- 生成可视化趋势图表 - -### 5. 智能预警系统 -- 监控关键性能指标 -- 自动检测异常情况 -- 支持多级别预警(低、中、高、严重) -- 预警历史记录和解决跟踪 - -## 安装和配置 - -### 1. 环境要求 -- Python 3.8+ -- MySQL数据库(推荐)或SQLite数据库 -- 阿里云千问API密钥 - -### 2. 安装步骤 - -```bash -# 克隆项目 -git clone -cd TSP_assistant - -# 安装依赖 -pip install -r requirements.txt - -# 创建必要目录 -mkdir -p data logs - -# 设置MySQL数据库(如果使用MySQL) -python create_mysql_db.py - -# 初始化数据库 -python init_database.py - -# 配置API密钥 -# 在 src/config/config.py 中设置您的阿里云API密钥 -``` - -### 3. MySQL数据库设置 - -如果使用MySQL数据库,需要先运行: -```bash -python create_mysql_db.py -``` - -此脚本会: -- 创建名为 `tsp_assistant` 的数据库 -- 设置正确的字符集(utf8mb4) -- 创建专用用户(可选) -- 测试数据库连接 - -### 4. 数据库初始化 - -数据库初始化脚本会自动: -- 创建所有必要的数据库表 -- 插入示例知识库数据 -- 检查数据库连接状态 -- 显示各表的记录数统计 - -如果数据库已存在,脚本会跳过初始数据插入,避免重复数据。 - -### 5. 数据库选择 - -系统支持两种数据库: - -**MySQL(推荐)**: -- 性能更好,支持并发 -- 适合生产环境 -- 需要安装MySQL服务器 - -**SQLite**: -- 轻量级,无需额外安装 -- 适合开发和测试 -- 单文件存储 - -### 6. 配置说明 - -在 `src/config/config.py` 中配置以下参数: - -```python -# 阿里云千问API配置 -ALIBABA_API_KEY = "your-api-key" -ALIBABA_BASE_URL = "https://dashscope.aliyuncs.com/compatible-mode/v1" -ALIBABA_MODEL_NAME = "qwen-plus-latest" - -# 数据库配置 -# MySQL配置(推荐) -DATABASE_URL = "mysql+pymysql://root:123456@localhost/tsp_assistant?charset=utf8mb4" -# SQLite配置(备用) -# DATABASE_URL = "sqlite:///tsp_assistant.db" - -# 其他系统参数 -MAX_HISTORY_LENGTH = 10 -RESPONSE_TIMEOUT = 30 -``` - -## 使用方法 - -### 1. 启动系统 - -```python -from src.main import TSPAssistant - -# 创建助手实例 -assistant = TSPAssistant() - -# 测试系统 -test_results = assistant.test_system() -print("系统测试结果:", test_results) -``` - -### 2. 处理用户消息 - -```python -# 处理用户消息 -response = assistant.process_message( - message="我的账户无法登录", - user_id="user123", - work_order_id=1 -) -print("回复:", response["response"]) -``` - -### 3. 创建工单 - -```python -# 创建工单 -work_order = assistant.create_work_order( - title="账户登录问题", - description="用户反映无法登录账户", - category="账户问题", - priority="high" -) -``` - -### 4. 搜索知识库 - -```python -# 搜索知识库 -results = assistant.search_knowledge("账户登录", top_k=3) -print("搜索结果:", results) -``` - -### 5. 生成分析报告 - -```python -# 生成分析报告 -analytics = assistant.generate_analytics("last_7_days") -print("分析报告:", analytics) -``` - -## API接口 - -### 对话接口 -- `process_message(message, user_id, work_order_id)` - 处理用户消息 -- `create_work_order(title, description, category, priority)` - 创建工单 -- `update_work_order(work_order_id, **kwargs)` - 更新工单 - -### 知识库接口 -- `search_knowledge(query, top_k)` - 搜索知识库 -- `add_knowledge(question, answer, category, confidence_score)` - 添加知识 - -### 分析接口 -- `generate_analytics(date_range)` - 生成分析报告 -- `get_alerts()` - 获取预警信息 -- `get_system_status()` - 获取系统状态 - -## 数据模型 - -### 工单 (WorkOrder) -- 工单基本信息(ID、标题、描述、类别、优先级) -- 状态跟踪(创建时间、更新时间、解决时间) -- 满意度评分 - -### 对话记录 (Conversation) -- 用户消息和助手回复 -- 时间戳和置信度评分 -- 使用的知识库条目 - -### 知识库条目 (KnowledgeEntry) -- 问题和答案对 -- 类别和置信度评分 -- 使用次数统计 - -### 分析数据 (Analytics) -- 每日统计指标 -- 趋势分析数据 -- 类别分布信息 - -## 监控和预警 - -系统自动监控以下指标: - -- **客户满意度**:低于0.6时触发预警 -- **平均解决时间**:超过24小时时触发预警 -- **知识库命中率**:低于0.5时触发预警 -- **错误率**:超过0.1时触发预警 - -## 性能优化 - -- 使用向量化技术提高知识库检索效率 -- 支持并发处理多个用户请求 -- 数据库连接池管理 -- 内存使用监控和优化 - -## 扩展功能 - -- 支持多种大模型API(可扩展) -- 支持多种数据库后端(PostgreSQL、MySQL等) -- 支持Web界面和API接口 -- 支持多语言处理 -- 支持语音识别和合成 - -## 故障排除 - -### 常见问题 - -1. **API连接失败** - - 检查API密钥是否正确 - - 检查网络连接 - - 检查API配额是否充足 - -2. **数据库错误** - - 检查数据库文件权限 - - 检查SQLite版本兼容性 - - 检查磁盘空间 - -3. **知识库检索失败** - - 检查向量化器是否正确初始化 - - 检查知识库数据完整性 - - 检查内存使用情况 - -### 日志查看 - -系统日志保存在 `logs/tsp_assistant.log` 文件中,包含详细的运行信息和错误记录。 - -## 贡献指南 - -欢迎提交Issue和Pull Request来改进项目。 - -## 许可证 - -本项目采用MIT许可证。