上传文件至「/」
This commit is contained in:
193
README.md
Normal file
193
README.md
Normal 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
|
||||
- 后端 API:http://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 或联系开发团队。
|
||||
Reference in New Issue
Block a user