feat(volcengine): add the Seed 2.1 flagship models - #38516
Conversation
The catalog carries four Volcengine Ark chat models, all Seed 2.0 -260215, so the current flagship line is missing. Adds doubao-seed-2-1-pro-260628 and doubao-seed-2-1-turbo-260628 to both the root map and the packaged backup. Limits and capabilities come from Ark's model list (docs/82379/1330310), which gives 256k context and 256k max output for both, and lists 深度思考 (reasoning), 多模态理解 (vision) and 工具调用 (tools). Each was also confirmed against POST /api/v3/chat/completions: - max_tokens=256000 accepted, 300000 rejected as invalid - reasoning_effort low/high yields 61/107 reasoning tokens on pro - an image_url data URL is ingested (prompt_tokens rises 55 -> 1353) - tool calls come back in the standard tool_calls shape supports_tool_choice stays false, matching the existing volcengine entries: a forced function is honoured, but tool_choice="none" is ignored and the model calls the tool anyway, so the parameter is only partly supported. Pricing is Ark's standard 在线推理(常规)tier from docs/82379/1544106 — pro CNY 6/1.2/30 and turbo CNY 3/0.6/15 per 1M input/cache-hit/output — converted at 6.737012 CNY/USD. Note the doc also has a 低延迟 tier at double these rates; the standard tier is used here. Change-Id: I79d9c5a9b8c3048b2acf9d73ced73bb20bee4ecd
70d3e0f to
5b8e19a
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Greptile SummaryAdds two Volcengine Seed 2.1 flagship models to both synchronized model catalogs, including pricing, limits, and capability metadata
Confidence Score: 5/5The PR appears safe to merge The current catalogs preserve the previously removed entries, and no blocking failure remains
|
| Filename | Overview |
|---|---|
| model_prices_and_context_window.json | Adds two Volcengine Seed 2.1 models without removing or changing existing catalog entries |
| litellm/model_prices_and_context_window_backup.json | Keeps the packaged backup catalog synchronized with the root catalog additions |
| tests/test_litellm/llms/volcengine/test_volcengine_model_catalog.py | Adds focused offline coverage for model registration, limits, capabilities, and relative pricing |
Reviews (2): Last reviewed commit: "feat(volcengine): add the Seed 2.1 flags..." | Re-trigger Greptile
| @@ -50139,6 +45941,36 @@ | |||
| } | |||
| ] | |||
| }, | |||
| "volcengine/doubao-seed-2-1-pro-260628": { | |||
There was a problem hiding this comment.
Catalog snapshot removes models
When callers request removed models such as azure/gpt-audio-mini, both catalogs lack their metadata, causing model lookup and cost accounting to fail
Knowledge Base Used: Provider adapters and capabilities
|
Force-pushed My clone was a few commits behind Rebuilt both JSON files from the current upstream versions and re-applied only my two entries. Verified key-by-key that the result adds exactly two keys and removes nothing: Diff is now +134/-0 across the three files, and the 7 tests still pass. |
|
@greptile-apps — that finding was real, but it's already fixed. The analysis ran 25 seconds after my force-push, so it read the previous diff:
The catalog rollback was exactly as described — my clone was a few commits behind Current head is clean. Per the PR files API:
CI is green: 21/21 checks passing. Happy to re-run the review on the current head if that's possible — otherwise the diff above should speak for itself. |
TLDR
Problem this solves:
How it solves it:
User Flow
Before (
cd63c7e5a7f9) — a user routing to Ark's current flagship gets no cost data:POST /v1/chat/completionswithmodel: "volcengine/doubao-seed-2-1-pro-260628".-260215models are listed.After (
5b8e19ab3cf1) — the same request is priced:POST /v1/chat/completionswithmodel: "volcengine/doubao-seed-2-1-pro-260628".Relevant issues
None — this is catalog data for models that shipped after the existing Ark entries.
Linear ticket
N/A (external contributor).
Pre-Submission checklist
Screenshots / Proof of Fix
Shared setup: real Ark key,
POST https://ark.cn-beijing.volces.com/api/v3/chat/completions.Before (
cd63c7e5a7f9)model_prices_and_context_window.jsonat the merge base → 0 of 2 present.After (
5b8e19ab3cf1)volcengine/doubao-seed-2-1-pro-260628: input8.906e-07, output4.453e-06, ctx 256000, max out 256000, vision/reasoning/tools all true.volcengine/doubao-seed-2-1-turbo-260628: input4.453e-07, output2.2265e-06, same limits and capabilities.doubao-seed-2-1-pro-260628→ 200 (prompt 48, completion 276);doubao-seed-2-1-turbo-260628→ 200 (prompt 48, completion 75).Type
🆕 New Feature
Caveats (if any)
supports_tool_choiceis leftfalse, matching the existing volcengine entries.This is deliberate: a forced function is honoured, but
tool_choice: "none"isignored and the model calls the tool anyway, so the parameter is only partly
supported and claiming full support would be wrong.
Prices are the CNY list prices converted at 6.737012 CNY/USD (rate captured
2026-08-26, source
open.er-api.com). If the repo prefers a different rate orwants them pinned differently, easy to adjust.
QA runbook
uv run pytest tests/test_litellm/llms/volcengine/test_volcengine_model_catalog.py -v—4 tests covering registration, limits, capabilities and the input<output price relationship.
model_prices_and_context_window_backup.jsonare stillidentical:
diff <(jq -S . model_prices_and_context_window.json) <(jq -S . litellm/model_prices_and_context_window_backup.json)→ no output (verified: the two parse equal).Final Attestation
The numbers above come from Ark's official model list (docs 82379/1330310) and
were each checked against the live endpoint, not copied from another provider's
entry. The
supports_tool_choice: falsedecision is explained in Caveats ratherthan left to look like an omission.