Files
tsp-assistant/TSP智能助手使用指南.md
2025-09-06 21:06:18 +08:00

1174 lines
25 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# TSP智能助手 - 完整使用指南
## 📋 目录
1. [系统概述](#系统概述)
2. [快速开始](#快速开始)
3. [核心功能](#核心功能)
4. [Web界面使用](#web界面使用)
5. [API接口](#api接口)
6. [数据库管理](#数据库管理)
7. [Agent功能](#agent功能)
8. [车辆数据管理](#车辆数据管理)
9. [知识库管理](#知识库管理)
10. [对话系统](#对话系统)
11. [工单管理](#工单管理)
12. [分析报告](#分析报告)
13. [预警系统](#预警系统)
14. [故障排除](#故障排除)
15. [开发指南](#开发指南)
---
## 🎯 系统概述
TSP智能助手是一个基于大语言模型的智能客服系统集成了知识库管理、车辆数据监控、工单处理、分析报告等功能。
### 主要特性
- 🤖 **智能对话**: 基于阿里云千问大模型的自然语言对话
- 📚 **知识库管理**: 支持手动添加和文件自动生成知识库
- 🚗 **车辆数据**: 实时车辆数据监控和管理
- 🎯 **Agent模式**: 自主决策和任务执行能力
- 📊 **数据分析**: 智能分析和报告生成
- 🚨 **预警系统**: 实时监控和异常预警
- 🎫 **工单管理**: 完整的客服工单流程
- 🌐 **Web界面**: 现代化的用户界面
### 技术架构
- **后端**: Python + Flask
- **数据库**: MySQL/SQLite
- **前端**: HTML5 + Bootstrap 5 + Chart.js
- **AI模型**: 阿里云千问 (Qwen)
- **实时通信**: WebSocket
---
## 🚀 快速开始
### 1. 环境要求
- Python 3.8+
- MySQL 5.7+ (可选默认使用SQLite)
- 阿里云千问API密钥
### 2. 安装依赖
```bash
pip install -r requirements.txt
```
### 3. 配置系统
编辑 `src/config/config.py`:
```python
class Config:
# 阿里云千问API配置
ALIBABA_API_KEY = "your-api-key"
ALIBABA_BASE_URL = "https://dashscope.aliyuncs.com/compatible-mode/v1"
ALIBABA_MODEL_NAME = "qwen-plus-latest"
# 数据库配置
DATABASE_URL = "mysql+pymysql://user:password@localhost/tsp_assistant?charset=utf8mb4"
# 或使用SQLite: DATABASE_URL = "sqlite:///tsp_assistant.db"
```
### 4. 初始化数据库
```bash
python init_database.py
```
### 5. 启动系统
```bash
python start_dashboard.py
```
### 6. 访问界面
打开浏览器访问: http://localhost:5000
---
## 🎛️ 核心功能
### 1. 智能对话系统
- **实时对话**: 基于WebSocket的实时聊天
- **知识库集成**: 自动搜索相关知识库内容
- **车辆数据集成**: 结合实时车辆数据提供准确回答
- **上下文记忆**: 维护对话历史和上下文
### 2. Agent模式
- **自主决策**: AI Agent可以自主分析和决策
- **任务规划**: 自动分解复杂任务
- **工具调用**: 集成多种工具和API
- **主动监控**: 实时监控系统状态
### 3. 知识库管理
- **手动添加**: 通过界面手动添加知识条目
- **文件导入**: 支持TXT、PDF、DOC、DOCX、MD文件
- **自动提取**: 使用LLM自动从文件中提取知识
- **验证机制**: 人工验证确保知识质量
- **分页显示**: 支持大量知识库的分页浏览
### 4. 车辆数据管理
- **实时数据**: 存储和查询车辆实时数据
- **数据汇总**: 生成车辆状态摘要
- **历史记录**: 保存车辆数据历史
- **多车辆支持**: 支持多辆车辆的数据管理
---
## 🌐 Web界面使用
### 主界面布局
Web界面采用现代化的单页应用设计包含以下主要区域
1. **侧边栏导航**: 功能模块切换
2. **主内容区**: 当前功能的具体操作界面
3. **状态栏**: 系统状态和通知
### 功能模块
#### 1. 仪表板 (Dashboard)
- 系统概览和关键指标
- 实时数据图表
- 快速操作入口
#### 2. 智能对话 (Chat)
- 实时聊天界面
- 支持文本和语音输入
- 对话历史记录
#### 3. Agent模式 (Agent)
- Agent状态监控
- 任务执行情况
- 主动监控设置
#### 4. 预警管理 (Alerts)
- 预警规则配置
- 预警历史记录
- 预警处理状态
#### 5. 知识库 (Knowledge)
- 知识条目管理
- 文件上传功能
- 知识验证操作
#### 6. 工单管理 (Work Orders)
- 工单创建和编辑
- 工单状态跟踪
- 工单统计分析
#### 7. 数据分析 (Analytics)
- 数据统计图表
- 趋势分析报告
- 性能指标监控
#### 8. 系统设置 (Settings)
- 系统参数配置
- 用户权限管理
- 系统维护操作
### 页面状态保持
系统会自动保存当前页面状态,刷新后会自动恢复到之前的页面。
---
## 🔌 API接口
### 基础URL
```
http://localhost:5000/api
```
### 1. 对话接口
#### 发送消息
```http
POST /api/chat/message
Content-Type: application/json
{
"message": "",
"work_order_id": 123,
"user_id": "user123",
"vehicle_id": "V001"
}
```
#### WebSocket连接
```javascript
const ws = new WebSocket('ws://localhost:5000/ws');
ws.onmessage = function(event) {
const data = JSON.parse(event.data);
console.log('收到消息:', data);
};
```
### 2. 知识库接口
#### 获取知识库列表
```http
GET /api/knowledge?page=1&per_page=10
```
#### 添加知识条目
```http
POST /api/knowledge/add
Content-Type: application/json
{
"question": "",
"answer": "",
"category": "",
"confidence_score": 0.8
}
```
#### 上传文件生成知识库
```http
POST /api/knowledge/upload
Content-Type: multipart/form-data
file: []
process_method: auto
category:
confidence_score: 0.8
```
#### 验证知识条目
```http
POST /api/knowledge/verify/{knowledge_id}
```
#### 取消验证
```http
POST /api/knowledge/unverify/{knowledge_id}
```
#### 删除知识条目
```http
DELETE /api/knowledge/{knowledge_id}
```
### 3. 车辆数据接口
#### 获取车辆数据
```http
GET /api/vehicle/data?vehicle_id=V001&limit=10
```
#### 获取最新车辆数据
```http
GET /api/vehicle/data/{vehicle_id}/latest
```
#### 获取车辆摘要
```http
GET /api/vehicle/data/{vehicle_id}/summary
```
#### 添加车辆数据
```http
POST /api/vehicle/data
Content-Type: application/json
{
"vehicle_id": "V001",
"vehicle_vin": "1HGBH41JXMN109186",
"data_type": "location",
"data_value": "{\"lat\": 39.9042, \"lng\": 116.4074}"
}
```
#### 初始化示例数据
```http
POST /api/vehicle/init-sample-data
```
### 4. Agent接口
#### 获取Agent状态
```http
GET /api/agent/status
```
#### 切换Agent模式
```http
POST /api/agent/toggle
Content-Type: application/json
{
"enabled": true
}
```
#### 启动主动监控
```http
POST /api/agent/monitoring/start
```
#### 停止主动监控
```http
POST /api/agent/monitoring/stop
```
### 5. 工单接口
#### 获取工单列表
```http
GET /api/work-orders?page=1&per_page=10
```
#### 创建工单
```http
POST /api/work-orders
Content-Type: application/json
{
"title": "",
"description": "",
"priority": "high",
"category": "",
"customer_id": "customer123"
}
```
#### 更新工单状态
```http
PUT /api/work-orders/{work_order_id}
Content-Type: application/json
{
"status": "resolved",
"resolution": ""
}
```
### 6. 分析接口
#### 获取分析报告
```http
GET /api/analytics/report?date=2025-09-06
```
#### 获取KPI数据
```http
GET /api/analytics/kpi
```
### 7. 预警接口
#### 获取预警列表
```http
GET /api/alerts?status=active
```
#### 处理预警
```http
POST /api/alerts/{alert_id}/resolve
Content-Type: application/json
{
"resolution": ""
}
```
---
## 🗄️ 数据库管理
### 数据库初始化
系统提供了完整的数据库初始化脚本:
```bash
python init_database.py
```
该脚本会自动执行以下操作:
1. 创建所有必要的数据库表
2. 添加新字段(如知识库验证字段)
3. 插入初始示例数据
4. 添加示例车辆数据
5. 验证所有知识库条目
### 数据库表结构
#### 1. 知识库表 (knowledge_entries)
```sql
CREATE TABLE knowledge_entries (
id INTEGER PRIMARY KEY,
question TEXT NOT NULL,
answer TEXT NOT NULL,
category VARCHAR(100),
confidence_score FLOAT DEFAULT 0.5,
usage_count INTEGER DEFAULT 0,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP,
is_active BOOLEAN DEFAULT TRUE,
is_verified BOOLEAN DEFAULT FALSE,
verified_by VARCHAR(100),
verified_at DATETIME,
vector_embedding TEXT
);
```
#### 2. 车辆数据表 (vehicle_data)
```sql
CREATE TABLE vehicle_data (
id INTEGER PRIMARY KEY,
vehicle_id VARCHAR(50) NOT NULL,
vehicle_vin VARCHAR(17),
data_type VARCHAR(50) NOT NULL,
data_value TEXT NOT NULL,
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,
is_active BOOLEAN DEFAULT TRUE
);
```
#### 3. 工单表 (work_orders)
```sql
CREATE TABLE work_orders (
id INTEGER PRIMARY KEY,
title VARCHAR(200) NOT NULL,
description TEXT,
status VARCHAR(50) DEFAULT 'open',
priority VARCHAR(20) DEFAULT 'medium',
category VARCHAR(100),
customer_id VARCHAR(100),
assigned_to VARCHAR(100),
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP,
resolved_at DATETIME,
resolution TEXT
);
```
#### 4. 对话表 (conversations)
```sql
CREATE TABLE conversations (
id INTEGER PRIMARY KEY,
user_id VARCHAR(100),
work_order_id INTEGER,
vehicle_id VARCHAR(50),
message TEXT NOT NULL,
response TEXT,
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,
session_id VARCHAR(100)
);
```
#### 5. 分析表 (analytics)
```sql
CREATE TABLE analytics (
id INTEGER PRIMARY KEY,
date DATE NOT NULL,
metric_name VARCHAR(100) NOT NULL,
metric_value FLOAT NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
```
#### 6. 预警表 (alerts)
```sql
CREATE TABLE alerts (
id INTEGER PRIMARY KEY,
alert_type VARCHAR(100) NOT NULL,
title VARCHAR(200) NOT NULL,
description TEXT,
severity VARCHAR(20) DEFAULT 'medium',
status VARCHAR(20) DEFAULT 'active',
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
resolved_at DATETIME,
resolution TEXT
);
```
### 数据库维护
#### 重置数据库
```bash
python reset_database.py
```
#### 创建MySQL数据库
```bash
python create_mysql_db.py
```
---
## 🤖 Agent功能
### Agent架构
TSP智能助手集成了完整的Agent架构包括
1. **Agent核心** (Agent Core): 中央协调器
2. **规划器** (Planner): 任务规划和分解
3. **执行器** (Executor): 任务执行管理
4. **工具管理器** (Tool Manager): 工具注册和调用
5. **推理引擎** (Reasoning Engine): 逻辑推理和决策
6. **目标管理器** (Goal Manager): 目标设定和跟踪
### Agent工具
系统内置了多种Agent工具
1. **search_knowledge**: 搜索知识库
2. **create_work_order**: 创建工单
3. **update_work_order**: 更新工单
4. **generate_response**: 生成回复
5. **analyze_data**: 数据分析
6. **send_notification**: 发送通知
7. **schedule_task**: 任务调度
8. **web_search**: 网络搜索
### Agent模式使用
#### 启用Agent模式
```javascript
// 通过Web界面
fetch('/api/agent/toggle', {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({enabled: true})
});
```
#### 启动主动监控
```javascript
fetch('/api/agent/monitoring/start', {method: 'POST'});
```
#### 获取Agent状态
```javascript
fetch('/api/agent/status')
.then(response => response.json())
.then(data => console.log('Agent状态:', data));
```
---
## 🚗 车辆数据管理
### 车辆数据类型
系统支持多种车辆数据类型:
1. **位置数据** (location): GPS坐标和地址信息
2. **状态数据** (status): 车辆运行状态
3. **电池数据** (battery): 电池电量和健康状态
4. **引擎数据** (engine): 引擎运行参数
5. **故障数据** (fault): 故障码和诊断信息
### 数据格式示例
#### 位置数据
```json
{
"lat": 39.9042,
"lng": 116.4074,
"address": "北京市朝阳区",
"speed": 60,
"direction": 180
}
```
#### 状态数据
```json
{
"engine_status": "running",
"door_status": "locked",
"window_status": "closed",
"light_status": "on"
}
```
#### 电池数据
```json
{
"battery_level": 85,
"charging_status": "not_charging",
"voltage": 12.6,
"temperature": 25
}
```
### 车辆数据操作
#### 添加车辆数据
```python
from src.vehicle.vehicle_data_manager import VehicleDataManager
vehicle_manager = VehicleDataManager()
# 添加位置数据
vehicle_manager.add_vehicle_data(
vehicle_id="V001",
vehicle_vin="1HGBH41JXMN109186",
data_type="location",
data_value={"lat": 39.9042, "lng": 116.4074}
)
# 添加状态数据
vehicle_manager.add_vehicle_data(
vehicle_id="V001",
data_type="status",
data_value={"engine_status": "running", "door_status": "locked"}
)
```
#### 查询车辆数据
```python
# 获取最新数据
latest_data = vehicle_manager.get_latest_vehicle_data("V001")
# 获取历史数据
history_data = vehicle_manager.get_vehicle_data("V001", limit=10)
# 获取数据摘要
summary = vehicle_manager.get_vehicle_summary("V001")
```
### 车辆数据集成
车辆数据会自动集成到对话系统中:
1. **实时查询**: 对话时自动查询相关车辆数据
2. **上下文整合**: 将车辆数据与知识库内容结合
3. **智能分析**: 基于车辆数据提供更准确的建议
---
## 📚 知识库管理
### 知识库结构
每个知识库条目包含以下字段:
- **问题** (question): 用户可能提出的问题
- **答案** (answer): 对应的详细答案
- **分类** (category): 问题所属类别
- **置信度** (confidence_score): 答案的可信度 (0-1)
- **使用次数** (usage_count): 该条目被使用的次数
- **验证状态** (is_verified): 是否经过人工验证
- **验证人** (verified_by): 验证人员
- **验证时间** (verified_at): 验证时间
### 知识库分类
系统支持以下知识库分类:
1. **账户问题**: 用户账户相关的问题
2. **支付问题**: 支付和财务相关的问题
3. **技术问题**: 技术故障和解决方案
4. **服务问题**: 客户服务相关问题
5. **远程控制**: 车辆远程控制功能
6. **APP功能**: 移动应用功能使用
7. **车辆绑定**: 车辆绑定和管理
8. **其他**: 其他类型的问题
### 手动添加知识
#### 通过Web界面
1. 进入"知识库"标签页
2. 点击"添加知识"按钮
3. 填写问题、答案、分类和置信度
4. 点击"保存"按钮
#### 通过API
```http
POST /api/knowledge/add
Content-Type: application/json
{
"question": "",
"answer": "1. '' 2. 3. 4. ",
"category": "",
"confidence_score": 0.9
}
```
### 文件导入知识库
#### 支持的文件格式
- **TXT**: 纯文本文件
- **PDF**: PDF文档
- **DOC/DOCX**: Word文档
- **MD**: Markdown文件
#### 导入流程
1. 进入"知识库"标签页
2. 点击"上传文件"按钮
3. 选择要上传的文件
4. 选择处理方式(自动/手动)
5. 设置分类和置信度
6. 点击"上传"按钮
#### 自动知识提取
系统使用LLM自动从文件中提取问答对
1. **内容分析**: 分析文件内容结构
2. **问题识别**: 识别潜在的问题点
3. **答案生成**: 生成对应的详细答案
4. **分类建议**: 自动建议问题分类
5. **置信度评估**: 评估答案的可信度
### 知识库验证
#### 验证机制
- **自动验证**: 系统初始化的知识库条目自动标记为已验证
- **人工验证**: 新添加的知识库条目需要人工验证
- **验证状态**: 只有已验证的知识库条目才会在对话中使用
#### 验证操作
1. 进入"知识库"标签页
2. 找到未验证的知识条目
3. 点击"验证"按钮确认知识正确性
4. 或点击"取消验证"按钮标记为未验证
### 知识库搜索
系统使用TF-IDF向量化技术进行知识库搜索
1. **向量化**: 将问题和答案转换为向量
2. **相似度计算**: 计算用户问题与知识库的相似度
3. **排序返回**: 按相似度排序返回最相关的知识
---
## 💬 对话系统
### 对话流程
1. **接收用户消息**: 通过WebSocket或HTTP接收用户输入
2. **上下文分析**: 分析对话历史和上下文
3. **知识库搜索**: 搜索相关的知识库内容
4. **车辆数据查询**: 如果涉及车辆,查询相关车辆数据
5. **LLM生成回复**: 使用大语言模型生成回复
6. **回复优化**: 结合知识库和车辆数据优化回复
7. **返回结果**: 将最终回复返回给用户
### 对话特性
#### 1. 上下文记忆
- 维护对话历史
- 理解上下文关系
- 支持多轮对话
#### 2. 知识库集成
- 自动搜索相关知识
- 只使用已验证的知识
- 结合多个知识条目
#### 3. 车辆数据集成
- 实时查询车辆状态
- 结合车辆数据提供建议
- 支持车辆特定问题
#### 4. 工单关联
- 自动创建工单
- 关联对话和工单
- 跟踪问题解决进度
### 对话API使用
#### WebSocket连接
```javascript
const ws = new WebSocket('ws://localhost:5000/ws');
ws.onopen = function() {
console.log('WebSocket连接已建立');
};
ws.onmessage = function(event) {
const data = JSON.parse(event.data);
console.log('收到消息:', data.message);
};
// 发送消息
ws.send(JSON.stringify({
message: '我的车辆无法启动',
vehicle_id: 'V001'
}));
```
#### HTTP接口
```javascript
fetch('/api/chat/message', {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
message: '我的车辆无法启动',
vehicle_id: 'V001',
user_id: 'user123'
})
})
.then(response => response.json())
.then(data => console.log('回复:', data.response));
```
---
## 🎫 工单管理
### 工单状态
工单有以下状态:
1. **open**: 新建工单
2. **in_progress**: 处理中
3. **pending**: 等待用户反馈
4. **resolved**: 已解决
5. **closed**: 已关闭
### 工单优先级
1. **low**: 低优先级
2. **medium**: 中等优先级
3. **high**: 高优先级
4. **urgent**: 紧急
### 工单分类
1. **技术问题**: 技术故障和bug
2. **功能请求**: 新功能需求
3. **账户问题**: 用户账户相关问题
4. **支付问题**: 支付和财务问题
5. **其他**: 其他类型问题
### 工单操作
#### 创建工单
```javascript
fetch('/api/work-orders', {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
title: '车辆无法远程启动',
description: '用户反馈车辆无法通过APP远程启动',
priority: 'high',
category: '技术问题',
customer_id: 'customer123'
})
});
```
#### 更新工单状态
```javascript
fetch('/api/work-orders/123', {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
status: 'resolved',
resolution: '已修复远程启动功能'
})
});
```
#### 获取工单列表
```javascript
fetch('/api/work-orders?page=1&per_page=10')
.then(response => response.json())
.then(data => console.log('工单列表:', data));
```
---
## 📊 分析报告
### 分析指标
系统提供以下分析指标:
1. **对话统计**: 对话数量、响应时间、满意度
2. **知识库使用**: 知识库命中率、热门问题
3. **工单分析**: 工单数量、解决时间、分类统计
4. **车辆数据**: 车辆状态分布、故障统计
5. **用户行为**: 用户活跃度、功能使用情况
### 报告生成
#### 获取分析报告
```javascript
fetch('/api/analytics/report?date=2025-09-06')
.then(response => response.json())
.then(data => console.log('分析报告:', data));
```
#### 获取KPI数据
```javascript
fetch('/api/analytics/kpi')
.then(response => response.json())
.then(data => console.log('KPI数据:', data));
```
### 数据可视化
Web界面提供多种图表
1. **折线图**: 趋势分析
2. **柱状图**: 分类统计
3. **饼图**: 比例分析
4. **仪表盘**: 实时指标
---
## 🚨 预警系统
### 预警类型
1. **系统预警**: 系统性能异常
2. **业务预警**: 业务指标异常
3. **安全预警**: 安全相关事件
4. **数据预警**: 数据异常
### 预警级别
1. **low**: 低级别预警
2. **medium**: 中等级别预警
3. **high**: 高级别预警
4. **critical**: 严重预警
### 预警处理
#### 获取预警列表
```javascript
fetch('/api/alerts?status=active')
.then(response => response.json())
.then(data => console.log('活跃预警:', data));
```
#### 处理预警
```javascript
fetch('/api/alerts/123/resolve', {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
resolution: '已修复相关问题'
})
});
```
---
## 🔧 故障排除
### 常见问题
#### 1. 数据库连接失败
**症状**: 启动时提示数据库连接失败
**解决方案**:
- 检查数据库配置是否正确
- 确认数据库服务是否运行
- 检查网络连接和防火墙设置
#### 2. API密钥无效
**症状**: LLM调用失败
**解决方案**:
- 检查阿里云千问API密钥是否正确
- 确认API密钥是否有效且有足够额度
- 检查网络连接
#### 3. 文件上传失败
**症状**: 文件上传时提示"文件被占用"
**解决方案**:
- 重启系统
- 检查临时文件目录权限
- 清理临时文件
#### 4. 知识库显示异常
**症状**: 知识库内容无法正常显示
**解决方案**:
- 运行数据库初始化脚本
- 检查数据库表结构
- 重新加载知识库
### 日志查看
#### 查看系统日志
```bash
# Windows
Get-Content logs/tsp_assistant.log -Tail 50
# Linux/Mac
tail -50 logs/tsp_assistant.log
```
#### 日志级别
- **DEBUG**: 详细调试信息
- **INFO**: 一般信息
- **WARNING**: 警告信息
- **ERROR**: 错误信息
- **CRITICAL**: 严重错误
### 性能优化
#### 1. 数据库优化
- 定期清理历史数据
- 添加必要的索引
- 优化查询语句
#### 2. 缓存优化
- 启用知识库缓存
- 缓存频繁查询的数据
- 使用Redis等缓存系统
#### 3. 并发优化
- 调整WebSocket连接数
- 优化数据库连接池
- 使用异步处理
---
## 👨‍💻 开发指南
### 项目结构
```
TSP_assistant/
├── src/ # 源代码目录
│ ├── agent/ # Agent相关模块
│ ├── analytics/ # 分析模块
│ ├── config/ # 配置模块
│ ├── core/ # 核心模块
│ ├── dialogue/ # 对话模块
│ ├── knowledge_base/ # 知识库模块
│ ├── utils/ # 工具模块
│ ├── vehicle/ # 车辆数据模块
│ └── web/ # Web模块
├── logs/ # 日志目录
├── data/ # 数据目录
├── requirements.txt # 依赖包
├── init_database.py # 数据库初始化
└── start_dashboard.py # 启动脚本
```
### 开发环境设置
#### 1. 克隆项目
```bash
git clone <repository-url>
cd TSP_assistant
```
#### 2. 创建虚拟环境
```bash
python -m venv venv
source venv/bin/activate # Linux/Mac
# 或
venv\Scripts\activate # Windows
```
#### 3. 安装依赖
```bash
pip install -r requirements.txt
```
#### 4. 配置环境
```bash
cp src/config/config.py.example src/config/config.py
# 编辑配置文件
```
### 代码规范
#### 1. Python代码规范
- 使用PEP 8代码风格
- 添加类型注解
- 编写文档字符串
- 使用日志记录
#### 2. JavaScript代码规范
- 使用ES6+语法
- 添加JSDoc注释
- 使用const/let替代var
- 处理异步操作
#### 3. 数据库规范
- 使用ORM而不是原生SQL
- 添加适当的索引
- 使用事务处理
- 处理异常情况
### 测试
#### 1. 单元测试
```bash
python -m pytest tests/
```
#### 2. 集成测试
```bash
python test_new_features.py
```
#### 3. 功能测试
```bash
python comprehensive_frontend_test.py
```
### 部署
#### 1. 生产环境配置
- 使用生产数据库
- 配置HTTPS
- 设置环境变量
- 启用日志轮转
#### 2. Docker部署
```dockerfile
FROM python:3.9-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "start_dashboard.py"]
```
#### 3. 监控和运维
- 设置健康检查
- 配置监控告警
- 定期备份数据
- 性能监控
---
## 📞 技术支持
### 联系方式
- **邮箱**: support@example.com
- **电话**: 400-123-4567
- **在线客服**: 通过系统内置客服功能
### 文档更新
本文档会定期更新,请关注最新版本。
### 反馈建议
如果您在使用过程中遇到问题或有改进建议,请通过以下方式反馈:
1. 通过系统内置反馈功能
2. 发送邮件到技术支持邮箱
3. 提交GitHub Issue
---
**版本**: v2.0
**更新日期**: 2025-09-06
**维护团队**: TSP智能助手开发团队