v1.83.10-nightly
BerriAI/litellmv1.83.10-nightlyApr 19, 2026by github-actions[bot]
AI Summary
Adds Docker image signature verification, raises the minimum Python version to 3.10, and introduces features like per-member model scopes and multiple concurrent budget windows.
Key Highlights
- Docker image signature verification via cosign
- Minimum Python version raised to 3.10
- Per-member model scope for teams
- Multiple concurrent budget windows per API key
Breaking Changes
- Python 3.9 is no longer supported.
New Features
- Per-member model scope
- Multiple concurrent budget windows
- Mistral OCR params allowlist
- Grok-4.20-0309-reasoning model support
- Configurable multi-threshold budget alerts
Full Release Notes
## Verify Docker Image Signature All LiteLLM Docker images are signed with [cosign](https://docs.sigstore.dev/cosign/overview/). Every release is signed with the same key introduced in [commit `0112e53`](https://github.com/BerriAI/litellm/commit/0112e53046018d726492c814b3644b7d376029d0). **Verify using the pinned commit hash (recommended):** A commit hash is cryptographically immutable, so this is the strongest way to ensure you are using the original signing key: ```bash cosign verify \ --key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \ ghcr.io/berriai/litellm:v1.83.10-nightly ``` **Verify using the release tag (convenience):** Tags are protected in this repository and resolve to the same key. This option is easier to read but relies on tag protection rules: ```bash cosign verify \ --key https://raw.githubusercontent.com/BerriAI/litellm/v1.83.10-nightly/cosign.pub \ ghcr.io/berriai/litellm:v1.83.10-nightly ``` Expected output: ``` The following checks were performed on each of these signatures: - The cosign claims were validated - The signatures were verified against the specified public key ``` --- ## ⚠️ Breaking Changes - **Python 3.9 is no longer supported.** The minimum required Python version is now **3.10** (`requires-python` changed from `>=3.9, <3.14` to `>=3.10, <3.14`). Python 3.9 reached end-of-life in October 2025. See [#26022](https://github.com/BerriAI/litellm/pull/26022). --- ## What's Changed * fix: batch-limit stale managed object cleanup to prevent 300K row UPDATE by @ishaan-berri in https://github.com/BerriAI/litellm/pull/25227 * [bug-fix]return actual status code - /v1/messages/count_tokens endpoint by @otaviofbrito in https://github.com/BerriAI/litellm/pull/21352 * feat(teams): per-member model scope + team default_team_member_models by @ishaan-berri in https://github.com/BerriAI/litellm/pull/24950 * feat: multiple concurrent budget windows per API key and team (#24883) by @ishaan-berri in https://github.com/BerriAI/litellm/pull/25109 * [Fix] Restrict x-pass- header forwarding for credential and protocol headers by @yuneng-berri in https://github.com/BerriAI/litellm/pull/25916 * [Fix] Tighten api_key value check in credential validation by @yuneng-berri in https://github.com/BerriAI/litellm/pull/25917 * fix(ocr): add missing Mistral OCR params to allowlist by @michelligabriele in https://github.com/BerriAI/litellm/pull/25858 * Add capability to override default GitHub Copilot authentication endp… by @steromano87 in https://github.com/BerriAI/litellm/pull/25915 * fix: return None for routing_strategy_args when strategy is not latency-based by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/25882 * Refactor: extract shared PKCE helpers into utils/pkce.ts by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/25878 * fix(proxy): enforce organization boundaries in admin operations by @stuxf in https://github.com/BerriAI/litellm/pull/25904 * fix(proxy): read guardrail config from admin metadata, fix tag routing consistency by @stuxf in https://github.com/BerriAI/litellm/pull/25905 * fix(proxy): add URL validation for user-supplied URLs by @stuxf in https://github.com/BerriAI/litellm/pull/25906 * Add support for grok-4.20-0309-reasoning model by @Sameerlite in https://github.com/BerriAI/litellm/pull/25930 * docs: add "Copy Page as Markdown" + llms.txt to docs site by @krrish-berri-2 in https://github.com/BerriAI/litellm/pull/25975 * [WIP][Perf] Litellm prometheus improvements by @harish-berri in https://github.com/BerriAI/litellm/pull/25934 * [Infra] Merge dev branch by @yuneng-berri in https://github.com/BerriAI/litellm/pull/25972 * Litellm ishaan april6 by @ishaan-berri in https://github.com/BerriAI/litellm/pull/25256 * [Fix] Agent endpoint and routing permission checks by @yuneng-berri in https://github.com/BerriAI/litellm/pull/25922 * [Fix] Remove unresolved merge conflict markers in bedrock test file by @yuneng-berri in https://github.com/BerriAI/litellm/pull/25995 * [Feature] UI - Settings: Claude Code BYOK support by @yuneng-berri in https://github.com/BerriAI/litellm/pull/25998 * chore(ui): migrate GuardrailTestPlayground off @tremor/react to antd by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/25749 * chore(ui): migrate router_settings page from Tremor to antd by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/25879 * feat(ocr/azure-di): support Mistral-style pages param via analyze query string by @shivamrawat1 in https://github.com/BerriAI/litellm/pull/25929 * feat(helm): add tpl support to extraContainers and extraInitContainers by @jlav in https://github.com/BerriAI/litellm/pull/25494 * fix(bedrock): prevent negative streaming costs for start-only cache usage by @Sameerlite in https://github.com/BerriAI/litellm/pull/25846 * fix(proxy): prioritize reasoning health-check max token precedence by @Sameerlite in https://github.com/BerriAI/litellm/pull/25936 * Litellm persist default router end budget by @shivamrawat1 in https://github.com/BerriAI/litellm/pull/25991 * fix(ui): extra_headers not persisting on MCP server edit by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/26003 * [Fix] UI - Keys: strip empty premium fields from key update payload by @yuneng-berri in https://github.com/BerriAI/litellm/pull/26023 * [Fix] Resolve prometheus_helpers file/package shadow breaking /global/spend/logs by @yuneng-berri in https://github.com/BerriAI/litellm/pull/26026 * fix: enforce project-level model-specific rate limits in parallel_req… by @shivamrawat1 in https://github.com/BerriAI/litellm/pull/25994 * [Infra] Merge dev branch by @yuneng-berri in https://github.com/BerriAI/litellm/pull/25983 * [Infra] Bump proxy dependencies and raise minimum Python to 3.10 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/26022 * fix(mcp): restore PKCE-triggering 401 when no stored per-user token exists by @ishaan-berri in https://github.com/BerriAI/litellm/pull/26032 * feat: configurable multi-threshold budget alerts for virtual keys by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/25989 * [Infra] Build UI by @yuneng-berri in https://github.com/BerriAI/litellm/pull/26033 * bump: version 1.83.9 → 1.83.10 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/26038 * bump litellm-proxy-extras to 0.4.67 by @ishaan-berri in https://github.com/BerriAI/litellm/pull/26043 * [Infra] Promote staging to main by @yuneng-berri in https://github.com/BerriAI/litellm/pull/26044 ## New Contributors * @steromano87 made their first contribution in https://github.com/BerriAI/litellm/pull/25915 * @harish-berri made their first contribution in https://github.com/BerriAI/litellm/pull/25934 * @jlav made their first contribution in https://github.com/BerriAI/litellm/pull/25494 **Full Changelog**: https://github.com/BerriAI/litellm/compare/v1.83.9-nightly...v1.83.10-nightly