Spaces:
Sleeping
Sleeping
title: AI Debate System | |
emoji: ⚔️ | |
colorFrom: blue | |
colorTo: green | |
sdk: docker | |
pinned: false | |
# AI大模型辩论系统 | |
## 项目简介 | |
本项目是一个可以让两个AI大模型(ZhipuAI/GLM-4.5和deepseek-ai/DeepSeek-V3.1)根据给定话题进行实时辩论的系统。用户将能够实时观看两个模型之间的对话内容,并可以控制辩论的进行。 | |
## 功能特点 | |
- 支持两个AI大模型之间的实时辩论 | |
- 可自定义辩论话题和轮数 | |
- 实时显示辩论内容 | |
- 支持暂停、恢复和停止辩论 | |
- 保存完整的辩论记录 | |
- 提供多种显示模式(简单控制台、控制台实时显示、文件保存、复合显示) | |
- 可查看历史辩论记录 | |
- 支持流式输出,实时显示模型生成内容 | |
- 提供图形用户界面(GUI),便于使用和分享 | |
## 系统要求 | |
- Python 3.7+ | |
- requests库 | |
- tkinter库(用于GUI界面) | |
## 安装说明 | |
1. 克隆或下载本项目 | |
2. 安装依赖包: | |
``` | |
pip install -r requirements.txt | |
``` | |
## 使用方法 | |
### 命令行版本 | |
在项目根目录下运行主程序: | |
``` | |
python src/1_辩论系统.py | |
``` | |
### 命令行参数 | |
``` | |
python src/1_辩论系统.py [--api-key API_KEY] [--display-type DISPLAY_TYPE] | |
``` | |
参数说明: | |
- `--api-key`: API密钥(默认:ms-b4690538-3224-493a-8f5b-4073d527f788) | |
- `--display-type`: 显示类型,可选值:simple, console, file, composite(默认:composite) | |
### GUI版本 | |
在项目根目录下运行GUI测试程序: | |
``` | |
python src/5_GUI测试.py | |
``` | |
GUI界面功能: | |
- 选择模型(GLM-4.5或DeepSeek-V3.1) | |
- 输入提示文本 | |
- 实时流式显示模型输出 | |
- 开始/停止生成按钮 | |
- 清空输出和保存输出功能 | |
### 操作流程 | |
1. 启动系统后,会显示主菜单: | |
- 1. 开始新辩论 | |
- 2. 查看历史辩论记录 | |
- 3. 系统设置 | |
- 4. 退出系统 | |
2. 选择"开始新辩论"后,按提示输入: | |
- 辩论话题 | |
- 辩论轮数(默认5轮) | |
- 首发模型(默认GLM-4.5) | |
3. 确认参数后,辩论将自动开始,您可以实时观看两个模型的辩论内容。 | |
4. 在辩论过程中,您可以输入以下命令控制辩论: | |
- `stop`: 停止辩论 | |
- `pause`: 暂停辩论 | |
- `resume`: 恢复辩论 | |
5. 辩论结束后,系统会自动保存辩论记录。 | |
## 项目结构 | |
``` | |
20250907_大模型辩论/ | |
├── src/ # 源代码目录 | |
│ ├── 1_辩论系统.py # 主程序文件 | |
│ ├── 2_模型接口.py # 模型API接口封装 | |
│ ├── 3_辩论控制器.py # 辩论流程控制 | |
│ ├── 4_显示界面.py # 实时显示界面 | |
│ └── 5_GUI测试.py # GUI测试程序 | |
├── data/ # 数据目录 | |
│ └── 辩论话题.txt # 存储辩论话题 | |
├── output/ # 输出目录 | |
│ ├── 辩论记录/ # 每次辩论的完整记录 | |
│ └── 辩论统计/ # 辩论统计数据 | |
├── logs/ # 日志目录 | |
│ └── 系统运行日志.log # 系统运行日志 | |
├── docs/ # 文档目录 | |
│ ├── 项目规划.md # 项目规划文档 | |
│ ├── 修改记录.md # 项目修改记录 | |
│ └── 更新计划.md # 更新计划文档 | |
├── models/ # 模型目录(预留) | |
├── sql/ # SQL脚本目录(预留) | |
├── requirements.txt # 依赖包列表 | |
└── README.md # 本文档 | |
``` | |
## 模块说明 | |
### 1_辩论系统.py | |
主程序模块,整合所有模块,提供用户交互界面。包含: | |
- 系统主菜单 | |
- 辩论参数设置 | |
- 历史记录查看 | |
- 系统设置 | |
### 2_模型接口.py | |
模型接口模块,封装两个大模型的API调用。包含: | |
- ModelInterface基类 | |
- GLM45Interface类(GLM-4.5模型接口) | |
- DeepSeekV31Interface类(DeepSeek-V3.1模型接口) | |
- ModelManager类(模型管理器) | |
### 3_辩论控制器.py | |
辩论控制器模块,管理辩论流程和控制发言顺序。包含: | |
- DebateMessage类(辩论消息) | |
- DebateSession类(辩论会话) | |
- DebateController类(辩论控制器) | |
### 4_显示界面.py | |
显示界面模块,用于实时显示辩论内容。包含: | |
- ConsoleDisplay类(控制台显示界面) | |
- SimpleDisplay类(简单显示界面) | |
- FileDisplay类(文件显示界面) | |
- CompositeDisplay类(复合显示界面) | |
- DisplayManager类(显示管理器) | |
### 5_GUI测试.py | |
GUI测试模块,提供图形用户界面。包含: | |
- StreamOutputGUI类(流式输出GUI界面) | |
- 支持模型选择和流式输出显示 | |
- 提供完整的用户交互功能 | |
## API信息 | |
- API基础地址:https://api-inference.modelscope.cn/v1/ | |
- 支持的模型: | |
- ZhipuAI/GLM-4.5 | |
- deepseek-ai/DeepSeek-V3.1 | |
## 注意事项 | |
1. 确保网络连接正常,能够访问API服务器。 | |
2. 辩论过程中请耐心等待,模型响应可能需要一定时间。 | |
3. 辩论记录会自动保存在`output/辩论记录/`目录下。 | |
4. 系统日志会记录在`logs/`目录下,便于排查问题。 | |
## 常见问题 | |
### Q: 如何更换API密钥? | |
A: 可以通过命令行参数`--api-key`指定,或者在代码中修改默认值。 | |
### Q: 如何更改显示模式? | |
A: 可以通过命令行参数`--display-type`指定,或者在系统设置中更改。 | |
### Q: 辩论过程中出现错误怎么办? | |
A: 系统会自动记录错误信息到日志文件,可以查看`logs/`目录下的日志文件排查问题。 | |
### Q: 如何查看历史辩论记录? | |
A: 在主菜单选择"查看历史辩论记录",然后选择要查看的记录即可。 | |
## 开发计划 | |
1. 增加更多模型支持 | |
2. 优化辩论逻辑和提示词 | |
3. 添加辩论评分功能 | |
4. 开发图形用户界面 | |
5. 支持更多输出格式(如HTML、PDF等) | |
## 许可证 | |
本项目仅供学习和研究使用。 | |
## 联系方式 | |
如有问题或建议,请通过以下方式联系: | |
- 邮箱:[您的邮箱] | |
- GitHub:[您的GitHub地址] |