My_Cloud_Service / README.md
ch862747537's picture
Fix: Add missing Hugging Face config
b84318d
metadata
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. 开始新辩论
      1. 查看历史辩论记录
      1. 系统设置
      1. 退出系统
  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信息

注意事项

  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地址]