Skip to content

feat (volcengine) : Support Volcengine responses api - #18508

Merged
2 commits merged into
BerriAI:litellm_staging_01_20_2026from
netaart:feat/volcengine_responses_api_support_25-11-14
Jan 20, 2026
Merged

2 commits merged into
BerriAI:litellm_staging_01_20_2026from
netaart:feat/volcengine_responses_api_support_25-11-14

Conversation

@LingXuanYin

Copy link
Copy Markdown
Contributor

Relevant issues

#18507

Pre-Submission checklist

Please complete all items before asking a LiteLLM maintainer to review your PR

  • I have Added testing in the tests/litellm/ directory, Adding at least 1 test is a hard requirement - see details (see tests/test_litellm/llms/volcengine/responses/test_volcengine_responses_transformation.py)
  • My PR passes all unit tests on make test-unit (not run locally; only targeted pytest below)
  • My PR's scope is as isolated as possible, it only solves 1 specific problem

Tests executed:

  • poetry run pytest tests/test_litellm/llms/volcengine/responses/test_volcengine_responses_transformation.py -q (passes; pytest cache writes are blocked on this machine so pytest emits a cache warning)

CI (LiteLLM team)

CI status guideline:

  • 50-55 passing tests: main is stable with minor issues.
  • 45-49 passing tests: acceptable but needs attention
  • <= 40 passing tests: unstable; be careful with your merges and assess the risk.
  • Branch creation CI run
    Link: N/A (not requested yet)

  • CI run for the last commit
    Link: N/A (not requested yet)

  • Merge / cherry-pick CI run
    Links: N/A (not requested yet)

Type

  • 🆕 New Feature
  • 🐛 Bug Fix
  • 🧹 Refactoring
  • 📖 Documentation
  • 🚄 Infrastructure
  • Test

Changes

  • Added VolcEngine Responses API configuration with request validation that now auto-drops unknown fields (including nested extra_body keys) and sanitizes optional params before delegating to the OpenAI transformer.
  • Implemented Volcengine-specific response handling (URL/auth construction, streaming patching for missing fields, delete/get/list/cancel helpers) and registered the provider in exports and lazy-import registries so the router can resolve it.
  • Added coverage in tests/test_litellm/llms/volcengine/responses/test_volcengine_responses_transformation.py for param filtering/dropping, URL building, auth resolution, and response parsing.

@vercel

vercel Bot commented Dec 30, 2025 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
litellm Ready Ready Preview, Comment Jan 11, 2026 6:11pm

@LingXuanYin LingXuanYin changed the title Add Volcengine responses adapter feat: Add Volcengine responses adapter Dec 30, 2025
@LingXuanYin LingXuanYin changed the title feat: Add Volcengine responses adapter feat (proxy) : Add Volcengine responses adapter Dec 30, 2025
@LingXuanYin LingXuanYin changed the title feat (proxy) : Add Volcengine responses adapter feat (proxy) : Support Volcengine responses api Dec 30, 2025
@LingXuanYin
LingXuanYin force-pushed the feat/volcengine_responses_api_support_25-11-14 branch from 10057fc to e90f96d Compare December 30, 2025 12:57
Comment thread litellm/__init__.py Outdated
@ghost
ghost requested a review from AlexsanderHamir January 3, 2026 18:57
@ghost

ghost commented Jan 3, 2026

Copy link
Copy Markdown

@AlexsanderHamir if the lazy load changes look okay to you, please merge this PR

@AlexsanderHamir

Copy link
Copy Markdown
Contributor

Acked, will review.

@LingXuanYin

Copy link
Copy Markdown
Contributor Author

Hi! Just checking in on this PR. Are there any blockers on the review side? Please let me know if I can help in any way. Thanks! @krrishdholakia @AlexsanderHamir

@LingXuanYin

Copy link
Copy Markdown
Contributor Author

Hi! I see the review is already approved. Could we please merge this when you have a moment? Let me know if anything else is needed from my side. Thanks! @AlexsanderHamir @krrishdholakia

…iable `origin` is assigned to but never used

fix llms/volcengine/responses/transformation.py:95: error: Argument "headers" to "VolcEngineError" has incompatible type

add more supported optional params

removed redundant manual logging/utils fallbacks so litellm/__init__.py uses the registry only.
@LingXuanYin

Copy link
Copy Markdown
Contributor Author

rebased & confict solved

@LingXuanYin LingXuanYin changed the title feat (proxy) : Support Volcengine responses api feat (volcengine) : Support Volcengine responses api Jan 12, 2026
@tzwm

tzwm commented Jan 15, 2026

Copy link
Copy Markdown

@AlexsanderHamir @krrishdholakia Could you please merge this? Thanks a lot!

@ghost
ghost changed the base branch from main to litellm_staging_01_20_2026 January 20, 2026 03:02
@ghost
ghost merged commit 004bde2 into BerriAI:litellm_staging_01_20_2026 Jan 20, 2026
6 of 7 checks passed
fzowl pushed a commit to fzowl/litellm that referenced this pull request Jun 24, 2026
* Add Volcengine responses adapter

* fix llms/volcengine/responses/transformation.py:507:9: F841 Local variable `origin` is assigned to but never used

fix llms/volcengine/responses/transformation.py:95: error: Argument "headers" to "VolcEngineError" has incompatible type

add more supported optional params

removed redundant manual logging/utils fallbacks so litellm/__init__.py uses the registry only.
This pull request was closed.

This branch was successfully deployed

1 active deployment
Preview — 0e2d4145 Deployed Jan 11, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants