上传文件至「/」

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

193
README.md Normal file
View File

@@ -0,0 +1,193 @@
# 会会虚拟用户 AI 互动系统
基于 AI 大模型的虚拟用户自动化互动系统,支持对接会会平台接口,实现虚拟用户的自动登录、评论、回复、点赞、收藏、转发等功能。
## 功能特性
### 核心功能
-**虚拟用户管理**批量生成、Excel 导入、人格配置
-**AI 内容生成**:支持 OpenAI、智谱、百度文心、阿里通义等大模型
-**自动化互动**:定时任务、随机策略、限额控制
-**数据可视化**控制台仪表盘、Token 消耗统计
-**Docker 部署**:支持 1Panel 一键部署
### 互动类型
- 评论AI 生成)
- 回复AI 生成)
- 点赞
- 收藏
- 转发
### 技术栈
- **后端**Python 3.11 + FastAPI
- **前端**Vue 3 + Element Plus
- **数据库**MySQL 8.0
- **AI 对接**OpenAI / 智谱 / 百度 / 阿里
- **部署**Docker + Docker Compose
## 快速开始
### 1. 环境要求
- Docker 20.10+
- Docker Compose 2.0+
- 1Panel 面板(可选)
### 2. 配置环境变量
```bash
cd backend
cp .env.example .env
```
编辑 `.env` 文件,配置必要参数:
- 数据库配置(默认即可)
- AI 模型 API Key至少配置一个
- 会会接口地址默认http://192.168.1.200:63120
### 3. 启动服务
```bash
# 启动所有服务
docker-compose up -d
# 查看日志
docker-compose logs -f backend
# 停止服务
docker-compose down
```
### 4. 访问服务
- 前端界面http://localhost
- 后端 APIhttp://localhost:8000
- API 文档http://localhost:8000/docs
## 项目结构
```
会会广场机器人/
├── backend/ # 后端服务
│ ├── app/
│ │ ├── api/ # API 路由
│ │ ├── core/ # 核心配置
│ │ ├── models/ # 数据库模型
│ │ ├── schemas/ # Pydantic Schema
│ │ ├── services/ # 业务服务
│ │ └── main.py # 应用入口
│ ├── requirements.txt # Python 依赖
│ └── Dockerfile
├── frontend/ # 前端服务
│ └── src/
├── docker/ # Docker 配置
│ ├── mysql/
│ └── nginx/
├── data/ # 数据持久化
│ ├── mysql/
│ └── logs/
├── docker-compose.yml
└── README.md
```
## API 接口
### 虚拟用户管理
- `GET /api/v1/virtual-users` - 获取用户列表
- `POST /api/v1/virtual-users` - 创建用户
- `POST /api/v1/virtual-users/generate` - 批量生成用户
- `POST /api/v1/virtual-users/import` - Excel 导入用户
- `PUT /api/v1/virtual-users/{id}` - 更新用户
- `DELETE /api/v1/virtual-users/{id}` - 删除用户
### 互动管理
- `POST /api/v1/interactions/execute` - 执行互动
- `GET /api/v1/interactions` - 获取互动记录
### AI 模型配置
- `GET /api/v1/ai-models` - 获取模型列表
- `POST /api/v1/ai-models` - 创建模型配置
- `POST /api/v1/ai-models/test` - 测试模型
### 控制台
- `GET /api/v1/dashboard` - 获取统计数据
- `GET /api/v1/dashboard/token/stats` - Token 统计
- `GET /api/v1/dashboard/token/daily` - 每日 Token 使用
## 系统配置
### 默认限额
- 每日 Token 上限10,000
- 单用户日评论上限20
- 单用户日回复上限10
### 活动时间段
- 开始时间09:00
- 结束时间22:00
- 互动间隔10-30 分钟(随机)
### 互动概率
- 点赞80%
- 收藏50%
- 转发30%
## 开发指南
### 添加新的 AI 模型
1.`app/services/ai_service.py` 添加对应的调用方法
2.`app/models/ai_model.py` 添加提供商枚举
3. 通过 API 配置新模型
### 自定义互动策略
修改 `app/services/interaction_service.py` 中的互动逻辑
### 调整定时任务
修改 `app/services/scheduler_service.py` 中的调度配置
## 常见问题
### 1. 数据库连接失败
检查 MySQL 服务是否启动:
```bash
docker-compose ps mysql
```
### 2. AI 模型调用失败
- 检查 API Key 是否正确
- 检查网络连接
- 查看后端日志:`docker-compose logs backend`
### 3. Token 消耗过快
- 调整 `MAX_TOKENS_PER_DAY` 配置
- 降低互动频率
- 减少虚拟用户数量
## 1Panel 部署
### 通过 1Panel 部署 Docker Compose
1. 登录 1Panel 面板
2. 进入"容器管理" -> "Compose"
3. 点击"创建",上传 `docker-compose.yml`
4. 配置环境变量
5. 点击"创建"启动服务
### 开放端口
在 1Panel 防火墙中开放:
- 80 (前端)
- 8000 (后端 API)
- 3306 (数据库,可选)
## 更新日志
### v1.0.0 (2026-03-23)
- 初始版本发布
- 支持虚拟用户生成和管理
- 支持 AI 自动生成评论和回复
- 支持多种互动类型
- 完整的 Docker 部署方案
## License
MIT License
## 联系方式
如有问题,请提交 Issue 或联系开发团队。