litellm-enterprise 0.1.15__tar.gz → 0.1.16__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/PKG-INFO +2 -3
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/integrations/prometheus.py +23 -4
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/common_utils/check_batch_cost.py +20 -7
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/pyproject.toml +2 -2
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/LICENSE.md +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/README.md +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/__init__.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/callback_controls.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/example_logging_api.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/generic_api_callback.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/llama_guard.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/llm_guard.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/pagerduty/pagerduty.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secret_detection.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/__init__.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/adafruit.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/adobe.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/age_secret_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/airtable_api_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/algolia_api_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/alibaba.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/asana.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/atlassian_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/authress_access_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/beamer_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/bitbucket.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/bittrex.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/clojars_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/codecov_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/coinbase_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/confluent.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/contentful_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/databricks_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/datadog_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/defined_networking_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/digitalocean.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/discord.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/doppler_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/droneci_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/dropbox.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/duffel_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/dynatrace_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/easypost.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/etsy_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/facebook_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/fastly_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/finicity.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/finnhub_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/flickr_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/flutterwave.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/frameio_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/freshbooks_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gcp_api_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/github_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gitlab.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gitter_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/gocardless_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/grafana.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/hashicorp_tf_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/heroku_api_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/hubspot_api_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/huggingface.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/intercom_api_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/jfrog.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/jwt.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/kraken_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/kucoin.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/launchdarkly_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/linear.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/linkedin.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/lob.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/mailgun.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/mapbox_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/mattermost_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/messagebird.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/microsoft_teams_webhook.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/netlify_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/new_relic.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/nytimes_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/okta_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/openai_api_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/planetscale.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/postman_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/prefect_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/pulumi_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/pypi_upload_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/rapidapi_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/readme_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/rubygems_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/scalingo_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sendbird.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sendgrid_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sendinblue_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sentry_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/shippo_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/shopify.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/slack.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/snyk_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/squarespace_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/sumologic.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/telegram_bot_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/travisci_access_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/twitch_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/twitter.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/typeform_api_token.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/vault.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/yandex.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/secrets_plugins/zendesk_secret_key.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/send_emails/base_email.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/send_emails/endpoints.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/send_emails/resend_email.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/send_emails/smtp_email.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/enterprise_callbacks/session_handler.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/integrations/custom_guardrail.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/litellm_core_utils/litellm_logging.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/audit_logging_endpoints.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/auth/__init__.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/auth/custom_sso_handler.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/auth/route_checks.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/auth/user_api_key_auth.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/enterprise_routes.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/guardrails/endpoints.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/hooks/managed_files.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/management_endpoints/__init__.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/management_endpoints/internal_user_endpoints.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/management_endpoints/key_management_endpoints.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/proxy_server.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/readme.md +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/utils.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/vector_stores/endpoints.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/types/enterprise_callbacks/send_emails.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/types/proxy/audit_logging_endpoints.py +0 -0
- {litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/types/proxy/proxy_server.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
2
|
Name: litellm-enterprise
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.16
|
|
4
4
|
Summary: Package for LiteLLM Enterprise features
|
|
5
5
|
Author: BerriAI
|
|
6
6
|
Requires-Python: >=3.8, !=2.7.*, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*, !=3.7.*
|
|
@@ -9,7 +9,6 @@ Classifier: Programming Language :: Python :: 3.9
|
|
|
9
9
|
Classifier: Programming Language :: Python :: 3.10
|
|
10
10
|
Classifier: Programming Language :: Python :: 3.11
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.12
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
13
12
|
Project-URL: Documentation, https://docs.litellm.ai
|
|
14
13
|
Project-URL: Homepage, https://litellm.ai
|
|
15
14
|
Project-URL: Repository, https://github.com/BerriAI/litellm
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
# used for /metrics endpoint on LiteLLM Proxy
|
|
2
2
|
#### What this does ####
|
|
3
3
|
# On success, log events to Prometheus
|
|
4
4
|
import sys
|
|
@@ -1231,8 +1231,15 @@ class PrometheusLogger(CustomLogger):
|
|
|
1231
1231
|
"team_alias",
|
|
1232
1232
|
] + EXCEPTION_LABELS,
|
|
1233
1233
|
"""
|
|
1234
|
+
from litellm.litellm_core_utils.litellm_logging import (
|
|
1235
|
+
StandardLoggingPayloadSetup,
|
|
1236
|
+
)
|
|
1237
|
+
|
|
1234
1238
|
try:
|
|
1235
|
-
_tags =
|
|
1239
|
+
_tags = StandardLoggingPayloadSetup._get_request_tags(
|
|
1240
|
+
request_data.get("metadata", {}),
|
|
1241
|
+
request_data.get("proxy_server_request", {}),
|
|
1242
|
+
)
|
|
1236
1243
|
enum_values = UserAPIKeyLabelValues(
|
|
1237
1244
|
end_user=user_api_key_dict.end_user_id,
|
|
1238
1245
|
user=user_api_key_dict.user_id,
|
|
@@ -1277,6 +1284,10 @@ class PrometheusLogger(CustomLogger):
|
|
|
1277
1284
|
Proxy level tracking - triggered when the proxy responds with a success response to the client
|
|
1278
1285
|
"""
|
|
1279
1286
|
try:
|
|
1287
|
+
from litellm.litellm_core_utils.litellm_logging import (
|
|
1288
|
+
StandardLoggingPayloadSetup,
|
|
1289
|
+
)
|
|
1290
|
+
|
|
1280
1291
|
enum_values = UserAPIKeyLabelValues(
|
|
1281
1292
|
end_user=user_api_key_dict.end_user_id,
|
|
1282
1293
|
hashed_api_key=user_api_key_dict.api_key,
|
|
@@ -1288,6 +1299,9 @@ class PrometheusLogger(CustomLogger):
|
|
|
1288
1299
|
user_email=user_api_key_dict.user_email,
|
|
1289
1300
|
status_code="200",
|
|
1290
1301
|
route=user_api_key_dict.request_route,
|
|
1302
|
+
tags=StandardLoggingPayloadSetup._get_request_tags(
|
|
1303
|
+
data.get("metadata", {}), data.get("proxy_server_request", {})
|
|
1304
|
+
),
|
|
1291
1305
|
)
|
|
1292
1306
|
_labels = prometheus_label_factory(
|
|
1293
1307
|
supported_enum_labels=self.get_labels_for_metric(
|
|
@@ -1352,6 +1366,7 @@ class PrometheusLogger(CustomLogger):
|
|
|
1352
1366
|
team_alias=standard_logging_payload["metadata"][
|
|
1353
1367
|
"user_api_key_team_alias"
|
|
1354
1368
|
],
|
|
1369
|
+
tags=standard_logging_payload.get("request_tags", []),
|
|
1355
1370
|
)
|
|
1356
1371
|
|
|
1357
1372
|
"""
|
|
@@ -2148,9 +2163,11 @@ class PrometheusLogger(CustomLogger):
|
|
|
2148
2163
|
|
|
2149
2164
|
It emits the current remaining budget metrics for all Keys and Teams.
|
|
2150
2165
|
"""
|
|
2166
|
+
from enterprise.litellm_enterprise.integrations.prometheus import (
|
|
2167
|
+
PrometheusLogger,
|
|
2168
|
+
)
|
|
2151
2169
|
from litellm.constants import PROMETHEUS_BUDGET_METRICS_REFRESH_INTERVAL_MINUTES
|
|
2152
2170
|
from litellm.integrations.custom_logger import CustomLogger
|
|
2153
|
-
from enterprise.litellm_enterprise.integrations.prometheus import PrometheusLogger
|
|
2154
2171
|
|
|
2155
2172
|
prometheus_loggers: List[CustomLogger] = (
|
|
2156
2173
|
litellm.logging_callback_manager.get_custom_loggers_for_type(
|
|
@@ -2280,6 +2297,8 @@ def get_custom_labels_from_tags(tags: List[str]) -> Dict[str, str]:
|
|
|
2280
2297
|
"""
|
|
2281
2298
|
Get custom labels from tags based on admin configuration
|
|
2282
2299
|
"""
|
|
2300
|
+
from litellm.types.integrations.prometheus import _sanitize_prometheus_label_name
|
|
2301
|
+
|
|
2283
2302
|
configured_tags = litellm.custom_prometheus_tags
|
|
2284
2303
|
if configured_tags is None or len(configured_tags) == 0:
|
|
2285
2304
|
return {}
|
|
@@ -2289,7 +2308,7 @@ def get_custom_labels_from_tags(tags: List[str]) -> Dict[str, str]:
|
|
|
2289
2308
|
# Map each configured tag to its presence in the request tags
|
|
2290
2309
|
for configured_tag in configured_tags:
|
|
2291
2310
|
# Create a safe prometheus label name
|
|
2292
|
-
label_name = f"tag_{configured_tag}"
|
|
2311
|
+
label_name = _sanitize_prometheus_label_name(f"tag_{configured_tag}")
|
|
2293
2312
|
|
|
2294
2313
|
# Check if this tag is present in the request tags
|
|
2295
2314
|
if configured_tag in tags:
|
|
@@ -83,15 +83,25 @@ class CheckBatchCost:
|
|
|
83
83
|
)
|
|
84
84
|
continue
|
|
85
85
|
|
|
86
|
-
|
|
87
|
-
model
|
|
88
|
-
batch_id=batch_id,
|
|
89
|
-
litellm_metadata={
|
|
90
|
-
"user_api_key_user_id": job.created_by or "default-user-id",
|
|
91
|
-
"batch_ignore_default_logging": True,
|
|
92
|
-
},
|
|
86
|
+
verbose_proxy_logger.info(
|
|
87
|
+
f"Querying model ID: {model_id} for cost and usage of batch ID: {batch_id}"
|
|
93
88
|
)
|
|
94
89
|
|
|
90
|
+
try:
|
|
91
|
+
response = await self.llm_router.aretrieve_batch(
|
|
92
|
+
model=model_id,
|
|
93
|
+
batch_id=batch_id,
|
|
94
|
+
litellm_metadata={
|
|
95
|
+
"user_api_key_user_id": job.created_by or "default-user-id",
|
|
96
|
+
"batch_ignore_default_logging": True,
|
|
97
|
+
},
|
|
98
|
+
)
|
|
99
|
+
except Exception as e:
|
|
100
|
+
verbose_proxy_logger.info(
|
|
101
|
+
f"Skipping job {unified_object_id} because of error querying model ID: {model_id} for cost and usage of batch ID: {batch_id}: {e}"
|
|
102
|
+
)
|
|
103
|
+
continue
|
|
104
|
+
|
|
95
105
|
## RETRIEVE THE BATCH JOB OUTPUT FILE
|
|
96
106
|
managed_files_obj = cast(
|
|
97
107
|
Optional[_PROXY_LiteLLMManagedFiles],
|
|
@@ -102,6 +112,9 @@ class CheckBatchCost:
|
|
|
102
112
|
and response.output_file_id is not None
|
|
103
113
|
and managed_files_obj is not None
|
|
104
114
|
):
|
|
115
|
+
verbose_proxy_logger.info(
|
|
116
|
+
f"Batch ID: {batch_id} is complete, tracking cost and usage"
|
|
117
|
+
)
|
|
105
118
|
# track cost
|
|
106
119
|
model_file_id_mapping = {
|
|
107
120
|
response.output_file_id: {model_id: response.output_file_id}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "litellm-enterprise"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.16"
|
|
4
4
|
description = "Package for LiteLLM Enterprise features"
|
|
5
5
|
authors = ["BerriAI"]
|
|
6
6
|
readme = "README.md"
|
|
@@ -22,7 +22,7 @@ requires = ["poetry-core"]
|
|
|
22
22
|
build-backend = "poetry.core.masonry.api"
|
|
23
23
|
|
|
24
24
|
[tool.commitizen]
|
|
25
|
-
version = "0.1.
|
|
25
|
+
version = "0.1.16"
|
|
26
26
|
version_files = [
|
|
27
27
|
"pyproject.toml:version",
|
|
28
28
|
"../requirements.txt:litellm-enterprise==",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/auth/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{litellm_enterprise-0.1.15 → litellm_enterprise-0.1.16}/litellm_enterprise/proxy/proxy_server.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|