综合介绍
DeepGemini 是一个开源项目,由开发者 Thomas Sligter 创建。它是一个支持多模型编排的 AI 管理工具,主要特点是能灵活组合多种 AI 模型,并通过 OpenAI 兼容的 API 接口调用。项目基于 Python 3.11 和 FastAPI 开发,支持 SQLite 数据库存储配置,提供 Web 管理界面和 Docker 部署方式。它适用于开发者、技术爱好者和企业用户,MIT 许可允许免费使用和修改。DeepGemini 支持中英文界面,功能丰富且易于上手。
该项目在界面配置的多模型工作流和多模型讨论任务组,无法在界面直接使用,要在其他聊天工具中配置API使用。该工具要比一般的智能体任务编排工具简单且实用,唯一缺点是比较消耗API额度。
功能列表
- 支持多模型编排,可自定义组合多个 AI 模型完成任务。
- 提供角色管理,能为 AI 设置不同性格和技能。
- 支持讨论组功能,多个 AI 角色可协作讨论。
- 内置多种讨论模式,包括头脑风暴、辩论和 SWOT 分析等。
- 兼容多个 AI 提供商,如 DeepSeek、Claude、Gemini、Grok3 等。
- 提供 OpenAI 兼容的 API 接口,可直接替换现有应用中的 OpenAI 接口。
- 支持实时流式响应,提升用户体验。
- 内置 Web 管理界面,方便配置模型和查看状态。
- 支持 SQLite 数据库和 Alembic 迁移,管理配置更稳定。
使用帮助
DeepGemini 的安装和使用分为本地运行和 Docker 部署两种方式。以下详细介绍安装步骤和功能操作流程,帮助用户快速上手。
安装流程 - 本地运行
- 克隆项目代码
在终端输入以下命令下载项目:
git clone https://github.com/sligter/DeepGemini.git
然后进入项目目录:
cd DeepGemini
- 安装依赖
项目推荐使用uv
工具安装依赖,运行:
uv sync
如果没有 uv
,可以用 pip install -r requirements.txt
替代。确保 Python 版本为 3.11 或以上。
- 配置环境变量
复制示例配置文件:
cp .env.example .env
用文本编辑器打开 .env
,设置以下必填项:
ALLOW_API_KEY
:你的 API 密钥,自行定义即可。ALLOW_ORIGINS
:允许的域名来源,填*
表示全部允许,或用逗号分隔具体域名。
可选配置包括模型 API 密钥和参数(如DEEPSEEK_API_KEY
)。
- 启动服务
输入以下命令启动:
uv run uvicorn app.main:app --host 0.0.0.0 --port 8000
启动成功后,打开浏览器访问 http://localhost:8000/dashboard
,进入 Web 管理界面。
安装流程 - Docker 部署
- 拉取 Docker 镜像
在终端运行:
docker pull bradleylzh/deepgemini:latest
- 准备配置文件和数据库
在当前目录创建文件:
- Linux/Mac:
cp .env.example .env touch deepgemini.db echo "" > deepgemini.db
- Windows PowerShell:
cp .env.example .env echo "" > deepgemini.db
编辑 .env
,设置 ALLOW_API_KEY
和 ALLOW_ORIGINS
。
- 运行 Docker 容器
输入命令启动:
- Linux/Mac:
docker run -d -p 8000:8000 -v $(pwd)/.env:/app/.env -v $(pwd)/deepgemini.db:/app/deepgemini.db --name deepgemini bradleylzh/deepgemini:latest
- Windows PowerShell:
docker run -d -p 8000:8000 -v ${PWD}\.env:/app/.env -v ${PWD}\deepgemini.db:/app/deepgemini.db --name deepgemini bradleylzh/deepgemini:latest
运行后,访问 http://localhost:8000/dashboard
。
使用 Docker Compose(推荐)
- 准备
.env
和数据库文件,如上所述。 - 运行:
docker-compose up -d
访问 http://localhost:8000/dashboard
。
主要功能操作流程
1. Web 管理界面操作
- 打开浏览器,访问
http://localhost:8000/dashboard
。 - 界面显示模型状态和配置选项。点击“添加模型”,输入模型名称(如 DeepSeek)、API 密钥和参数(温度、top_p 等),保存后可用。
- 在“角色管理”中,创建 AI 角色,设置性格(如“逻辑严谨”)和技能(如“文本生成”)。
2. 配置多模型编排
- 在“工作流”页面,点击“新建工作流”。
- 示例配置:
{
"name": "reason_and_execute",
"steps": [
{"model_id": "deepseek", "step_type": "reasoning", "step_order": 1},
{"model_id": "claude", "step_type": "execution", "step_order": 2}
]
}
- 保存后,工作流会先用 DeepSeek 推理,再用 Claude 生成结果。
3. 调用 API 接口
- 使用
curl
测试 API:
curl -X POST "http://localhost:8000/v1/chat/completions" -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"model": "reason_and_execute", "messages": [{"role": "user", "content": "分析并回答:1+1等于几?"}]}'
- 替换
YOUR_API_KEY
为.env
中的密钥。返回结果为流式响应。
4. 创建讨论组
- 在“讨论组”页面,添加多个角色(如“分析师”和“创意者”)。
- 选择讨论模式(如“头脑风暴”),输入问题,点击“开始讨论”。系统会展示角色间的对话过程。
注意事项
- 确保网络连接正常,部分模型需要访问外部 API。
- 日志文件在
<项目目录>/logs/
下,可用于排查问题。 - Docker 部署时,若端口冲突,可修改
-p 8000:8000
中的第一个端口号。
应用场景
- AI 开发实验
开发者可以用 DeepGemini 测试多模型协作。比如,先用 Gemini 分析问题,再用 Claude 生成详细回答。 - 团队协作模拟
通过讨论组功能,模拟团队会议。设置不同角色讨论产品策略,输出多样化建议。 - 教育与培训
学生可用它学习 AI 模型特性,尝试不同讨论模式观察结果。
QA
- 支持哪些 AI 提供商?
支持 DeepSeek、Claude、Gemini、Grok3、OpenAI 等,也可自定义接入其他提供商。 - 讨论组有什么用?
讨论组让多个 AI 角色协作解决复杂问题,如头脑风暴或辩论,提供多角度答案。 - 如何调试问题?
检查日志文件,或在 GitHub 上提交 issue 寻求帮助。