Unit Tests: Proxy DB Operations / proxy-db (auth-checks, tests/proxy_unit_tests/test_auth_checks.py tests/proxy_unit_tests/test_user_api_key_auth.py, 20, 8) (push) Has been cancelled
Unit Tests: Proxy DB Operations / proxy-db (remaining, tests/proxy_unit_tests --ignore=tests/proxy_unit_tests/test_key_generate_prisma.py --ignore=tests/proxy_unit_tests/test_auth_checks.py --ignore=tests/proxy_unit_tests/test_user_api_key_auth.py, 20, 8) (push) Has been cancelled
- test_structured_outputs_manual.py: Manual integration tests against real APIs
- verify_request_transformation.py: Unit-level verification without API calls
- TESTING_GUIDE.md: Complete guide for testing the fix
- VALIDATION_SUMMARY.md: Detailed validation analysis and recommendations
These files help validate the structured outputs fix manually since
automated integration tests require API keys.
This commit fixes the issue where the output_format parameter was not
properly handled in the /v1/messages endpoint for Claude models on
Azure Foundry, Amazon Bedrock, and other providers.
Changes:
1. Added output_format field to AnthropicMessagesRequestOptionalParams
TypedDict to prevent it from being stripped from requests
2. Added "output_format" to the list of supported parameters in
get_supported_anthropic_messages_params()
3. Updated _update_headers_with_anthropic_beta() to automatically
inject the structured-outputs-2025-11-13 beta header when
output_format is present
4. Added comprehensive test suite to verify structured outputs
functionality
The fix applies to all providers using the /v1/messages endpoint:
- Anthropic (direct)
- Amazon Bedrock
- Azure Foundry (Azure AI)
- Vertex AI
All these implementations inherit from AnthropicMessagesConfig, so
the fix automatically propagates to all of them.
Fixes issue where structured outputs returned Markdown text instead
of JSON when using /v1/messages endpoint, even though direct provider
API calls worked correctly.
Add documentation explaining the difference between model formats:
- `gemini/model` → Gemini API (simple API key)
- `vertex_ai/model` → Vertex AI (GCP credentials)
- `model` (no prefix) → defaults to Vertex AI
This addresses user confusion when models without prefix require
GCP authentication instead of simple API key auth.
Ref #8424
- Add google-cloud-aiplatform as optional dependency in pyproject.toml
- Add 'google' extra for easy installation: pip install litellm[google]
- Improve error messages when Google SDK is not installed to guide users
Fixes#5483
Replace independent auto-incrementing chart versioning with 1-1 sync
to LiteLLM version. This allows users to easily map Helm chart versions
to LiteLLM versions without needing to inspect appVersion.
Changes:
- Remove auto-increment logic that read from OCI registry
- Chart version now equals LiteLLM tag without 'v' prefix (v1.81.0 -> 1.81.0)
- appVersion equals full Docker tag (v1.81.0)
- Update both ghcr_deploy.yml and ghcr_helm_deploy.yml workflows
Before: helm chart 0.1.837 -> user has to guess LiteLLM version
After: helm chart 1.81.0 -> matches LiteLLM v1.81.0
References:
- https://codefresh.io/docs/docs/ci-cd-guides/helm-best-practices/