Doubao Seed 2.0 API without a Volcengine account
2 min readWritten by genmux API Team
Doubao is one of the strongest models to come out of China's LLM race this year, but reaching it directly means a Volcengine account, region-specific billing, and a balance separate from every other model you use. genmux exposes the full Doubao Seed 2.0 line through the same key and endpoint as DeepSeek and Qwen3. (Kimi K3 is paused while its upstream is fixed — it'll return here once it's back.)
Doubao Seed 2.0: four sizes, one family
| Model | Best for | Context | Thinking | Price per 1M tokens (in / out) |
|---|---|---|---|---|
doubao-seed-2-pro | Flagship reasoning, web-aware answers | 256,000 | yes | $0.782 / $3.755 |
doubao-seed-2-code | Coding tasks | 256,000 | yes | $0.782 / $3.755 |
doubao-seed-2-lite | Balanced cost and quality | 256,000 | yes | $0.157 / $0.782 |
doubao-seed-2-mini | Cheapest tier, simple tasks | 256,000 | no | $0.027 / $0.626 |
All four share a 256,000-token context window, which is generous for document-heavy chat without reaching for a specialist long-context model. These prices sit above Volcengine's own list rate — our upstream cost here is higher than list. The pitch is one key and payment options Volcengine's own console doesn't offer, not a lower number than going direct.
Web search on Doubao
doubao-seed-2-pro accepts a genmux extension, web_search, alongside the standard chat fields — set it to let the model pull in current information instead of answering from training data alone:
from openai import OpenAI
client = OpenAI(base_url="https://api.genmux.tech/v1", api_key="nb_live_...")
resp = client.chat.completions.create(
model="doubao-seed-2-pro",
messages=[{"role": "user", "content": "What's the latest stable version of PostgreSQL?"}],
max_tokens=300,
web_search=True,
)
print(resp.choices[0].message.content)
print(resp.usage)Search results the model consults count toward prompt_tokens the same way any other context would — there's no separate line item for the search itself, so check usage.cost after enabling it on a sample of traffic before rolling it out broadly.
Same integration as everywhere else
Doubao speaks the identical OpenAI-compatible schema as every other model on the platform — messages, max_tokens, temperature, top_p, stop, stream all work the same way, and usage.cost/cost_source report the same way too. Streaming works identically as well; see the SSE streaming guide for the exact parsing code if you're not using the OpenAI SDK.
Picking between them
doubao-seed-2-minifor high-volume, simple tasks where cost matters most.doubao-seed-2-liteas the default Doubao pick — solid quality-to-cost ratio with thinking available.doubao-seed-2-prowhen you need the strongest Doubao model, especially withweb_searchfor anything time-sensitive.doubao-seed-2-codefor coding tasks specifically — same price and context as Pro, tuned differently.
Getting started
Doubao is live behind the same key as the rest of the catalogue, billed from one prepaid balance you can top up with USDT today (card and SBP are being enabled). Model page: Doubao Seed 2.0 Pro. Full endpoint reference is in the docs.