上传文件至「/」

This commit is contained in:
2026-03-23 15:30:38 +08:00
commit f13ecb3bba
5 changed files with 1448 additions and 0 deletions

375
DEPLOYMENT.md Normal file
View File

@@ -0,0 +1,375 @@
# 会会虚拟用户 AI 互动系统 - 部署与使用指南
## 一、项目概述
本项目是一个基于 AI 大模型的虚拟用户自动化互动系统,主要功能包括:
### 核心功能
1. **虚拟用户管理** - 批量生成、Excel 导入、人格配置
2. **AI 内容生成** - 支持 OpenAI、智谱等主流大模型
3. **自动化互动** - 评论、回复、点赞、收藏、转发
4. **定时任务调度** - 随机时间、活跃度控制、限额管理
5. **数据可视化** - 控制台仪表盘、Token 消耗统计
## 二、快速部署
### 方法一:一键启动脚本(推荐)
```bash
# 进入项目目录
cd /Users/yqq/Works/Projects/会会广场机器人
# 执行启动脚本
./start.sh
```
脚本会自动完成:
- 检查 Docker 环境
- 创建必要目录
- 配置文件初始化
- 启动所有服务
### 方法二:手动 Docker Compose 部署
```bash
# 1. 配置环境变量
cd backend
cp .env.example .env
# 编辑 .env 文件,配置 AI 模型 API Key
# 2. 启动服务
cd ..
docker-compose up -d
# 3. 查看日志
docker-compose logs -f backend
# 4. 访问服务
# 前端http://localhost
# 后端 API: http://localhost:8000
# API 文档http://localhost:8000/docs
```
## 三、配置说明
### 1. 环境变量配置backend/.env
```bash
# 必选AI 模型配置(至少配置一个)
OPENAI_API_KEY=sk-your-api-key-here
# 或
ZHIPU_API_KEY=your-zhipu-api-key-here
# 可选:调整系统限制
MAX_TOKENS_PER_DAY=10000 # 每日 Token 上限
MAX_COMMENTS_PER_USER_PER_DAY=20 # 单用户日评论上限
TASK_START_HOUR=9 # 活动开始时间
TASK_END_HOUR=22 # 活动结束时间
```
### 2. 数据库配置
默认配置即可Docker Compose 会自动创建 MySQL 容器:
- 主机mysql
- 端口3306
- 用户huihui_user
- 密码huihui_password
- 数据库huihui_ai_bot
### 3. 会会接口配置
默认已配置为:`http://192.168.1.200:63120`
如需修改,在 `.env` 文件中调整:
```bash
HUIHUI_API_BASE=http://your-huihui-api-address
```
## 四、使用流程
### 第一步AI 模型配置
1. 访问前端界面http://localhost
2. 进入"AI 模型配置"页面
3. 点击"添加模型"
4. 选择提供商OpenAI / 智谱等)
5. 填写 API Key 和其他参数
6. 点击"测试"验证配置
7. 设为默认模型
**支持的 AI 模型:**
- OpenAI: gpt-3.5-turbo, gpt-4
- 智谱 AI: glm-4
- 百度文心ERNIE-Bot待实现
- 阿里通义Qwen待实现
### 第二步:虚拟用户管理
#### 方式一:批量生成
1. 进入"虚拟用户管理"页面
2. 点击"批量生成"
3. 设置生成数量1-100
4. 选择写作风格(可不选,随机分配)
5. 选择活跃度级别
6. 勾选"AI 人格描述"(推荐)
7. 点击"生成"
#### 方式二Excel 导入
准备 Excel 文件,包含以下列:
- `username`(必填)- 用户名/账号
- `password`(必填)- 密码
- `nickname`(可选)- 昵称
- `writing_style`(可选)- 写作风格
- `activity_level`(可选)- 活跃度low/medium/high
导入步骤:
1. 点击"Excel 导入"
2. 选择 Excel 文件
3. 勾选"生成 AI 人格描述"
4. 确认导入
### 第三步:系统设置
1. 进入"系统设置"页面
2. 配置活动时间段(如 9:00-22:00
3. 配置互动频率(如 10-30 分钟)
4. 配置限额Token 上限、评论上限等)
5. 保存配置
### 第四步:启动定时任务
1. 在"系统设置"页面
2. 点击"启动任务"按钮
3. 系统开始自动执行互动任务
### 第五步:监控与调整
1. **控制台** - 查看实时统计数据
- 虚拟用户总数
- 今日互动次数
- Token 消耗情况
- 最近互动记录
2. **互动记录** - 查看详细执行日志
- 成功/失败状态
- Token 消耗
- 错误信息
3. **调整策略**
- 根据 Token 消耗调整互动频率
- 根据效果调整写作风格
- 根据需求调整限额配置
## 五、高级配置
### 1. 自定义写作风格
在生成虚拟用户时,可以指定写作风格:
- 幽默风趣
- 严肃理性
- 文艺清新
- 吐槽犀利
- 感性温暖
- 客观中立
- 激情澎湃
- 冷静分析
- 活泼可爱
- 深沉内敛
也可在 `.env` 中添加自定义风格。
### 2. 活跃度分级
- **高活跃度**:每日互动 5-10 次80% 概率执行)
- **中活跃度**:每日互动 2-5 次50% 概率执行)
- **低活跃度**:每日互动 1-2 次30% 概率执行)
### 3. 互动概率配置
默认概率:
- 点赞80%
- 收藏50%
- 转发30%
- 评论:剩余概率
可在"系统设置"页面调整。
### 4. Token 限额策略
建议配置:
- 开发测试1000-5000 tokens/天
- 小规模使用5000-20000 tokens/天
- 大规模使用20000+ tokens/天
根据实际 AI 模型价格计算成本。
## 六、运维管理
### 查看日志
```bash
# 查看所有服务日志
docker-compose logs -f
# 查看后端日志
docker-compose logs -f backend
# 查看数据库日志
docker-compose logs -f mysql
# 查看最近 100 行
docker-compose logs --tail=100 backend
```
### 备份数据
```bash
# 备份 MySQL 数据库
docker exec huihui_mysql mysqldump -uhuihui_user -phuihui_password huihui_ai_bot > backup_$(date +%Y%m%d).sql
# 恢复数据库
docker exec -i huihui_mysql mysql -uhuihui_user -phuihui_password huihui_ai_bot < backup_20260323.sql
```
### 服务重启
```bash
# 重启所有服务
docker-compose restart
# 重启单个服务
docker-compose restart backend
# 停止所有服务
docker-compose down
# 停止并删除容器(保留数据)
docker-compose down
# 完全清理(删除数据和容器)
docker-compose down -v
```
### 更新升级
```bash
# 拉取最新代码
git pull
# 重新构建并启动
docker-compose build
docker-compose up -d
```
## 七、故障排查
### 1. 后端服务无法启动
```bash
# 查看日志
docker-compose logs backend
# 常见问题:
# - 数据库连接失败:检查 MySQL 是否启动
# - 端口冲突:修改 docker-compose.yml 中的端口映射
# - 环境变量错误:检查 .env 文件格式
```
### 2. 数据库连接失败
```bash
# 检查 MySQL 容器状态
docker-compose ps mysql
# 查看 MySQL 日志
docker-compose logs mysql
# 手动连接测试
docker exec -it huihui_mysql mysql -uroot -proot123456
```
### 3. AI 模型调用失败
- 检查 API Key 是否正确
- 检查网络连接
- 查看 Token 余额
- 检查 API 地址是否正确
- 查看后端日志中的详细错误信息
### 4. 定时任务未执行
- 检查调度器状态(系统设置页面)
- 查看后端日志中的调度信息
- 确认活动时间段配置
- 检查虚拟用户状态(需为启用且已登录)
## 八、性能优化
### 1. 数据库优化
```sql
-- 添加索引(已自动创建)
CREATE INDEX idx_user_status ON virtual_users(status);
CREATE INDEX idx_interaction_time ON interaction_records(execution_time);
```
### 2. 并发控制
修改 `.env` 配置:
```bash
# 增加数据库连接池大小
DATABASE_POOL_SIZE=30
DATABASE_MAX_OVERFLOW=60
```
### 3. 缓存策略
- 新闻数据缓存到数据库
- 避免重复调用会会接口
- 定期清理过期缓存
## 九、安全建议
1. **修改默认密码**
- 数据库 root 密码
- 应用 JWT_SECRET_KEY
2. **API Key 保护**
- 不要将 .env 文件提交到 Git
- 使用环境变量或密钥管理服务
3. **网络隔离**
- 生产环境配置防火墙规则
- 限制数据库访问
4. **定期备份**
- 每日备份数据库
- 备份重要配置文件
## 十、技术支持
### 常见问题
**Q: 如何重置系统配置?**
A: 删除 system_configs 表数据,重启服务后会自动创建默认配置。
**Q: 如何批量删除虚拟用户?**
A: 暂时需要通过 API 或数据库操作,后续版本会添加批量删除功能。
**Q: Token 消耗过快怎么办?**
A: 降低 MAX_TOKENS_PER_DAY减少虚拟用户数量或调低互动频率。
**Q: 如何查看会会接口的详细文档?**
A: 访问 http://192.168.1.200:63120/doc.html 查看完整接口文档。
### 版本更新
关注项目更新日志,及时升级到最新版本获取新功能和安全修复。
---
**祝您使用愉快!**
如有问题,请联系开发团队或提交 Issue。