Commit graph

4874 commits

Author SHA1 Message Date
Ishaan Jaff
c76f9be729 ui - new build 2025-06-27 18:00:59 -07:00
Ishaan Jaff
ebf6395bc1
[Feat] Add Eleven Labs - Speech To Text Support on LiteLLM (#12119)
* add ELEVENLABS as a provider

* add deepgram to main.py

* add ElevenLabsException

* add ElevenLabsAudioTranscriptionConfig

* add transform_audio_transcription_response

* TestElevenLabsAudioTranscription

* add elevenlabs/scribe_v1 to model cost map

* add ElevenLabsAudioTranscriptionConfig

* add AudioTranscriptionRequestData

* add ElevenLabs transform

* use AudioTranscriptionRequestData

* refactoring fixes

* add ProcessedAudioFile util for reading audio files

* test_elevenlabs_diarize_parameter_passthrough

* docs eleven labs

* docs fixes

* fix code qa checks

* fixes - audio transcription

* ui - add ElevenLabs logo

* add elevenlabs logo

* docs - ElevenLabs

* test fix elevenlabs
2025-06-27 17:50:49 -07:00
Cole McIntosh
8f376a60fa fix(ui): fix Today filter not showing usage data in dashboard
- Fix date formatting in API calls from ISO format to YYYY-MM-DD
- Update userDailyActivityCall, teamDailyActivityCall, and tagDailyActivityCall
- Prevent date mutation by creating new Date objects before API calls
- Set proper time boundaries (00:00:00 to 23:59:59) for same-day selections

The API expects dates in YYYY-MM-DD format but the UI was sending
full ISO timestamps, causing the Today filter to return empty results.
2025-06-26 13:59:40 -06:00
Cole McIntosh
92948b33b1
Merge branch 'BerriAI:main' into fix-today-selector-date-mutation-bug 2025-06-26 12:29:44 -06:00
Cole McIntosh
cdf95f5f2c Enhance UsageDatePicker component by adding time range display and improving timezone handling for date selections. Default time range visibility is set to true, ensuring better user experience in usage dashboards. 2025-06-25 11:28:35 -06:00
Cole McIntosh
102680d0ed Refactor date handling in ModelDashboard to use startTime and endTime directly, improving clarity and consistency in metric data retrieval. 2025-06-25 11:28:24 -06:00
Cole McIntosh
3f644602fb Refactor date range selection in dashboards to use UsageDatePicker component, simplifying date handling logic and improving consistency across components. 2025-06-25 11:16:01 -06:00
Cole McIntosh
52e51ead03 Add UsageDatePicker component for usage dashboards 2025-06-25 11:14:48 -06:00
tanjiro
2a6dab0d23
aggregate the data across all pages (#12033) 2025-06-25 09:54:41 -07:00
Cole McIntosh
445227371a
Merge branch 'BerriAI:main' into fix-today-selector-date-mutation-bug 2025-06-25 10:51:53 -06:00
Krish Dholakia
ac15ca3014
Teams - Support default key expiry + UI - support enforcing access for members of specific SSO Group (#12023)
* fix(team_endpoints.py): support setting default key expiry

allows admin to set key expiry on all team member keys

makes it easier to setup default team for experimentation

* feat(key_management_endpoints.py): allows admin to set duration for keys created by team members

* feat(team_endpoints.py): support team_member_key_duration on `/team/update`

allows setting max time team member keys are valid for

* fix(team_info.tsx): ui component to update team member key duration

* fix(team_info.tsx): support updating team member key duration, if set

* feat(teams.tsx): add team member key duration param ui component

allow admin to set this on UI

* feat(ui_sso.py): support restricting ui access by sso group

allows controlling who can/can't access the UI

* feat(ssomodals.tsx): add initial commit adding sso group access to admin ui

* feat(proxy_server.py): support reading + writing ui_access_mode from db

allows admin to configure allowed sso groups from UI

* feat(ui_sso.py): support enforcing all teams on sso jwt handler

if ui access mode set via ui, support reading the value and enforcing it

* feat(ui/): ui component for controlling sso access group

allow admin to only allow users within specific sso group to log into UI

* fix(uiaccesscontrolform.tsx): fix field names

* feat(ui_sso.py): return received sso response in the clientside error message - enables easier debugging

* test: add unit tests

* fix: minor fixes
2025-06-24 21:58:07 -07:00
Cole McIntosh
ca96e39229 Update package-lock.json to include @anthropic-ai/sdk version 0.54.0 2025-06-24 14:29:14 -06:00
Cole McIntosh
c42a876735 Fix date mutation bug causing 'Today' selector to return no data
- Create new Date objects instead of mutating original DateRangePicker dates
- Fixes issue where first API call would mutate dateValue.from/to causing
  subsequent calls to use corrupted date ranges
- Updated usage.tsx, cache_dashboard.tsx, and model_dashboard.tsx
- Minimal change preserving original timezone logic
2025-06-24 14:28:52 -06:00
Ishaan Jaff
321fc09b3e ui fix linting errors 2025-06-23 18:43:56 -07:00
Ishaan Jaff
77813ebdf8 ui - fix linting error 2025-06-23 18:18:36 -07:00
Tyler Wagner
b3d8a6be9e
Proxy UI MCP Auth passthrough (#11968)
* initial mcp auth with special header

* MCP Servers moved and added auth part

* Pass in x-mcp-auth with banner on tool call

* Revert "initial mcp auth with special header"

This reverts commit b22fb6d12e.

---------

Co-authored-by: wagnerjt <wagnerjt@github.com>
2025-06-23 09:34:37 -07:00
Cole McIntosh
464d981f1c
feat: add Last Success column to health check table (#11903) 2025-06-23 09:22:00 -07:00
Ishaan Jaff
b1e3507d14 ui new build 2025-06-21 20:53:18 -07:00
Krish Dholakia
3224b0f4fe
(Tutorial) Onboard Users for AI Exploration (#11955)
* fix: allow setting no-default-models and unsetting max budget

* docs(sso_self_serve.md): add e2e tutorial of onboarding users for ai exploration

* docs: rename doc
2025-06-21 16:54:23 -07:00
Krish Dholakia
2404d3fb1b
Show user all models they can call (Across teams) on UI (#11948)
* fix(proxy_cli.py): check for module not found error on proxy import

Fixes https://github.com/BerriAI/litellm/issues/11836

* feat(proxy_server.py): utility function to get all models across all teams user is in

Allows user to see all team models on UI

* feat(proxy_server.py): return models accessible via team id's in `/v2/model/info`

Allows UI to tell user which team they can use to access model

* feat(columsn.tsx): initial PR to add 'accessible via Team ID's on model hub

allows user to know what teams they can access a model through

* Revert "feat(columsn.tsx): initial PR to add 'accessible via Team ID's on model hub"

This reverts commit f844c79383.

* fix(proxy_server.py): backend model info endpoint improvements

* UI Improvements for Default User access (#11952)

* feat(ui/): add a 'current team' and 'view' filters to the models page

allow user to see what all models they have access to within a specific team

* feat: working ui for seeing models in teams

* fix(model_dashboard.tsx): make current team filter more prominent

* style(model_dashboard.tsx): add a helpful note telling user how to create a model for the team they've selected

* style(model_dashboard.tsx): only show helpful note when current view is team, not for global

* fix(team_dropdown.tsx): allow searching by team id on create key modal

* feat(create_key_button.tsx): add helpful message when team selection is required

* fix: fix linting checks

* fix: fix ui linting error

* docs(team_endpoints.py): document new param
2025-06-21 15:29:25 -07:00
Ishaan Jaff
045026462f ui - add team indicator to ui 2025-06-21 14:55:09 -07:00
Krrish Dholakia
1e6d43e761 Squashed commit of the following:
commit 440bc02725
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 23:04:11 2025 -0700

    fix: fix check

commit 89a7451cb9
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 22:42:30 2025 -0700

    fix: fix test

commit 1322e3b349
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 20:52:40 2025 -0700

    style: add more tooltips

commit 172738b98b
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 20:51:09 2025 -0700

    feat(team_member_view.tsx): add a tooltip

commit 895eb28deb
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:46:49 2025 -0700

    fix(teams.tsx): support setting team member budget on create

commit 003cc54a6d
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:40:49 2025 -0700

    fix(team_member_view.tsx): style improvements

commit a627a044f2
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:40:01 2025 -0700

    fix(team_member_view.tsx): handle scientific notation in string

commit c5a3b7bd84
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:34:25 2025 -0700

    feat(team_membership_view.tsx): show team member spend + max budget on UI

commit e986d12ad5
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:28:06 2025 -0700

    feat(team_member_view.tsx): show team member spend + budget on team info

commit 8e398607b2
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:18:16 2025 -0700

    feat(team_info.tsx): show team member budget on team info

commit 1f56886b59
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:15:30 2025 -0700

    feat(team_endpoints.py): get team budget table on team info

    allows user to see max budget set for team members

commit 0a4320bbfa
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 18:10:06 2025 -0700

    feat(team_endpoints.py): return team member budget on team info

    allows ui to display this to admin / team member

commit 6a4e29f87b
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 17:57:20 2025 -0700

    fix(team_endpoints.py): support updating team budget on UI

commit 53f0fff340
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 17:38:17 2025 -0700

    feat(proxy/_types.py): return team member spend

    update pydantic object to include spend

    Allows showing spend of team member within team on UI

commit ef2a1a43ec
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 16:31:42 2025 -0700

    feat(team_endpoints.py): support 'team_member_budget' param on `/team/update`

    enables budget working across all team members

commit 512999f124
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 16:20:04 2025 -0700

    test: add unit tests for default team member budget

commit 90fa3f61a2
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 15:37:51 2025 -0700

    feat(team_endpoints.py): support using default team member budget id, if set

    allows all team members to use the same budget id

commit acef5324b1
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 15:22:30 2025 -0700

    feat(team_endpoints.py): support `team_member_budget` param on `/team/new`

    Allow creating 1 budget for all users within team (makes it easier to increase/reduce budget if needed for all team members)

commit 2e867ac70f
Author: Krrish Dholakia <krrishdholakia@gmail.com>
Date:   Fri Jun 20 13:45:06 2025 -0700

    fix(ui_sso.py): ensure user is added to team, if set via default internal settings

    allows users signed up via SSO to be added to default team
2025-06-20 23:11:53 -07:00
Ishaan Jaff
7504d6ecae ui new build 2025-06-20 18:37:27 -07:00
Ishaan Jaff
dc2c1122bf
[Feat] UI QA: Pass through endpoints (#11939)
* use ID for pass through management

* use id for pass through

* fix columns

* fix PassThroughInfoView

* cleanup

* working edit and delete pass through

* fix rendering id for pt row

* fixes for pt info view

* working delete pass through

* fix use NumericalInput

* fix alignment

* qa - creating pt

* show route preview

* fix show just 1 msg

* test_create_pass_through_endpoint

* fix ui linting
2025-06-20 18:35:38 -07:00
John Tong
c36d0f667b
Feat/add delete callback (#11654)
* feat(delete callback): add api and ui for deleting logging callbacks

* hotfix(delete callback): hotfix lint error

* move test case to test_litellm folder

* fix test case to use mock prisma client
2025-06-20 13:50:37 -07:00
Ishaan Jaff
2a698062e3
[Feat] UI Allow testing /v1/messages on the Test Key Page (#11930)
* Add ANTHROPIC_MESSAGES to chat UI

* add anthropic-ai/sdk

* add anthropic messages to UI

* add makeAnthropicMessagesRequest

* fixes for endpoint selector
2025-06-20 13:31:24 -07:00
Cole McIntosh
0ca70bf92e Merge remote-tracking branch 'origin/main' into add-health-check-success-modal 2025-06-20 08:05:36 -06:00
Ishaan Jaff
72f73cb56e ui new build 2025-06-19 20:39:28 -07:00
Ishaan Jaff
f6728e6e13
[UI] QA Items for adding pass through endpoints (#11909)
* ui - fix 1

* fixes

* fix path prefix

* fix path
2025-06-19 20:37:53 -07:00
Ishaan Jaff
4796e9c5ba ui - fix linting issue 2025-06-19 16:43:01 -07:00
Cole McIntosh
677ef3cdde
Fix health check UI table design - Remove table-in-table design from HealthCheckComponent - Change wrapper from card styling to simple div with mb-6 spacing - Remove padding around table container for cleaner layout - Add proper icon-based actions in health check table - Use PlayIcon for new checks and RefreshIcon for re-running checks - Add loading animation with dots during health checks - Include proper tooltips for action buttons (#11897) 2025-06-19 16:07:43 -07:00
Cole McIntosh
d2e54944a3
Fix clickable model ID in health check table - Add setSelectedModelId prop to make blue model ID buttons clickable - Fix checkbox selection logic to use model names consistently - Add stopPropagation to prevent unwanted sort triggers on checkbox clicks - Now clicking Model ID opens model details, and select all works properly (#11898) 2025-06-19 16:07:23 -07:00
Ishaan Jaff
87c2be93c7
[Feat] V2 Add Pass through endpoints on UI (#11905)
* add pass through ui

* fix accordion for route path

* working route path renderer

* fix use sections

* clean up add pass through form

* docs fix add pass through routing

* clean up route preview

* add route preview
2025-06-19 16:05:29 -07:00
Krish Dholakia
c6d7d5bc98
Revert "move buttons to the left (#11771)" (#11904)
This reverts commit bc9f111ee8.
2025-06-19 15:36:47 -07:00
Cole McIntosh
f892439671 Add success modal for health check responses - Add green info icon next to healthy status badges - Click icon to view full health check response including headers - Show rate limit headers and other response metadata - Store successResponse in health status state - Add showSuccessModal functionality to view JSON response details - Restore ability to inspect successful health check responses 2025-06-19 15:33:26 -06:00
Ishaan Jaff
c975355d47
[Feat] UI - Add Allowed MCPs to Creating/Editing Organizations (#11893)
* Add MCP Org controls to UI

* Add allowed MCPs for Orgs
2025-06-19 12:50:09 -07:00
tanjiro
0a855ad728
rename schema to field_schema (#11887) 2025-06-19 09:29:37 -07:00
Krish Dholakia
c8bdc552fb
Revert "Revert "UI - allow setting default team for new users (#11874)" (#11876)" (#11877)
This reverts commit 8cfb3cfa94.
2025-06-18 21:30:59 -07:00
Krish Dholakia
8cfb3cfa94
Revert "UI - allow setting default team for new users (#11874)" (#11876)
This reverts commit 65bda75f31.
2025-06-18 21:27:59 -07:00
Krish Dholakia
65bda75f31
UI - allow setting default team for new users (#11874)
* feat(internal_user_endpoints.py): allow passing team-specific details when creating new user with team

allows assigning users to teams on creation

* feat(internal_user_endpoints.py): support for setting team values in default internal user params

Ensures admin can assign all new users to a default team

* test(test_internal_user_endpoints.py): add unit tests

* feat(ui/): allow setting default team on admin UI

easier onboarding for users

* fix(internal_user_endpoints.py): fix exception check
2025-06-18 21:27:32 -07:00
Ishaan Jaff
6630b39c79
[UI] - Move passthrough endpoints under Models + Endpoints (#11871)
* use cost_per_request

* fix cost_per_request

* fixes cost_per_request

* fixes for cost per request for pass through

* ui fix param name

* fixes for _set_cost_per_request

* test cost per request pass through endpoints

* Update tests/test_litellm/proxy/pass_through_endpoints/test_pass_through_endpoints.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* tests pass through endpoints

* rename left nav

* move pass through to models + endpoints

* move pass through under models

* add pt info view

* add get/update pt

* fixes for PT ui

* allow updating pt endpoints

* fix pass through quick actions

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-18 16:26:24 -07:00
Ishaan Jaff
dfdbfdd71c
[Feat] Passthrough - Add support for setting custom cost per pass through request (#11870)
* use cost_per_request

* fix cost_per_request

* fixes cost_per_request

* fixes for cost per request for pass through

* ui fix param name

* fixes for _set_cost_per_request

* test cost per request pass through endpoints

* Update tests/test_litellm/proxy/pass_through_endpoints/test_pass_through_endpoints.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* tests pass through endpoints

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-18 16:24:38 -07:00
Cole McIntosh
ae74eb833b
Implement health check frontend UI components and dashboard integration (#11679)
* feat: Implement health check functionality for models

- Added individual model health check API call and integrated it into the dashboard.
- Introduced health check history and latest health checks retrieval.
- Enhanced model dashboard to display health status, last check time, and error details.
- Created a new health check columns component for better organization of health data.
- Added error pattern handling for meaningful error messages.
- Updated UI components to support health check actions and display loading states.

* refactor: extract health check functionality into a new component

- Removed individual health check logic from ModelDashboard and encapsulated it within HealthCheckComponent for better modularity and maintainability.
- Updated ModelDashboard to utilize the new HealthCheckComponent, streamlining the health check process and improving code organization.
- Cleaned up unused state variables and imports related to health checks in ModelDashboard.
- Enhanced error handling and status management within the new component, ensuring a more robust health check experience.

* fix: add access token check in HealthCheckComponent to prevent unauthorized API calls

- Implemented a check for the presence of an access token before making API calls to fetch the latest health checks, enhancing security and preventing potential errors when the token is missing.
2025-06-18 13:46:40 -07:00
Ishaan Jaff
84c4c8027f ui new build 2025-06-17 21:02:33 -07:00
Ishaan Jaff
0eb8a3de10
[Feat] v2 Pass through endpoints - Add support for subroutes for pass through endpoints + Cleaned up UI (#11827)
* fix: add construct_target_url_with_subpath

* add InitPassThroughEndpointHelpers

* added debugging for pass through routes

* add PassThroughGenericEndpoint to include subpath and input_cost_per_request

* polish page

* Add Pass-Through Endpoint

* polish pass through ui

* fixes for initialize_pass_through_endpoints

* PassThroughGenericEndpoint

* test_add_subpath_route

* test_initialize_pass_through_endpoints_with_include_subpath

* fix code QA check
2025-06-17 20:52:28 -07:00
Ishaan Jaff
a8196159b9
[Bug Fixes] MCP - using MCPs defined on config.yaml + fix for MCP error Team doesn't exist in cache (#11824)
* fix - dont allow missing team to block MCP list response

* use HTTP as default transport

* _generate_stable_server_id

* fix list MCP servers

* ui fix

* test_list_mcp_servers_empty_result

* test_generate_stable_server_id

* _generate_stable_server_id

* fix code QA

* fix code QA
2025-06-17 16:25:12 -07:00
Krish Dholakia
30b431681e
JWT Auth - correctly return user email + UI Model Update - Allow editing model access group for existing model (#11783)
* fix(handle_jwt.py): check user object, if jwt user is proxy admin

correctly return user role - if jwt user has role updated in UI

* test(test_handle_jwt.py): add unit test for passing correct user role

* feat(model_info_view.tsx): separate UI component for updating edit model component

* feat(model_info_view.tsx): allow updating model access group on UI

show all available access groups in ui component

* docs: minor fixes
2025-06-16 22:11:04 -07:00
dependabot[bot]
4e313e517b
build(deps): bump next from 14.2.26 to 14.2.30 in /ui/litellm-dashboard (#11720)
Bumps [next](https://github.com/vercel/next.js) from 14.2.26 to 14.2.30.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v14.2.26...v14.2.30)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 14.2.30
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 17:33:11 -07:00
MadsRC
2224fd96be
AWS credentials no longer mandatory (#11765) 2025-06-16 17:32:10 -07:00
Ishaan Jaff
7f11b5b76c
[Security] - Add Trivy Security Scan for UI + Docs folder - remove all vulnerabilities (#11778)
* docs - sec scan

* ui - fix 0 security issues

* fix - 0 medium vuln on docs

* add MEDIUM scan for Docs

* Run Trivy scan on LiteLLM UI
2025-06-16 17:13:19 -07:00