Skip to content

Commit d4540d3

Browse files
Merge branch 'main' into fix/streaming-tool-call-indices
2 parents 802f701 + 197e98b commit d4540d3

File tree

286 files changed

+55787
-39786
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

286 files changed

+55787
-39786
lines changed

.circleci/config.yml

Lines changed: 77 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1050,6 +1050,51 @@ jobs:
10501050
ls
10511051
python -m pytest -vv tests/test_litellm --cov=litellm --cov-report=xml -x -s -v --junitxml=test-results/junit-litellm.xml --durations=10 -n 8
10521052
no_output_timeout: 120m
1053+
- run:
1054+
name: Rename the coverage files
1055+
command: |
1056+
mv coverage.xml litellm_mapped_tests_coverage.xml
1057+
mv .coverage litellm_mapped_tests_coverage
1058+
1059+
# Store test results
1060+
- store_test_results:
1061+
path: test-results
1062+
- persist_to_workspace:
1063+
root: .
1064+
paths:
1065+
- litellm_mapped_tests_coverage.xml
1066+
- litellm_mapped_tests_coverage
1067+
litellm_mapped_enterprise_tests:
1068+
docker:
1069+
- image: cimg/python:3.11
1070+
auth:
1071+
username: ${DOCKERHUB_USERNAME}
1072+
password: ${DOCKERHUB_PASSWORD}
1073+
working_directory: ~/project
1074+
1075+
steps:
1076+
- checkout
1077+
- setup_google_dns
1078+
- run:
1079+
name: Install Dependencies
1080+
command: |
1081+
python -m pip install --upgrade pip
1082+
python -m pip install -r requirements.txt
1083+
pip install "pytest-mock==3.12.0"
1084+
pip install "pytest==7.3.1"
1085+
pip install "pytest-retry==1.6.3"
1086+
pip install "pytest-cov==5.0.0"
1087+
pip install "pytest-asyncio==0.21.1"
1088+
pip install "respx==0.22.0"
1089+
pip install "hypercorn==0.17.3"
1090+
pip install "pydantic==2.10.2"
1091+
pip install "mcp==1.10.1"
1092+
pip install "requests-mock>=1.12.1"
1093+
pip install "responses==0.25.7"
1094+
pip install "pytest-xdist==3.6.1"
1095+
pip install "semantic_router==0.1.10"
1096+
pip install "fastapi-offline==1.7.3"
1097+
- setup_litellm_enterprise_pip
10531098
- run:
10541099
name: Run enterprise tests
10551100
command: |
@@ -1458,6 +1503,7 @@ jobs:
14581503
# - run: python ./tests/documentation_tests/test_general_setting_keys.py
14591504
- run: python ./tests/code_coverage_tests/check_licenses.py
14601505
- run: python ./tests/code_coverage_tests/router_code_coverage.py
1506+
- run: python ./tests/code_coverage_tests/test_chat_completion_imports.py
14611507
- run: python ./tests/code_coverage_tests/info_log_check.py
14621508
- run: python ./tests/code_coverage_tests/test_ban_set_verbose.py
14631509
- run: python ./tests/code_coverage_tests/code_qa_check_tests.py
@@ -1778,8 +1824,8 @@ jobs:
17781824
docker run -d \
17791825
-p 4000:4000 \
17801826
-e DATABASE_URL=postgresql://postgres:[email protected]:5432/circle_test \
1781-
-e AZURE_API_KEY=$AZURE_BATCHES_API_KEY \
1782-
-e AZURE_API_BASE=$AZURE_BATCHES_API_BASE \
1827+
-e AZURE_API_KEY=$AZURE_API_KEY \
1828+
-e AZURE_API_BASE=$AZURE_API_BASE \
17831829
-e AZURE_API_VERSION="2024-05-01-preview" \
17841830
-e REDIS_HOST=$REDIS_HOST \
17851831
-e REDIS_PASSWORD=$REDIS_PASSWORD \
@@ -2825,8 +2871,8 @@ jobs:
28252871
source "$NVM_DIR/bash_completion"
28262872
28272873
# Install and use Node version
2828-
nvm install v18.17.0
2829-
nvm use v18.17.0
2874+
nvm install v20
2875+
nvm use v20
28302876
28312877
cd ui/litellm-dashboard
28322878
@@ -2879,7 +2925,26 @@ jobs:
28792925
name: Install Playwright Browsers
28802926
command: |
28812927
npx playwright install
2928+
- run:
2929+
name: Run UI unit tests (Vitest)
2930+
command: |
2931+
# Use Node 20 (several deps require >=20)
2932+
export NVM_DIR="/opt/circleci/.nvm"
2933+
source "$NVM_DIR/nvm.sh"
2934+
nvm install 20
2935+
nvm use 20
2936+
2937+
cd ui/litellm-dashboard
2938+
npm ci || npm install
28822939

2940+
# CI run, with both LCOV (Codecov) and HTML (artifact you can click)
2941+
CI=true npm run test -- --run --coverage \
2942+
--coverage.provider=v8 \
2943+
--coverage.reporter=lcov \
2944+
--coverage.reporter=html \
2945+
--coverage.reportsDirectory=coverage/html
2946+
2947+
28832948
- run:
28842949
name: Build Docker image
28852950
command: docker build -t my-app:latest -f ./docker/Dockerfile.database .
@@ -3155,6 +3220,12 @@ workflows:
31553220
only:
31563221
- main
31573222
- /litellm_.*/
3223+
- litellm_mapped_enterprise_tests:
3224+
filters:
3225+
branches:
3226+
only:
3227+
- main
3228+
- /litellm_.*/
31583229
- litellm_mapped_tests:
31593230
filters:
31603231
branches:
@@ -3199,6 +3270,7 @@ workflows:
31993270
- guardrails_testing
32003271
- llm_responses_api_testing
32013272
- litellm_mapped_tests
3273+
- litellm_mapped_enterprise_tests
32023274
- batches_testing
32033275
- litellm_utils_testing
32043276
- pass_through_unit_testing
@@ -3259,6 +3331,7 @@ workflows:
32593331
- google_generate_content_endpoint_testing
32603332
- llm_responses_api_testing
32613333
- litellm_mapped_tests
3334+
- litellm_mapped_enterprise_tests
32623335
- batches_testing
32633336
- litellm_utils_testing
32643337
- pass_through_unit_testing

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,4 +95,5 @@ test.py
9595
litellm_config.yaml
9696
.cursor
9797
.vscode/launch.json
98-
litellm/proxy/to_delete_loadtest_work/*
98+
litellm/proxy/to_delete_loadtest_work/*
99+
update_model_cost_map.py

Dockerfile

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,6 @@ RUN pip uninstall jwt -y
4141
RUN pip uninstall PyJWT -y
4242
RUN pip install PyJWT==2.9.0 --no-cache-dir
4343

44-
# Build Admin UI
45-
RUN chmod +x docker/build_admin_ui.sh && ./docker/build_admin_ui.sh
46-
4744
# Runtime stage
4845
FROM $LITELLM_RUNTIME_IMAGE AS runtime
4946

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ LiteLLM manages:
3737
- Retry/fallback logic across multiple deployments (e.g. Azure/OpenAI) - [Router](https://docs.litellm.ai/docs/routing)
3838
- Set Budgets & Rate limits per project, api key, model [LiteLLM Proxy Server (LLM Gateway)](https://docs.litellm.ai/docs/simple_proxy)
3939

40-
[**Jump to LiteLLM Proxy (LLM Gateway) Docs**](https://github.com/BerriAI/litellm?tab=readme-ov-file#openai-proxy---docs) <br>
40+
[**Jump to LiteLLM Proxy (LLM Gateway) Docs**](https://github.com/BerriAI/litellm?tab=readme-ov-file#litellm-proxy-server-llm-gateway---docs) <br>
4141
[**Jump to Supported LLM Providers**](https://github.com/BerriAI/litellm?tab=readme-ov-file#supported-providers-docs)
4242

4343
🚨 **Stable Release:** Use docker images with the `-stable` tag. These have undergone 12 hour load tests, before being published. [More information about the release cycle here](https://docs.litellm.ai/docs/proxy/release_cycle)
@@ -316,6 +316,7 @@ curl 'http://0.0.0.0:4000/key/generate' \
316316
| [google AI Studio - gemini](https://docs.litellm.ai/docs/providers/gemini) ||||| | |
317317
| [mistral ai api](https://docs.litellm.ai/docs/providers/mistral) |||||| |
318318
| [cloudflare AI Workers](https://docs.litellm.ai/docs/providers/cloudflare_workers) ||||| | |
319+
| [CompactifAI](https://docs.litellm.ai/docs/providers/compactifai) ||||| | |
319320
| [cohere](https://docs.litellm.ai/docs/providers/cohere) |||||| |
320321
| [anthropic](https://docs.litellm.ai/docs/providers/anthropic) ||||| | |
321322
| [empower](https://docs.litellm.ai/docs/providers/empower) |||||

cookbook/misc/RELEASE_NOTES_GENERATION_INSTRUCTIONS.md

Lines changed: 99 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ This document provides comprehensive instructions for AI agents to generate rele
44

55
## Required Inputs
66

7-
1. **Release Version** (e.g., `v1.76.3-stable`)
7+
1. **Release Version** (e.g., `v1.77.3-stable`)
88
2. **PR Diff/Changelog** - List of PRs with titles and contributors
99
3. **Previous Version Commit Hash** - To compare model pricing changes
10-
4. **Reference Release Notes** - Previous release notes to follow style/format
10+
4. **Reference Release Notes** - Use recent stable releases (v1.76.3-stable, v1.77.2-stable) as templates for consistent formatting
1111

1212
## Step-by-Step Process
1313

@@ -26,12 +26,12 @@ git diff <previous_commit_hash> HEAD -- model_prices_and_context_window.json
2626

2727
### 2. Release Notes Structure
2828

29-
Follow this exact structure based on `docs/my-website/release_notes/v1.76.1-stable/index.md`:
29+
Follow this exact structure based on recent stable releases (v1.76.3-stable, v1.77.2-stable):
3030

3131
```markdown
3232
---
33-
title: "v1.76.X-stable - [Key Theme]"
34-
slug: "v1-76-X"
33+
title: "v1.77.X-stable - [Key Theme]"
34+
slug: "v1-77-X"
3535
date: YYYY-MM-DDTHH:mm:ss
3636
authors: [standard author block]
3737
hide_table_of_contents: false
@@ -43,23 +43,42 @@ hide_table_of_contents: false
4343
## Key Highlights
4444
[3-5 bullet points of major features]
4545

46-
## Major Changes
47-
[Critical changes users need to know]
46+
## New Models / Updated Models
47+
#### New Model Support
48+
[Model pricing table]
4849

49-
## Performance Improvements
50-
[Performance-related changes]
50+
#### Features
51+
[Provider-specific features organized by provider]
5152

52-
## New Models / Updated Models
53-
[Detailed model tables and provider updates]
53+
### Bug Fixes
54+
[Provider-specific bug fixes organized by provider]
55+
56+
#### New Provider Support
57+
[New provider integrations]
5458

5559
## LLM API Endpoints
56-
[API-related features and fixes]
60+
#### Features
61+
[API-specific features organized by API type]
62+
63+
#### Bugs
64+
[General bug fixes]
5765

5866
## Management Endpoints / UI
59-
[Admin interface and management changes]
67+
#### Features
68+
[UI and management features]
69+
70+
#### Bugs
71+
[Management-related bug fixes]
6072

6173
## Logging / Guardrail Integrations
62-
[Observability and security features]
74+
#### Features
75+
[Organized by integration provider with proper doc links]
76+
77+
#### Guardrails
78+
[Guardrail-specific features and fixes]
79+
80+
#### New Integration
81+
[Major new integrations]
6382

6483
## Performance / Loadbalancing / Reliability improvements
6584
[Infrastructure improvements]
@@ -86,33 +105,47 @@ hide_table_of_contents: false
86105
**New Models/Updated Models:**
87106
- Extract from model_prices_and_context_window.json diff
88107
- Create tables with: Provider, Model, Context Window, Input Cost, Output Cost, Features
89-
- Group by provider
90-
- Note pricing corrections
91-
- Highlight deprecated models
92-
93-
**Provider Features:**
94-
- Group by provider (Gemini, OpenAI, Anthropic, etc.)
95-
- Link to provider docs: `../../docs/providers/[provider_name]`
96-
- Separate features from bug fixes
97-
98-
**API Endpoints:**
99-
- Images API
100-
- Video Generation (if applicable)
101-
- Responses API
102-
- Passthrough endpoints
103-
- General chat completions
108+
- **Structure:**
109+
- `#### New Model Support` - pricing table
110+
- `#### Features` - organized by provider with documentation links
111+
- `### Bug Fixes` - provider-specific bug fixes
112+
- `#### New Provider Support` - major new provider integrations
113+
- Group by provider with proper doc links: `**[Provider Name](../../docs/providers/[provider])**`
114+
- Use bullet points under each provider for multiple features
115+
- Separate features from bug fixes clearly
116+
117+
**LLM API Endpoints:**
118+
- **Structure:**
119+
- `#### Features` - organized by API type (Responses API, Batch API, etc.)
120+
- `#### Bugs` - general bug fixes under **General** category
121+
- **API Categories:**
122+
- Responses API
123+
- Batch API
124+
- CountTokens API
125+
- Images API
126+
- Video Generation (if applicable)
127+
- General (miscellaneous improvements)
128+
- Use proper documentation links for each API type
104129

105130
**UI/Management:**
106131
- Authentication changes
107132
- Dashboard improvements
108133
- Team management
109134
- Key management
110135

111-
**Integrations:**
112-
- Logging providers (Datadog, Braintrust, etc.)
113-
- Guardrails
114-
- Cost tracking
115-
- Observability
136+
**Logging / Guardrail Integrations:**
137+
- **Structure:**
138+
- `#### Features` - organized by integration provider with proper doc links
139+
- `#### Guardrails` - guardrail-specific features and fixes
140+
- `#### New Integration` - major new integrations
141+
- **Integration Categories:**
142+
- **[DataDog](../../docs/proxy/logging#datadog)** - group all DataDog-related changes
143+
- **[Langfuse](../../docs/proxy/logging#langfuse)** - Langfuse-specific features
144+
- **[Prometheus](../../docs/proxy/logging#prometheus)** - monitoring improvements
145+
- **[PostHog](../../docs/observability/posthog)** - observability integration
146+
- Other logging providers with proper doc links
147+
- Use bullet points under each provider for multiple features
148+
- Separate logging features from guardrails clearly
116149

117150
### 4. Documentation Linking Strategy
118151

@@ -211,10 +244,41 @@ This release has a known issue...
211244
:::
212245
```
213246

214-
**Provider Features:**
247+
**Provider Features (New Models / Updated Models section):**
215248
```markdown
249+
#### Features
250+
216251
- **[Provider Name](../../docs/providers/provider)**
217252
- Feature description - [PR #XXXXX](link)
253+
- Another feature description - [PR #YYYYY](link)
254+
```
255+
256+
**API Features (LLM API Endpoints section):**
257+
```markdown
258+
#### Features
259+
260+
- **[API Name](../../docs/api_path)**
261+
- Feature description - [PR #XXXXX](link)
262+
- Another feature - [PR #YYYYY](link)
263+
- **General**
264+
- Miscellaneous improvements - [PR #ZZZZZ](link)
265+
```
266+
267+
**Integration Features (Logging / Guardrail Integrations section):**
268+
```markdown
269+
#### Features
270+
271+
- **[Integration Name](../../docs/proxy/logging#integration)**
272+
- Feature description - [PR #XXXXX](link)
273+
- Bug fix description - [PR #YYYYY](link)
274+
```
275+
276+
**Bug Fixes Pattern:**
277+
```markdown
278+
### Bug Fixes
279+
280+
- **[Provider/Component Name](../../docs/providers/provider)**
281+
- Bug fix description - [PR #XXXXX](link)
218282
```
219283

220284
### 10. Missing Documentation Check

docs/my-website/docs/mcp.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,6 @@ mcp_servers:
114114
description: "My custom MCP server"
115115
auth_type: "api_key"
116116
auth_value: "abc123"
117-
spec_version: "2025-03-26"
118117
```
119118
120119
**Configuration Options:**
@@ -716,7 +715,6 @@ mcp_servers:
716715
url: https://mcp.deepwiki.com/mcp
717716
transport: "http"
718717
auth_type: "none"
719-
spec_version: "2025-03-26"
720718
access_groups: ["dev_group"]
721719
```
722720

0 commit comments

Comments
 (0)