Repolode
deepseek-ai

deepseek-ai/deepseek-recipe

Библиотеки на Rust и привязки для Python, которые преобразуют форматы LLM API в диалоги DeepSeek и собирают промпты.

Open source альтернатива:DeepSeek-V4-ProDeepSeek-V4.1-Flash

Звёзды
1,254
Форки
116
Открытые issues
29
Последний коммит
вчера

Что это?

deepseek-recipe — набор крейтов на Rust с привязками для Python, который позволяет создать единый слой между бэкендом инференса и API-клиентами, работающими по разным протоколам. Он отвечает за связку протоколов: принимает запрос в формате Messages, Chat Completions или Responses, преобразует его в Conversation, собирает из диалога промпт (или последовательность token IDs) для моделей DeepSeek, а затем разбирает вывод модели и формирует ответ в формате, который запросил клиент.

Библиотека намеренно оставляет сложные части вызывающему коду. Инференс модели, выполнение инструментов и HTTP-транспорт предоставляются извне; крейты занимаются только преобразованием, сборкой промптов и разбором данных. Поддерживаются текст и изображения, режим thinking, вызовы инструментов со стороны клиента, продолжение Chat Completions с помощью `prefix`, потоковые ответы, структурированный вывод через `json_schema` или `regex` и передача logprobs без изменений. Изображения можно передавать в base64 или по внешним URL; для DeepSeek V4.1 они проходят предобработку с помощью OpenCV. Для сервисов, загружающих данные с недоверенных URL, предусмотрена опция `DestinationFilter`. Также поддерживаются промпты, закодированные токенизатором: это позволяет подсчитывать токены рассуждений и подбирать `max_tokens` с учётом ограничения контекста модели.

Rust и Python поддерживаются на равных: пример на Rust показывает, как прочитать запрос Chat Completions с помощью serde и собрать промпт для V4.1; то же самое можно сделать с пакетом Python `deepseek_recipe` (Python 3.10+). Браузерное демо собирает промпты, подсвечивает специальные токены и преобразует вывод модели в ответы Chat Completions, Responses или Messages.

Ключевые возможности

  • 01Преобразует запросы Messages, Chat Completions и Responses в общий формат Conversation, а вывод модели разбирает обратно в любой из этих форматов.
  • 02Собирает промпты из диалогов для DeepSeek V4 и V4.1 или кодирует их в token IDs с помощью подключённого токенизатора.
  • 03Поддерживает потоковые ответы, режим thinking, вызовы инструментов со стороны клиента и продолжение Chat Completions с помощью `prefix`.
  • 04Обрабатывает структурированный вывод через `response_format` в Chat Completions (`json_schema` или `regex`) и `text.format` в Responses (`json_schema`).
  • 05Принимает изображения в base64 или по внешним URL и выполняет их предобработку с помощью OpenCV для V4.1.
  • 06Подбирает `max_tokens` с учётом ограничения контекста: по умолчанию 8192 вне режима thinking, 65536 в режиме thinking и 131072 при уровне reasoning effort `max`.
  • 07Преобразует `logprobs` и `top_logprobs` в `InferenceOptions`, оставляя вычисление вероятностей бэкенду.
  • 08Включает привязки для Python (`deepseek_recipe`), пример сервера на Axum, пример сервера на FastAPI и браузерное демо.

Сценарии использования

  • Создать обёртку для собственного бэкенда инференса DeepSeek, чтобы он мог обслуживать клиентов Messages, Chat Completions и Responses.
  • Добавить потоковую передачу, вызовы инструментов или структурированный JSON-вывод к существующему эндпоинту модели, не переписывая обработку каждого протокола.
  • Подготовить данные для обучения или оценки, преобразовав диалоги в точные промпты для модели.
  • Подсчитывать токены в промптах и выводе рассуждений или проверять `max_tokens` с учётом ограничения контекста модели.
  • Отлаживать форматирование промптов и разбор вывода с помощью встроенного браузерного демо.

Быстрый старт

  1. 1

    Установите пакет Python

    python3 -m pip install deepseek-recipe
  2. 2

    Преобразуйте запрос Chat Completions и отобразите промпт с помощью примера кода из README

Что важно знать

  • Библиотека не выполняет инференс модели, запуск инструментов или HTTP-передачу данных — всё это должен предоставить вызывающий код.
  • DeepSeek V4 не поддерживает изображения, поэтому их содержимое заменяется текстовым заполнителем.
  • Для примеров на Rust требуется сборка из исходного кода, чтобы использовать зависимости для работы с изображениями. README описывает это в отдельном руководстве по разработке.

Темы

Частые вопросы

Что такое deepseek-recipe?
Библиотеки на Rust и привязки для Python, которые преобразуют форматы LLM API в диалоги DeepSeek и собирают промпты. deepseek-recipe — набор крейтов на Rust с привязками для Python, который позволяет создать единый слой между бэкендом инференса и API-клиентами, работающими по разным протоколам. Он отвечает за связку протоколов: принимает запрос в формате Messages, Chat Completions или Responses, преобразует его в Conversation, собирает из диалога промпт (или последовательность token IDs) для моделей DeepSeek, а затем разбирает вывод модели и формирует ответ в формате, который запросил клиент.
deepseek-recipe можно использовать бесплатно? Какая у него лицензия?
deepseek-recipe распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
deepseek-recipe всё ещё поддерживается?
Активно поддерживается. Последний коммит в deepseek-recipe — 19 окт. 2026 г..
Для чего можно использовать deepseek-recipe?
Создать обёртку для собственного бэкенда инференса DeepSeek, чтобы он мог обслуживать клиентов Messages, Chat Completions и Responses. Добавить потоковую передачу, вызовы инструментов или структурированный JSON-вывод к существующему эндпоинту модели, не переписывая обработку каждого протокола. Подготовить данные для обучения или оценки, преобразовав диалоги в точные промпты для модели. Подсчитывать токены в промптах и выводе рассуждений или проверять `max_tokens` с учётом ограничения контекста модели. Отлаживать форматирование промптов и разбор вывода с помощью встроенного браузерного демо.
Как установить deepseek-recipe?
Установите пакет Python: python3 -m pip install deepseek-recipe Преобразуйте запрос Chat Completions и отобразите промпт с помощью примера кода из README
Где скачать deepseek-recipe?
Исходный код и инструкции по установке — на GitHub: https://github.com/deepseek-ai/deepseek-recipe

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты