Skip to content

Unleash Next-Level AI! 🚀 💻 Code Generation: DeepSeek r1 + Claude 3.5 Sonnet - Unparalleled Performance! 📝 Content Creation: DeepSeek r1 + Gemini 2.0 - Superior Quality! 🔌 OpenAI-Compatible. 🌊 Streaming & Non-Streaming Support. ✨ Experience the Future of AI – Today! Click to Try Now! ✨

Notifications You must be signed in to change notification settings

ldhkc/DeepClaude

This branch is 35 commits behind ErlichLiu/DeepClaude:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

bcd92a7 · Feb 23, 2025

History

77 Commits
Feb 9, 2025
Feb 23, 2025
Feb 23, 2025
Feb 1, 2025
Feb 1, 2025
Feb 23, 2025
Feb 23, 2025
Feb 23, 2025
Feb 23, 2025
Feb 23, 2025

Repository files navigation

DeepClaude 🐬🧠 - OpenAI Compatible(deepclaude & deepgemini)

Inspiration from getasterisk/deepclaude

GitHub license Compatible with

特别说明:
1.编程:推荐 DeepSeek r1 + Claude 3.5 Sonnet 组合,效果最好; 2.内容创作:推荐 DeepSeek r1 + Gemini 2.0 Flash 或 Gemini 2.0 Pro 组合,效果最好,并且可以完全免费使用。
对于不太会部署,只是希望使用上最强组合模型的朋友,可以直接访问 Erlich 个人网站自助购买按量付费的 API:https://erlich.fun/deepclaude-pricing 也可以直接联系 Erlich(微信号:erlichliu1)

赞助商:问小白 https://www.wenxiaobai.com (丝滑使用 DeepSeek r1 满血版, 支持联网、上传文件、图片、AI 创作 PPT 等)

更新日志:
2025-02-23.1: 重构代码,支持 OpenAI 兼容模型,deepgeminiflash 和 deepgeminipro 配置更方便(请详细查看 READEME 和 .env.example 内的说明)。

2025-02-21.1: 添加 Claude 这段的详细数据结构安全检查。

2025-02-16.1: 支持 claude 侧采用请求体中的自定义模型名称。(如果你采用 oneapi 等中转方,那么现在可以通过配置环境变量或在 API 请求中采用任何 Gemini 等模型完成后半部分。接下来将重构代码,更清晰地支持不同的思考模型组合。)

2025-02-08.2: 支持非流式请求,支持 OpenAI 兼容的 models 接口返回。(⚠️ 当前暂未实现正确的 tokens 消耗统计,稍后更新)

2025-02-08.1: 添加 Github Actions,支持 fork 自动同步、支持自动构建 Docker 最新镜像、支持 docker-compose 部署

2025-02-07.2: 修复 Claude temperature 参数可能会超过范围导致的请求失败的 bug

2025-02-07.1: 支持 Claude temputerature 等参数;添加更详细的 .env.example 说明

2025-02-06.1:修复非原生推理模型无法获得到推理内容的 bug

2025-02-05.1: 支持通过环境变量配置是否是原生支持推理字段的模型,满血版本通常支持

2025-02-04.2: 支持跨域配置,可在 .env 中配置

2025-02-04.1: 支持 Openrouter 以及 OneAPI 等中转服务商作为 Claude 部分的供应商

2025-02-03.3: 支持 OpenRouter 作为 Claude 的供应商,详见 .env.example 说明

2025-02-03.2: 由于 deepseek r1 在某种程度上已经开启了一个规范,所以我们也遵循推理标注的这种规范,更好适配支持的更好的 Cherry Studio 等软件。

2025-02-03.1: Siliconflow 的 DeepSeek R1 返回结构变更,支持新的返回结构

简介

最近 DeepSeek 推出了 DeepSeek R1 模型,在推理能力上已经达到了第一梯队。但是 DeepSeek R1 在一些日常任务的输出上可能仍然无法匹敌 Claude 3.5 Sonnet。Aider 团队最近有一篇研究,表示通过采用 DeepSeek R1 + Claude 3.5 Sonnet 可以实现最好的效果

deepseek r1 and sonnet benchmark

R1 as architect with Sonnet as editor has set a new SOTA of 64.0% on the aider polyglot benchmark. They achieve this at 14X less cost compared to the previous o1 SOTA result.

本项目受到该项目的启发,通过 fastAPI 完全重写,经过 15 天大量社区用户的真实测试,我们创作了一些新的组合使用方案。

1.编程:推荐使用 deepclaude = deepseek r1 + claude 3.5 sonnet; 2.内容创作:推荐使用 deepgeminipro = deepseek r1 + gemini 2.0 pro (该方案可以完全免费使用); 3.日常实验:推荐 deepgeminiflash = deepseek r1 + gemini 2.0 flash (该方案可以完全免费使用)。

项目支持 OpenAI 兼容格式的输入输出,支持 DeepSeek 官方 API 以及第三方托管的 API、生成部分也支持 Claude 官方 API 以及中转 API,并对 OpenAI 兼容格式的其他 Model 做了特别支持。

🔥推荐使用方法: 1.用户可以自行运行在自己的服务器,并对外提供开放 API 接口,接入 OneAPI 等实现统一分发。

2.接入你的日常大语言模型对话聊天使用。

Implementation

image-20250201212456050

How to run

项目支持本地运行和服务器运行,推荐使用服务器部署,实现随时随处可访问的最强大语言模型服务,甚至可以完全免费使用。

1. 获得运行所需的 API

  1. 获取 DeepSeek API,因为最近 DeepSeek 官方的供应能里不足,所以经常无法使用,推荐使用 Siliconflow 的效果更好(也可以本地 Ollama 的): https://cloud.siliconflow.cn/i/RXikvHE2 (点击此链接可以获得到 2000 万免费 tokens) 目前仅推荐字节的火山引擎,可以做到 100% 回复率,速度也非常不错。可以扫码走我的邀请码,一起获得奖励额度。火山引擎邀请海报
  2. 获取 Claude 的 API KEY:https://console.anthropic.com。(也可采用其他中转服务,如 Openrouter 以及其他服务商的 API KEY)
  3. 获取 Gemini 的 API KEY:https://aistudio.google.com/apikey (有免费的额度,日常够用)

2. 开始运行(本地运行)

Step 1. 克隆本项目到适合的文件夹并进入项目

git clone https://github.com/ErlichLiu/DeepClaude.git
cd DeepClaude

Step 2. 通过 uv 安装依赖(如果你还没有安装 uv,请看下方注解)

# 通过 uv 在本地创建虚拟环境,并安装依赖
uv sync
# macOS 激活虚拟环境
source .venv/bin/activate
# Windows 激活虚拟环境
.venv\Scripts\activate

Step 3. 配置环境变量

# 复制 .env 环境变量到本地
cp .env.example .env

Step 4. 按照环境变量当中的注释依次填写配置信息

# 此处为各个环境变量的解释
ALLOW_API_KEY=你允许向你本地或服务器发起请求所需的 API 密钥,可随意设置
DEEPSEEK_API_KEY=deepseek r1 所需的 API 密钥,可在👆上面步骤 1 处获取
DEEPSEEK_API_URL=请求 deepseek r1 所需的请求地址,根据你的供应商说明进行填写
DEEPSEEK_MODEL=不同供应商的 deepseek r1 模型名称不同,根据你的供应商说明进行填写
IS_ORIGIN_REASONING=是否原生支持推理,只有满血版 671B 的 deepseek r1 支持,其余蒸馏模型不支持

CLAUDE_API_KEY=Claude 3.5 Sonnet 的 API 密钥,可在👆上面步骤 1 处获取
CLAUDE_MODEL=Claude 3.5 Sonnet 的模型名称,不同供应商的名称不同,根据你的供应商说明进行填写
CLAUDE_PROVIDER=支持 anthropic (官方) 以及 oneapi(其他中转服务商)两种模式,根据你的供应商填写
CLAUDE_API_URL=请求 Claude 3.5 Sonnet 所需的请求地址,根据你的供应商说明进行填写

OPENAI_COMPOSITE_API_KEY=通常推荐配置为 Gemini 的 API 密钥,可在👆上面步骤 1 处获取
OPENAI_COMPOSITE_API_URL=请求 Gemini 所需的请求地址,默认地址为 https://generativelanguage.googleapis.com/v1beta/openai/chat/completions
OPENAI_COMPOSITE_MODEL=通常推荐配置为 Gemini 的模型名称,可配置为 gemini-2.0-flash 或 gemini-2.0-pro-exp(pro 版本当前为实验模型)

Step 5. 通过命令行启动

# 本地运行
uvicorn app.main:app

Step 6. 配置程序到你的 Chatbox(推荐 Cherry Studio NextChatChatBoxLobeChat

# 如果你的客户端是 Cherry Studio、Chatbox(OpenAI API 模式,注意不是 OpenAI 兼容模式)
# API 地址为 http://127.0.0.1:8000
# API 密钥为你在 ENV 环境变量内设置的 ALLOW_API_KEY
# 需要手动配置两个模型,模型名为 deepclaude 和 deepgemini

# 如果你的客户端是 LobeChat
# API 地址为:http://127.0.0.1:8000/v1
# API 密钥为你在 ENV 环境变量内设置的 ALLOW_API_KEY
# 支持获取模型列表,可以同时获取到 deepclaude 模型和 deepgemini 模型

注:本项目采用 uv 作为包管理器,这是一个更快速更现代的管理方式,用于替代 pip,你可以在此了解更多

部署到服务器

项目支持 Docker 服务器部署,可自行调用接入常用的 Chatbox,也可以作为渠道一直,将其视为一个特殊的 DeepClaude模型接入到 OneAPI 等产品使用。

Railway 一键部署(推荐)

一键部署到 Railway
1. 首先 fork 一份代码。
  1. 点击打开 Railway 主页:https://railway.com?referralCode=RNTGCA

  2. 点击 Deploy a new project image-20250209164454358

  3. 点击 Deploy from GitHub repo image-20250209164638713

  4. 点击 Login with GitHub image-20250209164843566

  5. 选择升级,选择只需 5 美金的 Hobby Plan 即可 image-20250209165034070 image-20250209165108355

  6. 点击 Create a New Project create-a-new-project

  7. 继续选择 Deploy from GitHub repo image-20250209164638713

  8. 输入框内搜索DeepClaude,选中后点击。 deploy-from-github-repo

  9. 选择Variable,并点击New Variable 按钮,按照环境变量内的键值对进行填写 variable

  10. 填写完成后重新点击 Deploy 按钮,等待数秒后即可完成部署 deploy

  11. 部署完成后,点击 Settings 按钮,然后向下查看到 Networking 区域,然后选择 Generate Domain,并输入 8000 作为端口号 networking generate-domain port

  12. 接下来就可以在你喜欢的 Chatbox 内配置使用或作为 API 使用了 using

注:模型名称为 deepclaude 和 deepgemini

使用 docker-compose 部署(Docker 镜像将随着 main 分支自动更新到最新)

推荐可以使用 docker-compose.yml 文件进行部署,更加方便快捷。

  1. 确保已安装 Docker Compose。

  2. 复制 docker-compose.yml 文件到项目根目录。

  3. 修改 docker-compose.yml 文件中的环境变量配置,将 your_allow_api_keyyour_allow_originsyour_deepseek_api_keyyour_claude_api_key 等值替换为你的实际配置。

  4. 在项目根目录下运行 Docker Compose 命令启动服务:

    docker-compose up -d

服务启动后,DeepClaude API 将在 http://宿主机IP:8000/v1/chat/completions 上进行访问。 5. 模型名称为 deepclaude 和 deepgemini

Docker 部署(自行 Build)

  1. 构建 Docker 镜像

    在项目根目录下,使用 Dockerfile 构建镜像。请确保已经安装 Docker 环境。

    docker build -t deepclaude:latest .
  2. 运行 Docker 容器

    运行构建好的 Docker 镜像,将容器的 8000 端口映射到宿主机的 8000 端口。同时,通过 -e 参数设置必要的环境变量,包括 API 密钥、允许的域名等。请根据 .env.example 文件中的说明配置环境变量。

    docker run -d \
        -p 8000:8000 \
        -e ALLOW_API_KEY=your_allow_api_key \
        -e ALLOW_ORIGINS="*" \
        -e DEEPSEEK_API_KEY=your_deepseek_api_key \
        -e DEEPSEEK_API_URL=https://api.deepseek.com/v1/chat/completions \
        -e DEEPSEEK_MODEL=deepseek-reasoner \
        -e IS_ORIGIN_REASONING=true \
        -e CLAUDE_API_KEY=your_claude_api_key \
        -e CLAUDE_MODEL=claude-3-5-sonnet-20241022 \
        -e CLAUDE_PROVIDER=anthropic \
        -e CLAUDE_API_URL=https://api.anthropic.com/v1/messages \
        -e OPENAI_COMPOSITE_API_KEY=your_gemini_api_key
        -e OPENAI_COMPOSITE_API_URL=https://generativelanguage.googleapis.com/v1beta/openai/chat/completions
        -e OPENAI_COMPOSITE_MODEL=gemini-2.0-flash
        -e LOG_LEVEL=INFO \
        --restart always \
        deepclaude:latest

    请替换上述命令中的 your_allow_api_keyyour_allow_originsyour_deepseek_api_keyyour_claude_api_key 为你实际的 API 密钥和配置。ALLOW_ORIGINS 请设置为允许访问的域名,如 "http://localhost:3000,https://chat.example.com""*" 表示允许所有来源。

    Automatic fork sync

项目已经支持 Github Actions 自动更新 fork 项目的代码,保持你的 fork 版本与当前 main 分支保持一致。如需开启,请 frok 后在 Settings 中开启 Actions 权限即可。

Technology Stack

Star History

Star History Chart

Buy me a coffee

微信赞赏码

About Me

About

Unleash Next-Level AI! 🚀 💻 Code Generation: DeepSeek r1 + Claude 3.5 Sonnet - Unparalleled Performance! 📝 Content Creation: DeepSeek r1 + Gemini 2.0 - Superior Quality! 🔌 OpenAI-Compatible. 🌊 Streaming & Non-Streaming Support. ✨ Experience the Future of AI – Today! Click to Try Now! ✨

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.0%
  • Dockerfile 1.0%