
DS2API: DeepSeek V4 через OpenAI, Claude и Gemini API
DS2API — open-source middleware на Go, превращающий веб-интерфейс DeepSeek V4 в совместимые API форматы OpenAI, Claude и Gemini. Мультиаккаунт, Docker, Vercel.
DS2API: мост между DeepSeek V4 и любым AI-инструментом
Разработчик CJackHwang выпустил DS2API — лёгкий высокопроизводительный full-stack middleware, конвертирующий клиентские протоколы в универсальные API. Инструмент позволяет подключить веб-интерфейс DeepSeek напрямую к любому клиенту, совместимому со стандартами OpenAI или Claude, — без платной подписки на официальный API. Проект уже набрал почти 800 звёзд на GitHub и активно используется сообществом Linux.do.
Зачем это нужно
До появления подобных инструментов разработчики сталкивались с классической проблемой: мощные языковые модели поначалу доступны только через веб-интерфейс, а создание production-приложений требует стандартных API — совместимых с OpenAI или Anthropic — для бесшовной интеграции с SDK, фреймворками оркестрации и пайплайнами деплоя.
DS2API принимает запросы в формате OpenAI (/v1/chat/completions) или Anthropic (/anthropic/v1/messages), обрабатывает их внутри и общается с бэкендом DeepSeek по его нативному протоколу — затем переупаковывает ответ в стандартный формат, который ожидает клиент.
Архитектура
Бэкенд написан целиком на Go, фронтенд — React-приложение (WebUI). Вот упрощённая схема работы:
flowchart LR
Client["🖥️ Клиент / SDK\n(OpenAI / Claude / Gemini)"]
DS2API["⚙️ DS2API\n(Go + React WebUI)"]
Pool["🔄 Account Pool\n(мультиаккаунт + очередь)"]
DeepSeek["☁️ DeepSeek Web API"]
Client -->|"OpenAI / Claude / Gemini формат"| DS2API
DS2API -->|"Ротация аккаунтов"| Pool
Pool -->|"Нативный протокол"| DeepSeek
DeepSeek -->|"Ответ"| DS2API
DS2API -->|"Стандартный формат"| Client
Внутри DS2API реализованы:
- PromptCompat — конвертация API-запросов в текстовый контекст для веб-сессии
- PoW (Proof-of-Work) — нативная реализация алгоритма
DeepSeekHashV1на чистом Go, ответ за миллисекунды - Tool Sieve — защита от утечки данных при вызовах инструментов (tool calling)
- History Split — разбивка длинной истории переписки на файлы
Поддерживаемые модели DeepSeek V4
| Модель | Тип | Thinking | Поиск |
|---|---|---|---|
deepseek-v4-flash | default | ✅ (вкл. по умолчанию) | ❌ |
deepseek-v4-flash-nothinking | default | ❌ (отключён навсегда) | ❌ |
deepseek-v4-pro | expert | ✅ (вкл. по умолчанию) | ❌ |
deepseek-v4-pro-search | expert | ✅ (вкл. по умолчанию) | ✅ |
deepseek-v4-vision | vision | ✅ (вкл. по умолчанию) | ❌ |
deepseek-v4-vision-search | vision | ✅ (вкл. по умолчанию) | ✅ |
Помимо нативных ID, DS2API принимает популярные алиасы: gpt-4.1, gpt-5, o3, claude-*, gemini-* — и автоматически маппит их на соответствующие модели DeepSeek.
Ключевые возможности
Мультиаккаунтная ротация
Бесплатные веб-аккаунты DeepSeek имеют лимиты запросов, которые мешают массовой обработке. DS2API реализует балансировку по принципу Round-Robin: при наличии нескольких аккаунтов в конфигурации система автоматически распределяет запросы между ними — это увеличивает пропускную способность и снижает риск блокировки отдельного аккаунта.
Автообновление токенов
DS2API следит за актуальностью сессионных токенов. Когда токен истекает, система автоматически использует сохранённые учётные данные для повторной аутентификации и получения нового токена — подход «настроил и забыл», критически важный для долгоработающих фоновых сервисов.
Полный стек API-форматов
DS2API совместим с форматами Google Gemini, Anthropic Claude и OpenAI. Это позволяет использовать существующие кодовые базы, написанные под OpenAI или Claude, без изменений — достаточно поменять base_url.
ANTHROPIC_BASE_URL=http://127.0.0.1:5001 — DS2API автоматически обрабатывает запросы /v1/messages?beta=true.Способы развёртывания
| Способ | Кому подходит | Сложность |
|---|---|---|
| Release-бинарник | Большинству пользователей | ⭐ (легко) |
| Docker / GHCR | Контейнерные среды и облако | ⭐⭐ |
| Vercel Serverless | Уже есть Vercel-аккаунт | ⭐⭐ |
| Исходный код (Go) | Разработка и кастомизация | ⭐⭐⭐ |
Быстрый старт через Docker:
# Подготовка конфигурации
cp .env.example .env
cp config.example.json config.json
# Запуск
docker-compose up -d
# Логи
docker-compose logs -f
По умолчанию DS2API слушает порт 5001. При первом локальном запуске, если папка static/admin/ отсутствует, DS2API автоматически попробует собрать WebUI (требует Node.js/npm).
Контекст: почему DS2API актуален прямо сейчас
DeepSeek V4 — наиболее значимый релиз компании со времён R1 в январе 2025 года. V4-Pro стоит $1,74 за миллион входных токенов и $3,48 за выходные, а V4-Flash — примерно $0,14/$0,28 за миллион токенов, что делает его одной из самых дешёвых топовых моделей на рынке.
DS2API фактически открывает экосистему DeepSeek V4 для любого инструмента, написанного под OpenAI API — будь то LangChain, OpenWebUI или собственный агент.
Проект совместим с популярными AI-инструментами: Openclaw, Roocode, Claudecode, Kilocode и другими. На GitHub репозиторий набрал почти 800 звёзд и 277 форков. Для разработчиков, которые хотят использовать мощь DeepSeek V4 в собственных приложениях через привычный интерфейс OpenAI SDK — это, пожалуй, самый быстрый путь к интеграции.