What's Changed
- Fix/nova grounding by @jquinter in #19598
- add Vertex_AI llm credentials sensitive keywords "vertex_credentials" by @ruanjf in #19551
- Bugfix/19481 num retries env var type by @moh-dev-stack in #19507
- Fix gpt-image-1.5 cost calculation not including output image tokens by @Chesars in #19515
- chore: Add context for volcengine models (deepseek-v3-2, glm-4-7, kimi-k2-thinking) by @yfge in #19335
- feat(datadog): add agent support for LLM Observability by @Harshit28j in #19574
- feat: add datadog cost management support and fix startup callback issue by @Harshit28j in #19584
- fix: recursive pydantic issue by @Harshit28j in #19531
- feat(vercel_ai_gateway): add embeddings support by @Chesars in #19660
- feat: support role_mappings from environment variables by @formorter in #19498
- a2a agent Header-Based Context Propagation by @houdataali in #19504
- fix(ui): Change default key type from 'Default' to 'LLM API' for impr… by @priyam-that in #19516
- fix(rag): use router for completion in RAG query pipeline by @marcosgriselli in #19550
- [Fix] Password comparison with non-ASCII characters by @jgreek in #19568
- Feature/guardrail model argument by @jquinter in #19619
- fix: propagate JWT auth metadata to OTEL spans by @Harshit28j in #19627
- fix(docker): use correct schema path for prisma generation by @Harshit28j in #19631
- [Feature] UI - Virtual Keys: Auto Truncation of Table Values by @yuneng-jiang in #19718
- fix: args issue & refactor into helper function to reduce bloat for b… by @Harshit28j in #19720
- fix(proxy): support slashes in google generateContent model names by @jayy-77 in #19737
- Fix/non standard mcp url pattern by @jquinter in #19738
- add callbacks and labels to prometheus by @Harshit28j in #19708
- feat: add clientip and user agent in metrics by @Harshit28j in #19717
- fix: optimize logo fetching and resolve mcp import blockers by @Harshit28j in #19719
- feat: tpm-rpm limit in prometheus metrics by @Harshit28j in #19725
- add timeout to onyx guardrail by @tamirkiviti13 in #19731
- fix(proxy): use return value from CustomLogger.async_post_call_success_hook by @michelligabriele in #19670
- bump: version 1.81.3 → 1.81.4 by @AlexsanderHamir in #19793
- fix: server rooth path by @Harshit28j in #19790
- refactor: extract transport context creation into separate method by @AlexsanderHamir in #19794
- Make test_get_users_key_count deterministic by creating dedicated test user by @AlexsanderHamir in #19795
- Add test for Router.get_valid_args, fix router code coverage encoding by @AlexsanderHamir in #19797
- Fix test_mcp_server_manager_config_integration_with_database cancellation error by @AlexsanderHamir in #19801
- fix: make HTTPHandler mockable in OIDC secret manager tests by @AlexsanderHamir in #19803
- Messages api bedrock converse caching and pdf support by @colinlin-stripe in #19785
- [Feat] enable progress notifications for MCP tool calls by @houdataali in #19809
- [Feat] CLI Auth - Add configurable CLI JWT expiration via environment variable by @ishaan-jaff in #19780
- fix(ui): prevent clearing content filter patterns when editing guardrail by @yogeshwaran10 in #19671
- [Infra] CI/CD - Fixing Flaky Tests in OIDC and Email by @yuneng-jiang in #19819
- Fix(#19781): Unable to reset user max budget to unlimited by @yogeshwaran10 in #19796
- CI/CD: Increase retries and stabilize litellm_mapped_tests_core by @AlexsanderHamir in #19826
- Fix broken mocks in 6 flaky tests to prevent real API calls by @AlexsanderHamir in #19829
- [Feat] Add UI for /rag/ingest API - upload docs, pdfs etc to create vector stores by @ishaan-jaff in #19822
- docs(readme): add OpenAI Agents SDK to OSS Adopters by @Chesars in #19820
- [Fix] UI - Create Key: Expire Key Input Duration by @yuneng-jiang in #19807
- [Feature] UI - Feedback Prompts: Option To Hide Prompts by @yuneng-jiang in #19831
- [Feature] UI - Add Light/Dark Mode Switch for Development by @yuneng-jiang in #19804
- [Fix] UI - Internal User: Bulk Add by @yuneng-jiang in #19721
- Litellm release notes 01 26 2026 by @krrishdholakia in #19836
- Litellm release notes 01 26 2026 by @krrishdholakia in #19838
- feat: Add model_id label to Prometheus metrics (#18048) by @krrishdholakia in #19678
- fix(models): set gpt-5.2-codex mode to responses for Azure and OpenRouter by @Chesars in #19770
- fix(responses): fix custom_llm_provider for provider-specific params by @Chesars in #19798
- fix(azure): use generic cost calculator for audio token pricing by @Chesars in #19771
- fix(xai): correct cached token cost calculation for xAI models by @Chesars in #19772
- fix: token calculations and refactor by @Harshit28j in #19696
- fix(prometheus): safely handle None metadata in logging to prevent At… by @Harshit28j in #19691
- fix: resolve 'does not exist' migration errors as applied in setup_da… by @Harshit28j in #19281
- Fix /batches to return encoded ids (from managed objects table) by @ephrimstanley in #19040
- Fix: ensure function content is valid JSON for GigaChat by @natimofeev in #19232
- Fix: A2A Python SDK URL by @Sameerlite in #19832
- Litellm oss staging 01 23 2026 by @krrishdholakia in #19617
- Litellm oss staging 01 24 2026 by @krrishdholakia in #19692
- fix(proxy): support slashes in google generateContent model names (#1… by @krrishdholakia in #19753
- Add grok reasoning content by @Sameerlite in #19850
- Fix: Stream the download in chunks for image handling by @Sameerlite in #19847
- Add Gemini Robotics-ER 1.5 preview support by @Sameerlite in #19845
- [Docs]Add sarvam usage documentation by @Sameerlite in #19844
- Translate advanced-tool-use to Bedrock-specific headers for Claude Opus 4.5 by @Sameerlite in #19841
- feat: add feature to make silent calls by @Harshit28j in #19544
- fix(enterprise): correct error message for DISABLE_ADMIN_ENDPOINTS by @michelligabriele in #19861
- fix(proxy): handle agent parameter in /interactions endpoint by @michelligabriele in #19866
- [Fix] /team/member_add User Email and ID Verifications by @yuneng-jiang in #19814
- [Fix] SSO Email Case Sensitivity by @yuneng-jiang in #19799
- fix(bedrock): support tool search header translation for Sonnet 4.5 by @michelligabriele in #19871
- [Feat] RAG API - Add support for using s3 Vectors as Vector Store Provider for /rag/ingest by @ishaan-jaff in #19888
- [Feat] RAG API - Add s3_vectors as provider on /vector_store/search API + UI for creating + PDF support for /rag/ingest by @ishaan-jaff in #19895
- [Feature] Add sortBy and sortOrder params for /v2/model/info by @yuneng-jiang in #19903
- [Infra] CI/CD - Fixing UI Tests by @yuneng-jiang in #19905
- #19351 Add Init Containers in the community helm chart by @pragyasardana in #19816
- 📖 docs: remove enterprise requirement for guardrail monitoring by @ryewilson in #19833
- merge 01 27 by @Sameerlite in #19910
- [Feature] UI - Model Page: Server Sort by @yuneng-jiang in #19908
- feat(hosted_vllm): support
thinkingparameter inanthropic_messages()and.completion()by @Chesars in #19787 - merge main in timeout by @Sameerlite in #19911
- [Feat] UI: Allow Admins to control what pages are visible on LeftNav by @ishaan-jaff in #19907
- [Feature] Allow Dynamic Setting of store_prompts_in_spend_logs by @yuneng-jiang in #19913
- Add native_background_mode to override polling_via_cache for specific models by @xianzongxie-stripe in #19899
- fix(anthropic): remove explicit cache_control null in tool_result content by @lizhen921 in #19919
- initialize tiktoken environment at import time to support offline usage by @milan-berri in #19882
- fix(oci): serialize imageUrl as object for OCI GenAI API by @Chesars in #19661
- Litellm oss staging 01 27 2026 by @krrishdholakia in #19839
- Add xai websearch params support fo Responses API by @Sameerlite in #19915
- Add litellm_callback_logging_failures_metric for Langfuse, Langfuse Otel and other Otel providers by @Sameerlite in #19636
- Fixes Timeouts during chat completion calls no longer reported as timeout in failure callback by @Sameerlite in #19842
- Add Prompt caching and reasoning support for MiniMax, GLM, Xiaomi by @Sameerlite in #19924
- Fix: output_tokens_details.reasoning_tokens None by @Sameerlite in #19914
- Fix team cli auth flow by @boarder7395 in #19666
- fix(vertex_ai): support model names with slashes in passthrough URLs by @michelligabriele in #19944
- Fix thread leak in OpenTelemetry dynamic header path by @AlexsanderHamir in #19946
- [Feature] UI - Spend Logs: Settings Modal by @yuneng-jiang in #19918
- [Fix] A2a Gateway - Allow supporting old A2a card formats: /.well-known/agent.json by @ishaan-jaff in #19949
- [Feature] Add error_message Search in Spend Logs Endpoint by @yuneng-jiang in #19960
- fix(presidio): reuse HTTP connections to prevent performance degradation by @AlexsanderHamir in #19964
- [Fix] VertexAI Pass through - fix regression that caused vertex ai passthroughs to stop working for router models by @ishaan-jaff in #19967
New Contributors
- @jquinter made their first contribution in #19598
- @ruanjf made their first contribution in #19551
- @moh-dev-stack made their first contribution in #19507
- @formorter made their first contribution in #19498
- @priyam-that made their first contribution in #19516
- @marcosgriselli made their first contribution in #19550
- @natimofeev made their first contribution in #19232
- @pragyasardana made their first contribution in #19816
- @ryewilson made their first contribution in #19833
- @lizhen921 made their first contribution in #19919
- @boarder7395 made their first contribution in #19666
Full Changelog: v1.81.3-nightly...v1.81.3.rc.5