Commit Graph

99 Commits

Author SHA1 Message Date
Ishaan Jaffer a1e5c9426f bump to migrations to 0.2.25 2025-10-04 16:16:34 -07:00
Ishaan Jaffer e9e91a4b28 fix remove dup migration 2025-10-04 16:13:33 -07:00
Krish Dholakia a9037ab61f Merge branch 'main' into litellm_dev_10_03_2025_p1 2025-10-04 15:23:31 -07:00
Ishaan Jaffer 07e1e0a7ca bump proxy extras migration 2025-10-04 12:38:21 -07:00
Ishaan Jaffer 51457541b0 fix add allowed tools 2025-10-04 12:37:12 -07:00
Ishaan Jaffer 6c79e12367 fix schema 2025-10-04 12:26:36 -07:00
Krrish Dholakia f5cda40bc6 feat: prisma migration 2025-10-04 08:53:08 -07:00
Krrish Dholakia 39cac8e58a build(ui/): show updated schema.prisma 2025-10-03 19:07:50 -07:00
Krrish Dholakia 742038bb5e build: deploy/
push new prisma migration
2025-10-03 16:52:03 -07:00
Ishaan Jaffer e61619cdc8 bump pypi 2025-09-26 19:53:27 -07:00
Ishaan Jaffer cd6460da75 dics Database Migration Runbook
docs
2025-09-26 19:49:35 -07:00
Ishaan Jaffer ffd6411b9c add new migration 2025-09-26 19:47:48 -07:00
Ishaan Jaffer 0769ac2fdd bump litellm-proxy-extras/0.2.21 2025-09-26 18:49:41 -07:00
Ishaan Jaff 628cd13755 [Feat] UI - Allow scheduling key rotations when creating virtual keys (#14960)
* fix design of key reset interval

* fix: LiteLLM_VerificationToken

* fix key manager

* add key_rotation_at

* ui fix

* fix ui view

* set key_rotation_at  on creation

* add key_rotation_at

* fix info

* fix: _set_key_rotation_fields

* fix KeyRotationManager

* fix key edit view

* test_update_key_fn_auto_rotate_enable

* fix KeyRotationManager
2025-09-26 16:24:40 -07:00
Ishaan Jaff ea8d0bb7d5 fix: re-add scheduled rotations 2025-09-26 11:40:46 -07:00
Ishaan Jaffer b1e56c55ad merge 2025-09-24 22:11:37 -07:00
Ishaan Jaff ded823a3a3 [Feat] Initial support for scheduled key rotations (#14877)
* add KeyRotationSettings

* add KeyRotationManager

* add key rotation manager

* add KeyRotationManager

* fix _initialize_spend_tracking_background_jobs

* fix add_key_rotation_fields

* fixes

* new fields in schema

* update schema

* fix fixes for init key rotation manager

* fixes for init key rotation manager

* fix KeyRotationManager

* tests for key rotation

* fix key_rotation_settings

* fix KeyRotationManager

* fix LITELLM_KEY_ROTATION_CHECK_INTERVAL_SECONDS

* fix fixes for init key rotation manager

* ruff check fix

* fix LITELLM_KEY_ROTATION_CHECK_INTERVAL_SECONDS

* fix _initialize_spend_tracking_background_jobs

* docs fix

* docs auto rotate

* schema fix

* bump proxy extras

* fix config.yml
2025-09-24 21:37:56 -07:00
Ishaan Jaffer 98f33843d9 fix: bump litellm-proxy-extras pip 2025-09-19 17:27:29 -07:00
Yuta Saito 654f1d3290 fix: stop including spec_version in MCP server registration inserts 2025-09-19 07:06:15 +09:00
Ishaan Jaff 58c413d7ab use litellm-proxy-extras==0.2.18 2025-08-23 13:27:26 -07:00
Krrish Dholakia 6b2039f4d7 fix(utils.py): add helpful log message, directing to use of LITELLM_MIGRATION_DIR 2025-08-21 16:41:21 -07:00
Ishaan Jaff ce4210a17a bump litellm proxy extras 2025-08-13 17:50:10 -07:00
Krish Dholakia f00e891004 LiteLLM SDK <-> Proxy: support user param + Prisma - remove use_prisma_migrate flag - redundant as this is now default (#13555)
* fix(litellm_proxy/chat/transformation.py): support 'user' and all other openai chat completion params

Fixes issue where 'user' was not being sent in request to litellm proxy via sdk

* fix(prisma_migration.py): remove 'use_prisma_migrate' flag, is now default

* docs: cleanup docs

* fix(proxy_cli.py): remove --use_prisma_migrate flag

* refactor: remove references to use_prisma_migrate env var

This is now the default flow for db migrations
2025-08-12 22:03:39 -07:00
Ishaan Jaff b7ced315dd fix - publish new PIP / prisma migrations 2025-08-07 13:18:45 -07:00
Jugal D. Bhatt c3cc10387e added new migration files (#13345) 2025-08-06 13:12:39 -07:00
Krrish Dholakia 271fce9f39 build: update poetry 2025-08-02 23:01:46 -07:00
Krish Dholakia 3119064e94 Prompt Management - add prompts on UI (#13240)
* fix(create_key_button.tsx): add prompts on UI

* feat(key_management_endpoints.py): support adding prompt to key via `/key/update`

* fix(key_info_view.tsx): show existing prompts on key in key_info_view.tsx

* fix(key_edit_view.tsx): UX - disable premium feature for non-premium users

prevent accidental clicking

* fix(create_key_button.tsx): disable premium features behind flag, prevent errors

* feat(prompts.tsx): add new ui component to view created prompts

enables viewing prompts created on config

* feat(prompt_info.tsx): add component for viewing the prompt information

* feat(prompt_endpoints.py): support converting dotprompt to json structure + accept json structure in promptmanager

allows prompt manager to work with api endpoints

* test(test_prompt_manager.py): add unit tests for json data input

* feat(dotprompt/__init__.py): add prompt data to dotpromptmanager

* fix(prompt_endpoints.py): working crud endpoints for prompt management

* feat(prompts/): support `prompt_file` for dotprompt

allows to precisely point to the prompt file a prompt should use

* feat(proxy/utils.py): resolve prompt id correctly

resolves user sent prompt id with internal prompt id

* feat(schema.prisma): initial pr with db schema for prompt management table

allows post endpoints to work with backend

* feat(prompt_endpoints.py): use db in patch_prompt endpoint

* feat(prompt_endpoints.py): use db for update_prompt endpoint

* feat(prompt_endpoints.py): use db on prompt delete endpoint

* build(schema.prisma): add prompt tale to schema.prisma in litellm-proxy-extras

* build(migration.sql): add new sql migration file

* fix(init_prompts.py): fix init

* feat(prompt_info_view.tsx): show the raw prompt template on ui

allows developer to know the prompt template they'll be calling

* feat(add_prompt_form.tsx): working ui add prompt flow

allows user to add prompts to litellm via ui

* build(ui/): styling fixes

* build(ui/): prompts.tsx

styling improvements

* fix(add_prompt_form.tsx): styling improvements

* build(prompts.tsx): styling improvements

* build(ui/): styling improvements

* build(ui/): fix ui error

* fix: fix ruff check

* docs: document new api params

* test: update tests
2025-08-02 22:33:37 -07:00
Ishaan Jaff 50b1332fd5 poetry lock 2025-07-30 16:05:56 -07:00
Jugal D. Bhatt fa7e203953 fix migrations (#13157) 2025-07-30 15:56:45 -07:00
Krrish Dholakia 2af5900c00 build(pyproject.toml): bump version 2025-07-30 15:45:37 -07:00
Jugal D. Bhatt e324f76859 [MCP Gateway] add health check endpoints for MCP (#13106)
* add health check endpoints for MCP

* add import

* Clean up endpopints

* fix ruff
2025-07-30 20:40:44 +05:30
Krrish Dholakia 2d697ca476 build: bump pip 2025-07-28 16:10:19 -07:00
Jugal D. Bhatt 10595ea077 [MCP Gateway] add Litellm mcp alias for prefixing (#12994)
* change alias-> server_name

* add server alias uses

* add tests

* schema

* ruff fix

* fix alias for config

* fix tests

* add alias

* fix tests

* fix tests

* add a common util

* ruff fix

* fix migration
2025-07-25 17:57:52 -07:00
Krrish Dholakia 075032349f build: update litellm-proxy-extras 2025-07-18 13:18:59 -07:00
Krrish Dholakia 31ca4da734 build(migration.sql): add new sql migration 2025-07-18 12:57:28 -07:00
Ishaan Jaff 3051a9c68a [Bug Fix] QA - Use PG Vector Vector Store with LiteLLM (#12716)
* store in generic litellm params

* handle storing litellm_params_json

* add litellm_params

* update file loc

* fix startup issue

* ui fix litellm_params

* fix typing

* fix adding PG Vector

* use litellm params

* fix transform_search_vector_store_request

* fix transform

* fix URL

* test fix

* test_pg_vector_search_request_construction
2025-07-18 08:41:18 -07:00
Ishaan Jaff dbe07adf29 bump litellm proxy extras 2025-07-11 22:09:19 -07:00
Ishaan Jaff 14f6d039dc add new migration 2025-07-11 22:07:09 -07:00
Ishaan Jaff bccbe921e4 build - sync all schema.prisma files 2025-07-11 20:25:26 -07:00
Jugal D. Bhatt e3437795bb Litellm mcp access group on UI (#12470)
* added mcp tools on internal user and divide it by teams

* add support for server api call

* Added frontend for test key

* added tools used output

* fix ui for servers

* All servers to personal

* change columns format

* revert ui logic

* Added vertical align

* fix mapped tests

* fix lint

* fix lint

* remove extra file

* fix ui test

* comments fixes

* change query type

* change query type

* mcp acces group init

* add ability to change server display on ui through access groups

* Mcp access group names UI (#12486)

* Added ui changes to reflect mcp_access_groups

* fix edit mcp page

* change to string array (#12491)

* change to string array

* Remove print

* add ability to change server display on ui through access groups

* Litellm mcp access groups accesses (#12498)

* added mcp access groups for keys and teams

* added access groups above servers

* fixed ruff

* fixed mypy

* revert couple changes
2025-07-11 10:29:25 +05:30
Ishaan Jaff 95eaa98b9d bump litellm_proxy_extras-0.2.9 2025-07-09 18:40:00 -07:00
Krish Dholakia c4af2eb5e2 MCP - usage tracking (#12397)
* fix(common_daily_activity.py): initial commit with working mock BE endpoint for mcp usage

* feat(ui/): show mcp server activity on UI

allows admin to know which mcp's are being used

* feat(common_daily_activity.py): return activity by key

* feat(ui/): show top api keys for a given model / mcp server

allow user to know which key is driving spend

* fix(common_daily_activity.py): use known mcp server names

* feat(server.py): log the namespaced tool name (includes server prefix)

allow accurate cost tracking

* feat(db_spend_update_writer.py): log by mcp_namespaced_tool_name

store aggregate daily activity by mcp_namespaced_tool_name

Enables cost / usage tracking by mcp tool name

* fix(server.py): add key/user metadata to mcp calls

* refactor(common_daily_activity.py): update to return mcp activity in API

* fix(common_daily_activity.py): handle empty key

* fix(common_daily_activity.py): track when api key is empty

* test(test_spend_management_endpoints.py): update tests

* fix: fix ui linting error

* fix: fix linting errors

* test: add missing key

* build(schema.prisma): add mcp tool tracking

* fix(migration.sql): add schema migration file

* feat(server.py): add request logging for mcp calls

enables storing the mcp calls

* fix(new_usage.tsx): fix linting errors

* fix: fix code qa errors

* fix(activity_metrics.tsx): fix ui linting errors post-merge

* fix(types/utils.py): fix linting error

* fix(server.py): always have name
2025-07-08 22:08:16 -07:00
Ishaan Jaff 028461a84d bump proxy extras 2025-07-07 21:48:11 -07:00
Ishaan Jaff 642038298a migration - add mcp_info 2025-07-07 21:25:47 -07:00
Ishaan Jaff 312d3602a7 add litellm proxy extras 2025-07-07 21:13:45 -07:00
Ishaan Jaff 5cad0dd94b [Feat] Add MCP Cost Tracking (#12385)
* fix MCP_TOOL_NAME_PREFIX

* test_mcp_cost_tracking

* init MCPCostCalculator

* add call_mcp_tool

* calculate_mcp_tool_call_cost

* add MCPServerCostInfo

* add mcp_server_cost_info

* add mcp_server_cost_info

* pass through litellm_logging_obj

* logged_standard_logging_payload

* fix logging MCP tool call

* test_mcp_cost_tracking_per_tool

* fix NewMCPServerRequest

* fix add_update_server

* add MCP info to schema.prisma

* fix create_mcp_server

* working custom cost per call

* fix mcp server cost

* fix MCPCostCalculator

* TestMCPCostCalculator
2025-07-07 21:08:10 -07:00
Krrish Dholakia 23018bd0a2 build(pyproject.toml): bump version 2025-06-26 07:58:29 -07:00
Krrish Dholakia c3857e60f2 Store batch output file id in DB + Store batch file status in DB + (experimental) BATCH API COST TRACKING 2025-06-25 22:41:22 -07:00
Krrish Dholakia 753aeffe73 build: update with new migration file 2025-06-18 23:07:13 -07:00
Krrish Dholakia 39a1fbfb35 build: bump versions 2025-06-18 22:14:40 -07:00