Что на самом деле означает “Doubao API”
Doubao (豆包) — потребительский чат-бот ByteDance. Его международное приложение называется Dola, а раньше называлось Cici. В основе обоих продуктов лежит исследовательское семейство Seed от ByteDance, и именно это семейство, а не чат-приложение, доступно через API. Seed отвечает за текст, Seedream создаёт изображения, а Seedance — видео. Volcano Engine (его международный бренд — BytePlus) — облачная платформа, на которой они размещены.
Главная ошибка — воспринимать эти названия как единую линейку, где большее число всегда означает лучшую модель. Это не уровни одной системы, а разные задачи. Вы не выбираете «Seedance вместо Seed» так же, как выбираете GPT-5 вместо GPT-4; нужно выбрать модель, тип результата которой соответствует вашему проекту. После этого вопрос «какую модель Doubao вызывать?» превращается из исследовательской задачи в обычную таблицу соответствий.
Вот такая таблица для идентификаторов моделей, которые действительно размещены в GPT Proto:
| Ваша задача |
Модель |
Результат |
| Генерация изображений |
Seedream 5.0 (новейшая), 4.5, 4.0 |
Изображение |
| Генерация видео |
Seedance 2.0, 2.0 Fast, 1.5 Pro |
Видео (со звуком) |
| Текст / рассуждения |
Doubao 1.5 Pro, Seed 1.6 Thinking |
Текст |
| Самый дешёвый текст / высокая пропускная способность |
Seed 1.6 Flash |
Текст |
| Понимание изображений, OCR |
Doubao 1.5 Vision Pro, Seed 1.6 |
Текст из изображения |
Обратите внимание на названия: в коде передаётся полный идентификатор модели — например doubao-seedream-5-0-260128 — точно в том виде, как показано в примерах ниже, включая дефисы и суффикс с датой. Эта длинная строка является буквальным параметром API; короткие названия выше используются только для удобства.
Отдельно стоит упомянуть программирование. ByteDance выпускает специализированную модель Seed 2.0 Code, но в GPT Proto она отмечена как устаревшая, поэтому я не буду её рекомендовать. Для задач, связанных с кодом, ближайший актуальный вариант — Seed 1.6 Thinking. Это модель для рассуждений, а не специализированная модель для программирования. Если специализированная модель для кода — ключевая часть вашего проекта, стоит посмотреть другие варианты. Лучше сказать об этом прямо, чем преувеличивать возможности.
Почему бы просто не использовать Volcano Engine напрямую?
Можно и так. ByteDance действительно предоставляет международную платформу, и разработчик не из Китая может зарегистрироваться. Вопрос в том, сколько неудобств повлечёт каждый вариант, поэтому рассмотрим четыре маршрута:
Потребительское приложение Dola бесплатно, но это не API: генерация видео ограничена регионами, а само приложение недоступно даже в США, Канаде и Австралии. Трюк с VPN и китайским аккаунтом работает для приложения нестабильно и постоянно ломается; для программного доступа он ничего не даёт. Volcano Engine / BytePlus напрямую — это полноценный API, но консоль по умолчанию на китайском, при регистрации запрашивается удостоверение личности или подтверждение компании, а также появляется ещё одна платёжная связь. Агрегированная точка доступа — именно её мы используем в этом руководстве — даёт один ключ, один базовый URL и вызовы в стиле OpenAI без китайского удостоверения личности. Цена этого удобства — доверие к промежуточному сервису, поэтому перед использованием в продакшене нужно проверить его доступность и изучить тарифы.
Коротко: если вы хотите уже сегодня вызывать Seedream или Seedance из кода, агрегированная точка доступа устраняет два главных препятствия — проверку личности и китайскую консоль. Но изучать тарифы всё равно придётся самостоятельно: именно на видео многие сталкиваются с неожиданными расходами.
Сколько на самом деле стоит каждая модель
Изображения — фиксированная цена за изображение
Seedream тарифицируется за каждое созданное изображение, поэтому указанная на странице сумма — это сумма, которую вы платите. Обратите внимание: цены не упорядочены по версиям: 4.5 дороже 5.0, а 5.0 дороже 4.0.
| Модель изображений |
GPT Proto |
Рыночный ориентир |
Примечание |
| Seedream 5.0 |
$0.0298 |
$0.035 |
новейшая, на 15% дешевле ориентира |
| Seedream 4.5 |
$0.034 |
$0.04 |
самая дорогая из трёх |
| Seedream 4.0 |
$0.0255 |
$0.03 |
самая дешёвая, контекст 128K |
Видео — цена зависит от конфигурации
Здесь особенно важно разобраться. Видео Seedance оплачивается не по фиксированной цене за ролик: стоимость зависит от разрешения, соотношения сторон, длительности и наличия звука. Цена, указанная на странице модели, относится к базовой конфигурации. Более тяжёлая конфигурация стоит дороже — например, реальный ролик 720p / 16:9 / 5 секунд со звуком обошёлся примерно в $0.605, что заметно выше базовой цены.
| Конфигурация (Seedance 2.0 fast) |
Примерная стоимость |
| 480p / 1:1 / 4s (базовая) |
$0.215 |
| 720p / 16:9 / 5s / звук включён |
~$0.605 |
Учтите два момента. Во-первых, Seedance 2.0 здесь примерно на 10% дороже рыночного ориентира, а не дешевле. Если напрямую в Dreamina от ByteDance ролик получается дешевле, это действительно так. Причина использовать API — стабильный программный доступ и отсутствие кредитной системы, а не более низкая цена. Во-вторых, поскольку стоимость зависит от параметров, не рассчитывайте бюджет на видео по заголовочной цене; проверьте оценку в панели управления для нужных настроек.
Текст — за миллион токенов
Используется стандартная токеновая тарификация. Самая дешёвая точка входа — Seed 1.6 Flash, а наиболее дорогие — уровни Vision Pro.
| Текстовая модель |
Ввод /1M |
Вывод /1M |
Лучше всего подходит для |
| Seed 1.6 Flash |
$0.0172 |
$0.1815 |
высокая пропускная способность, низкая задержка |
| Doubao 1.5 Pro |
$0.0965 |
$0.2424 |
универсальные двуязычные рассуждения |
| Seed 1.6 Thinking |
$0.0965 |
$0.9706 |
цепочка рассуждений / математика |
| Doubao 1.5 Vision Pro |
$0.3641 |
$1.0924 |
анализ документов, OCR |
Постоянного бесплатного уровня API здесь нет. Оплата взимается за каждый вызов с самого первого запроса, поэтому самый дешёвый способ поэкспериментировать — Seed 1.6 Flash: примерно два цента за миллион входных токенов.
Быстрый старт: один ключ, два API-интерфейса
Для начала вам понадобится только API-ключ GPT Proto из панели управления. Но перед первым вызовом нужно знать одну важную вещь: API предоставляет два интерфейса, и работают они по-разному.
Текстовый чат совместим с OpenAI и работает синхронно по адресу /v1/chat/completions. Изображения и видео запускаются как асинхронные задачи по адресу /api/v3/doubao/… — вы отправляете запрос, получаете идентификатор результата, а затем опрашиваете второй endpoint, пока файл не будет готов.
И ещё одна деталь, которая может стоить первого часа работы: заголовок авторизации для этих интерфейсов различается. Документация чат-эндпоинта передаёт ключ без изменений, а эндпоинты изображений и видео требуют добавить перед ним «Bearer ». Если перепутать форматы, вы получите ошибку 401 «Invalid signature». Соблюдайте различие — и всё остальное будет обычным HTTP.
Вызов текстовых моделей (совместимость с OpenAI)
Поскольку текстовый интерфейс использует формат OpenAI, официальный OpenAI SDK можно направить на него, изменив две вещи: базовый URL и модель. Сначала пример cURL в формате документации, затем Python.
curl -X POST "https://gptproto.com/v1/chat/completions" \
-H "Authorization: YOUR_GPTPROTO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seed-1-6-250615",
"messages": [
{ "role": "user", "content": "Who are you?" }
],
"stream": false
}'
from openai import OpenAI
client = OpenAI(
api_key="YOUR_GPTPROTO_API_KEY",
base_url="https://gptproto.com/v1",
)
resp = client.chat.completions.create(
model="doubao-seed-1-6-250615", # or doubao-1-5-pro-32k-250115
messages=[{"role": "user", "content": "Who are you?"}],
stream=False,
)
print(resp.choices[0].message.content)
Выберите Doubao 1.5 Pro для более сильных рассуждений или Seed 1.6 Flash для самых дешёвых и быстрых ответов — достаточно изменить поле model на идентификатор нужной модели. В документации описаны ошибки, с которыми вы действительно можете столкнуться: 401 «Invalid signature» (неверный ключ или неправильный заголовок), 403 «Insufficient balance» (закончился кредит) и 503 «Content policy violation» (запрос заблокирован). Последняя ошибка особенно важна: у этих эндпоинтов есть политика контента, поэтому не рассчитывайте на неограниченную генерацию.
Генерация изображений через API Seedream
Seedream использует асинхронную схему: сначала POST для отправки задачи, затем GET для получения результата. Тело запроса небольшое — промпт, размер и два логических параметра.
# 1. Submit the task
curl --request POST \
"https://gptproto.com/api/v3/doubao/doubao-seedream-5-0-260128/text-to-image" \
--header "Authorization: Bearer YOUR_GPTPROTO_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"prompt": "Young woman with auburn hair reading in a rustic coffee shop, warm Edison-bulb light, rain on the window, photorealistic, 8k, 35mm lens, f/1.8",
"size": "2048x2048",
"enable_base64_output": false,
"enable_sync_mode": false
}'
# 2. Poll for the result using the id the submit call returned
curl --request GET \
"https://gptproto.com/api/v3/predictions/YOUR_RESULT_ID/result" \
--header "Authorization: Bearer YOUR_GPTPROTO_API_KEY"
Тот же процесс на Python с небольшим циклом опроса:
import time, requests
API_KEY = "YOUR_GPTPROTO_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}
# 1. Submit
submit = requests.post(
"https://gptproto.com/api/v3/doubao/doubao-seedream-5-0-260128/text-to-image",
headers=HEADERS,
json={
"prompt": "Young woman reading in a rustic coffee shop, warm Edison-bulb light, 8k",
"size": "2048x2048",
"enable_base64_output": False,
"enable_sync_mode": False,
},
)
result_id = submit.json()["id"] # confirm the exact field name in the docs response
# 2. Poll until the image is ready
while True:
r = requests.get(
f"https://gptproto.com/api/v3/predictions/{result_id}/result",
headers={"Authorization": f"Bearer {API_KEY}"},
)
data = r.json()
if data.get("status") in ("succeeded", "failed"):
break
time.sleep(2)
print(data)
Два практических замечания. Разделитель размера различается в разных версиях: в примере Seedream 5.0 используется 2048x2048 с «x», а в примерах 4.x — 2048*2048 со звёздочкой. Поэтому копируйте формат для конкретной вызываемой модели. Параметр enable_sync_mode позволяет отказаться от опроса: установите его в true, и ответ вернётся сразу, но соединение будет занято дольше.
Генерация видео через API Seedance
Видео использует ту же схему отправки и последующего опроса, но тело запроса богаче: соотношение сторон, длительность, разрешение, переключатель звука, фиксация камеры и seed. Практическое отличие только одно — время. Видео создаётся значительно дольше изображения, поэтому цикл опроса должен работать заметно дольше нескольких секунд.
# 1. Submit
curl --request POST \
"https://gptproto.com/api/v3/doubao/doubao-seedance-2-0-260128/text-to-video" \
--header "Authorization: Bearer YOUR_GPTPROTO_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"prompt": "Cinematic wide shot of a sun-drenched Maldives beach, friends playing volleyball, turquoise water, 8k, 35mm lens",
"aspect_ratio": "16:9",
"duration": 5,
"resolution": "720p",
"generate_audio": true,
"camera_fixed": false,
"seed": -1
}'
# 2. Poll (expect this to take a while for video)
curl --request GET \
"https://gptproto.com/api/v3/predictions/YOUR_RESULT_ID/result" \
--header "Authorization: Bearer YOUR_GPTPROTO_API_KEY"
Выбирайте Seedance 2.0 Fast, если нужны меньшая стоимость и более быстрый результат и вы готовы немного пожертвовать качеством; Seedance 1.5 Pro подойдёт, если новейшая модель избыточна. Помните правило тарификации: длительность, разрешение и звук определяют стоимость, поэтому 5-секундный ролик 720p со звуком — это случай примерно за ~$0.60, а не базовая цена.
Что реально создают с помощью Doubao API
Два результата видеомодели с точными промптами, которые их создали. Оба проходят через описанный выше код с отправкой и опросом — меняются только промпт и идентификатор модели.
Реализм трансляции F1 — Seedance 2.0
Seedance 2.0 особенно хорошо справляется с реалистичной стилистикой спортивных трансляций и движением, а также может сохранять идентичность персонажа по референсу. Этот промпт использует все три возможности:
Prompt
Ultra-realistic F1 live TV broadcast screenshot, identity preserved exactly from reference image.
Young woman sitting in the VIP paddock / team garage during a Formula 1 race, shown on the official live race broadcast as the girlfriend of an F1 driver. It is the final lap, listening to the team radio through a professional racing headset, watching the garage monitors nervously, leaning forward with one hand near her mouth, proud tense expression.
She wears a fitted white tank top, oversized racing team jacket draped over her shoulders, large black team-radio headset with boom mic, gold jewelry, soft glam makeup. A slim paddock pass hangs from her neck.
Realistic F1 broadcast graphics: “FINAL LAP” banner, lap counter, driver timing tower on the left, small F1-style logo bug, “LIVE” indicator, lower-third identifying her as paddock guest.
Team staff, headsets, garage screens, mechanics blurred around her. Telephoto broadcast camera from across the garage, compression artifacts, digital noise, bright paddock lighting, natural skin texture, no smoothing, 8k.
Эмоции в нескольких сценах — Seedance 2.0 Fast
Быстрая версия тоже справляется с последовательностью из пяти сцен, сохраняя непрерывность и настроение. Именно этот ролик показан в начале руководства:
Prompt
An extremely frail elderly ballerina, 80s, in a tattered tutu, performs alone on an abandoned theater stage lit only by a single spotlight.
Shot 1: Close-up on her gnarled, arthritic feet sliding into first position on the dusty stage floor, the sound of creaking wood beneath her.
Shot 2: Wide shot — she raises her arms overhead with trembling elegance, spine straightening inch by inch, empty velvet seats stretching into darkness.
Shot 3: Medium shot — she begins to turn, slowly then faster, her tutu catching the light, dust swirling around her ankles like smoke.
Shot 4: Low-angle shot — she launches into a grand jeté, suspended in the air for a breathless moment, face locked in fierce concentration.
Shot 5: She lands, staggers one step, stands perfectly still — chest heaving, tears streaming silently — and takes a deep, solitary bow to no one.
The mood is bittersweet and haunting, soaked in faded glory and unbroken love for a life lived in motion.
Есть оговорка, которую признают и собственные примечания модели: в быстрых сценах с большим количеством движения могут появляться зернистость текстур и отдельные нарушения последовательности. Для ключевых кадров закладывайте одну-две повторные генерации, а не рассчитывайте, что первый результат сразу можно использовать.
Текст и мультимодальность вкратце
Если вас интересует текстовая часть “doubao api”, модели распределяются так. Doubao 1.5 Pro — универсальная двуязычная модель для рассуждений; Seed 1.6 Flash — дешёвый и быстрый вариант; уровни Vision Pro анализируют документы и выполняют OCR. Все они используют показанный выше формат OpenAI.
На этой платформе Doubao выделяется не универсальным фронтирным чатом — его главное преимущество в моделях изображений и видео. Специализированная модель для программирования Seed 2.0 Code устарела и сейчас недоступна как актуальный вариант. Используйте текстовые модели, если хотите недорогой двуязычный инференс вместе с вызовами изображений и видео под одним ключом, а не потому, что они превзойдут западную фронтирную модель в рассуждениях на английском.
Примечания о соответствии требованиям и закупках
Поскольку ByteDance также владеет TikTok, при выборе Doubao возникают вопросы закупок, которые не видны при чисто техническом сравнении. Для большинства коммерческих задач — маркетингового контента, прототипов и внутренних инструментов — эти модели подходят. Для регулируемых отраслей, государственных или оборонных проектов, а также случаев, когда место хранения данных закреплено договором, проводите тщательную проверку или выбирайте западную модель. Некоторые заказчики исключат Doubao только по политическим требованиям, и это обоснованное решение, не связанное с качеством модели.
Что касается контента, помните об ошибке 503 «Content policy violation»: эти эндпоинты применяют контентную политику и будут отклонять некоторые запросы. Проектируйте приложение с учётом этого, а не рассчитывайте на неограниченную генерацию.
Начните создавать
Выберите модель под свою задачу и возьмите формат запроса с её страницы: Seedream 5.0 для изображений, Seedance 2.0 для видео. Перед подключением к продакшену проверьте актуальные цены на странице модели — особенно для видео, где стоимость определяется конфигурацией.
Если вам нужен не API, а обзор Doubao на уровне продукта — что это за приложение, чем оно отличается от ChatGPT и как им пользоваться, — это уже другая тема: прочитайте наш полный обзор Doubao AI.