Files
aitsc/优化历史功能部署指南.md
2025-10-10 23:39:54 +08:00

317 lines
6.9 KiB
Markdown
Raw Permalink 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.
# 📚 优化历史功能部署指南
## 🎯 功能概述
优化历史功能为用户提供了完整的提示词生成历史管理功能,包括:
- 📝 **历史记录管理**: 查看、编辑、删除历史记录
- 🔍 **智能搜索**: 关键词搜索和多种筛选条件
-**收藏功能**: 重要提示词收藏管理
- 📊 **统计分析**: 使用统计和趋势分析
- 📤 **数据导出**: 支持JSON和CSV格式导出
- 🏷️ **标签系统**: 自定义标签管理
## 🚀 部署步骤
### 1. 数据库准备
#### 1.1 执行SQL脚本
```bash
# 连接到MySQL数据库
mysql -u root -p
# 选择数据库
USE pro_db;
# 执行创建表脚本
SOURCE /home/renjianbo/aitsc/create_history_tables.sql;
```
#### 1.2 验证表创建
```sql
-- 检查表是否创建成功
SHOW TABLES LIKE '%history%';
SHOW TABLES LIKE '%statistics%';
-- 查看表结构
DESCRIBE prompt_history;
DESCRIBE history_tags;
DESCRIBE user_statistics;
```
### 2. 代码部署
#### 2.1 文件结构
```
src/flask_prompt_master/
├── models/
│ └── history_models.py # 历史记录数据模型
├── routes/
│ └── history_routes.py # 历史记录API接口
├── templates/
│ └── history.html # 历史记录前端页面
└── __init__.py # 应用初始化(已更新)
```
#### 2.2 重启应用
```bash
# 停止现有服务
pkill -f gunicorn
# 启动新服务
cd /home/renjianbo/aitsc
gunicorn -c gunicorn.conf.py src.flask_prompt_master:app
```
### 3. 功能验证
#### 3.1 运行测试脚本
```bash
# 运行测试脚本
python test_history_feature.py
```
#### 3.2 手动验证
1. **访问历史页面**: `http://localhost:5002/history`
2. **生成提示词**: 在首页生成一些提示词
3. **查看历史**: 在历史页面查看生成的记录
4. **测试功能**: 搜索、筛选、收藏、导出等
## 📋 功能使用说明
### 1. 历史记录管理
#### 1.1 查看历史记录
- 访问 `/history` 页面
- 查看所有生成的历史记录
- 支持分页浏览
#### 1.2 搜索和筛选
- **关键词搜索**: 在搜索框输入关键词
- **模板筛选**: 选择特定模板
- **时间筛选**: 按时间范围筛选
- **收藏筛选**: 只显示收藏的记录
- **排序方式**: 按时间、评分、生成时间排序
#### 1.3 记录操作
- **查看详情**: 点击眼睛图标查看完整内容
- **复制提示词**: 点击复制图标复制到剪贴板
- **收藏/取消收藏**: 点击心形图标
- **删除记录**: 点击垃圾桶图标删除
### 2. 统计分析
#### 2.1 统计面板
- **总生成数**: 历史生成总数
- **收藏数**: 收藏的提示词数量
- **平均评分**: 用户满意度统计
#### 2.2 数据导出
- **JSON格式**: 结构化数据导出
- **CSV格式**: 表格数据导出
- **筛选导出**: 按条件导出特定数据
### 3. 标签管理
#### 3.1 添加标签
- 在记录详情页面添加标签
- 支持自定义标签
- 标签分类管理
#### 3.2 标签筛选
- 按标签筛选记录
- 标签统计和趋势
## 🔧 配置说明
### 1. 数据库配置
#### 1.1 连接配置
```python
# 在 config.py 中配置数据库连接
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:123456@localhost:3306/pro_db?charset=utf8mb4'
```
#### 1.2 索引优化
```sql
-- 为常用查询字段添加索引
CREATE INDEX idx_user_created_at ON prompt_history(user_id, created_at);
CREATE INDEX idx_favorite_rating ON prompt_history(is_favorite, satisfaction_rating);
```
### 2. 应用配置
#### 2.1 分页配置
```python
# 历史记录分页大小
HISTORY_PAGE_SIZE = 20
HISTORY_MAX_EXPORT = 1000
```
#### 2.2 缓存配置
```python
# 统计数据缓存
CACHE_STATISTICS_TTL = 300 # 5分钟
```
## 🚨 故障排除
### 1. 常见问题
#### 1.1 数据库连接失败
```bash
# 检查数据库服务
systemctl status mysql
# 检查数据库连接
mysql -u root -p -e "SELECT 1"
```
#### 1.2 表不存在错误
```sql
-- 检查表是否存在
SHOW TABLES LIKE '%history%';
-- 重新执行创建脚本
SOURCE /home/renjianbo/aitsc/create_history_tables.sql;
```
#### 1.3 权限问题
```sql
-- 检查用户权限
SHOW GRANTS FOR 'root'@'localhost';
-- 授权数据库权限
GRANT ALL PRIVILEGES ON pro_db.* TO 'root'@'localhost';
FLUSH PRIVILEGES;
```
### 2. 性能优化
#### 2.1 数据库优化
```sql
-- 分析查询性能
EXPLAIN SELECT * FROM prompt_history WHERE user_id = 1 ORDER BY created_at DESC;
-- 优化慢查询
CREATE INDEX idx_user_created_at ON prompt_history(user_id, created_at);
```
#### 2.2 应用优化
```python
# 启用查询缓存
SQLALCHEMY_ENGINE_OPTIONS = {
'pool_pre_ping': True,
'pool_recycle': 300,
'pool_size': 10,
'max_overflow': 20
}
```
## 📊 监控和维护
### 1. 数据监控
#### 1.1 数据量监控
```sql
-- 查看历史记录数量
SELECT COUNT(*) FROM prompt_history;
-- 查看用户统计
SELECT user_id, total_generations, favorite_count, avg_rating
FROM user_statistics;
```
#### 1.2 性能监控
```sql
-- 查看慢查询
SHOW PROCESSLIST;
-- 分析表使用情况
SHOW TABLE STATUS LIKE 'prompt_history';
```
### 2. 数据清理
#### 2.1 清理旧数据
```sql
-- 删除30天前的数据
DELETE FROM prompt_history
WHERE created_at < DATE_SUB(NOW(), INTERVAL 30 DAY);
-- 更新统计信息
CALL CleanOldHistory(30);
```
#### 2.2 数据备份
```bash
# 备份历史数据
mysqldump -u root -p pro_db prompt_history history_tags user_statistics > history_backup.sql
```
## 🔄 更新和维护
### 1. 功能更新
#### 1.1 添加新功能
1. 修改数据模型
2. 更新API接口
3. 修改前端页面
4. 执行数据库迁移
#### 1.2 版本管理
```bash
# 创建版本标签
git tag -a v1.1.0 -m "添加优化历史功能"
git push origin v1.1.0
```
### 2. 定期维护
#### 2.1 数据清理
```bash
# 创建清理脚本
cat > cleanup_history.sh << 'EOF'
#!/bin/bash
mysql -u root -p pro_db -e "CALL CleanOldHistory(90);"
EOF
chmod +x cleanup_history.sh
# 添加到定时任务
crontab -e
# 添加: 0 2 * * 0 /path/to/cleanup_history.sh
```
#### 2.2 性能监控
```bash
# 创建监控脚本
cat > monitor_history.sh << 'EOF'
#!/bin/bash
echo "历史记录统计:"
mysql -u root -p pro_db -e "
SELECT
COUNT(*) as total_records,
COUNT(DISTINCT user_id) as unique_users,
AVG(satisfaction_rating) as avg_rating
FROM prompt_history;
"
EOF
```
## 🎉 总结
优化历史功能已经成功集成到现有系统中,提供了完整的用户历史记录管理功能。通过这个功能,用户可以:
1. **回顾历史**: 查看所有生成过的提示词
2. **智能搜索**: 快速找到需要的历史记录
3. **数据管理**: 收藏、评分、删除记录
4. **统计分析**: 了解使用情况和趋势
5. **数据导出**: 备份和分享历史数据
这个功能大大提升了用户体验,让用户能够更好地管理和利用自己的提示词生成历史。
---
*部署完成时间2025年1月*
*功能版本v1.0*
*维护人员:系统管理员*