Compare commits

...

37 commits

Author SHA1 Message Date
yuneng-jiang
55c9c6af17
Merge pull request #50849 from BerriAI/litellm_rc109_beta_header_test_bundled_config
test: repair four failing tests on rc/1.109.0
2026-11-10 00:34:14 -08:00
Yuneng Jiang
e4f74548a3
test(integration): cap the OAuth metadata lookup in the mixed capabilities subscription case
The second server in this case is a plain MCP SDK server registered as
oauth_delegate. The gateway's first catalog listing waits for that server's
OAuth metadata lookup, which never resolves and runs for the full
MCP_METADATA_TIMEOUT of 10 seconds. The MCP SDK client also gives
server/discover 10 seconds, so the case passed or failed on about a tenth
of a second of head start.

Setting LITELLM_MCP_METADATA_TIMEOUT to 5 for this case keeps the lookup
well inside the client limit. The case still asserts that subscription
changes are delivered and tools are refreshed across both servers.
2026-11-09 23:57:47 -08:00
Mateo Wang
d993377396
test(integration): give each kill-burst its own prompts so cached control replies cannot stand in for late traffic (#50569)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
(cherry picked from commit 0d0bf8f75f)
2026-11-09 23:57:47 -08:00
Yuneng Jiang
f8eeb05ba8
test(integration): empty the shared client cache before the tier pin batch test
The test stores its recording Redis client in litellm's shared client
cache with the default ttl. When earlier tests in the same process have
filled that cache with longer lived clients, the next insert evicts the
recording client, the pin is read through a fresh client, and the test
sees no commands on the wire.
2026-11-09 22:41:32 -08:00
Yuneng Jiang
9eedf608e7
test(vertex_ai): read the bundled beta header config in the prompt caching scope test
The test read whatever config the previous test left loaded. The
local_beta_headers_config fixture reloads from the hosted file on main
at teardown, and since #49409 that file lets vertex_ai send
prompt-caching-scope-2026-01-05 as a header, which this line's bundled
config does not.
2026-11-09 22:31:39 -08:00
yuneng-jiang
d55668e253
Merge pull request #50795 from BerriAI/litellm_rc109_drop_gemini_empty_n
test(integration): drop the empty-string n case from the Gemini long decode test
2026-11-09 18:39:55 -08:00
Yuneng Jiang
33898503ab
test(integration): drop the empty-string n case from the Gemini long decode test
Google AI Studio answers generationConfig.candidate_count "" with a 400 before it generates anything, so the truncated 200 this case scripts is a reply Google never gives. The other malformed count and cap cases stay.

This also removes the skip that covered only that case on this line.
2026-11-09 17:39:27 -08:00
yuneng-jiang
efebe3a567
Merge pull request #50757 from BerriAI/litellm_rc109_together_repin
test(e2e): backport the Together reasoning replay repin (#50601) to rc/1.109.0
2026-11-09 16:56:46 -08:00
yuneng-jiang
5d0935b361 test(e2e): repin the Together reasoning replay backend to MiniMax-M3.1-Flash (#50601)
MiniMax-M3 reached its 2026-11-06 deprecation date in the cost map, which names MiniMax-M3.1-Flash as its successor

(cherry picked from commit 1d06a1ca69)
2026-11-09 15:17:15 -08:00
yuneng-jiang
7f88a33e89
Merge pull request #49978 from BerriAI/litellm_chore_9d4b6e
Some checks failed
LiteLLM Rust DB / db-queries (push) Has been cancelled
LiteLLM Rust / rust-lint (push) Has been cancelled
LiteLLM Rust / rust-test (push) Has been cancelled
LiteLLM Rust / rust-wheel (push) Has been cancelled
chore: rebuild Admin UI bundle on rc/1.109.0
2026-11-03 15:58:57 -08:00
Yuneng Jiang
b77e4a2221
chore: update Next.js build artifacts (2026-11-03 23:55 UTC, node v24.19.0) 2026-11-03 15:55:52 -08:00
yuneng-jiang
9aa05b3e2a
Merge pull request #49945 from BerriAI/litellm_e2e_qualification_rc109
test(e2e): backport qualification repairs to rc/1.109.0
2026-11-03 13:41:20 -08:00
Yuneng Jiang
1e5cfe8ba9
test(e2e): backport qualification repairs to rc 1.109.0 2026-11-03 13:35:27 -08:00
Mateo Wang
eb505add5b
Merge pull request #49724 from BerriAI/litellm_backport_49692_rc_1_109_0
fix(bedrock): backport #49692 to rc/1.109.0
2026-11-03 20:22:48 +00:00
Yuneng Jiang
298f12dfd7
Merge remote-tracking branch 'origin/rc/1.109.0' into litellm_backport_49692_rc_1_109_0 2026-11-03 12:20:02 -08:00
Yuneng Jiang
7eb7357dda
chore: correct rc 1.109.0 subpackage patch versions 2026-11-03 12:20:02 -08:00
yuneng-jiang
26654fc154
Merge pull request #49770 from BerriAI/litellm_rc109_ledger_fault_injection
test(integration): fix rc109 ledger transaction expiry
2026-11-02 18:36:03 -08:00
Yuneng Jiang
da336da4b5
test(integration): preserve ledger transaction policy during fault injection 2026-11-02 18:29:34 -08:00
yuneng-jiang
6cd9a36ce5
Merge pull request #49754 from BerriAI/litellm_rc109_finish_integration_repairs
test(integration): finish rc/1.109.0 qualification repairs
2026-11-02 17:30:51 -08:00
Yuneng Jiang
fbcc0e75bf
test(integration): bind Messages checks to gateway credentials 2026-11-02 17:03:01 -08:00
Yuneng Jiang
9f0942ef04
test(integration): finish rc/1.109.0 qualification repairs 2026-11-02 16:39:07 -08:00
yuneng-jiang
f8c93132fb
Merge pull request #49727 from BerriAI/litellm_rc109_confirmed_product_fixes
fix: backport metadata and metric repairs to rc/1.109.0
2026-11-02 16:22:22 -08:00
yuneng-jiang
20acb3f038
Merge pull request #49746 from BerriAI/litellm_rc109_defer_malformed_gemini_count
test(integration): defer empty-count Gemini cases on rc/1.109.0
2026-11-02 16:16:09 -08:00
Yuneng Jiang
b09a68b038
test(integration): defer empty-count Gemini cases on rc/1.109.0 2026-11-02 16:01:15 -08:00
Yuneng Jiang
0c466b05ce
test: use explicit prices in cost calculation checks 2026-11-02 13:29:56 -08:00
Yuneng Jiang
a63b543044
fix(ollama): include provider declaration helper for the RC 2026-11-02 13:14:38 -08:00
Yuneng Jiang
322457c62b
fix(ollama): keep capability and pricing lookups local 2026-11-02 13:10:29 -08:00
Yuneng Jiang
4f53e29bed
fix(prometheus): retain deployment attribution on proxy failures 2026-11-02 13:05:38 -08:00
yuneng-jiang
7b223286b0
Merge pull request #49716 from BerriAI/litellm_rc_1109_remaining_integration_checks
test(integration): backport remaining qualification checks to rc/1.109.0
2026-11-02 12:43:21 -08:00
Yuneng Jiang
4eb5e1e326
test(integration): scope offline resolution to the restricted runner 2026-11-02 12:14:21 -08:00
Yuneng Jiang
5133050db6
test(integration): align remaining release qualification checks 2026-11-02 12:10:25 -08:00
mateo-berri
7d8226d965 chore: bump litellm-proxy-extras 0.4.112 -> 0.4.112.post1
litellm-proxy-extras/ changed on this line since v1.109.0-dev.2, and PyPI already has litellm-proxy-extras 0.4.112, so the release would skip publishing it and ship the line without those litellm-proxy-extras/ changes
2026-11-02 11:56:58 -08:00
mateo-berri
9e4d2dc9a4 chore: bump litellm-enterprise 0.1.81 -> 0.1.81.post1
enterprise/ changed on this line since v1.109.0-dev.2, and PyPI already has litellm-enterprise 0.1.81, so the release would skip publishing it and ship the line without those enterprise/ changes
2026-11-02 11:56:57 -08:00
zoveki
de1756a9f5 fix(bedrock)!: give Invoke and Mantle Claude the model's own default max_tokens (#49692)
* fix(bedrock): resolve Invoke Claude default max_tokens from the base model id

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* refactor(bedrock): build Invoke Claude request params without mutating

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* fix(bedrock): type tool-search normalizer return to clear unknown-type gate

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* fix(bedrock): resolve Invoke and Mantle Claude default max_tokens from the deployment id, ARN base_model, and Mantle row

* fix(bedrock): default Invoke Claude max_tokens from the deployment's own cap and honor AnthropicConfig

Read the called deployment's model_info.max_output_tokens before the base model's
cost row, skip the shared regional key the router fills from every deployment, and
leave the default to litellm.AnthropicConfig(max_tokens) when it is set.

* fix(bedrock): send the mapped default max_tokens on bedrock_mantle Claude chat

* fix(bedrock): bound a global AnthropicConfig max_tokens by the deployment's own cap

* test(bedrock): annotate the new Mantle default max_tokens tests with Final

* refactor(bedrock): inject the AnthropicConfig max_tokens reader into the Invoke Claude config

---------

Backport of #49692 to rc/1.109.0
Cherry-picked from 6be98d8c75 (main)

Co-authored-by: mateo <mateo@berri.ai>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: mateo-berri <277851410+mateo-berri@users.noreply.github.com>
2026-11-02 11:46:35 -08:00
yuneng-jiang
af70233681
Merge pull request #49694 from BerriAI/litellm_rc_1109_migration_lock_test
test(integration): backport release qualification repairs to rc 1.109.0
2026-11-02 11:27:20 -08:00
Yuneng Jiang
d77199e03a
test(integration): repair stale contract fixtures 2026-11-02 11:03:32 -08:00
Yuneng Jiang
db495be502
test(integration): scope migration lock checks on rc 1.109.0 2026-11-02 10:18:07 -08:00
538 changed files with 15244 additions and 14033 deletions

View file

@ -255,6 +255,7 @@ elif [ "${INTEGRATION_COVERAGE:-0}" = 1 ]; then
fi
env -i PATH="$PATH" HOME="$HOME" PYTHONPATH="$PYTHONPATH" \
UV_OFFLINE=true UV_CACHE_DIR="$(uv cache dir)" \
INTEGRATION_RUN_ID="$integration_identity" \
DATABASE_URL="$DATABASE_URL" \
"${shared_services[@]}" "${worker_coverage[@]}" \

View file

@ -1,6 +1,6 @@
[project]
name = "litellm-enterprise"
version = "0.1.81"
version = "0.1.82"
description = "Package for LiteLLM Enterprise features"
readme = "README.md"
requires-python = ">=3.9"
@ -26,7 +26,7 @@ required-version = ">=0.10.9"
module-root = ""
[tool.commitizen]
version = "0.1.81"
version = "0.1.82"
version_files = [
"pyproject.toml:^version",
"../pyproject.toml:litellm-enterprise==",

View file

@ -1,6 +1,6 @@
[project]
name = "litellm-proxy-extras"
version = "0.4.112"
version = "0.4.113"
description = "Additional files for the LiteLLM Proxy. Reduces the size of the main litellm package."
readme = "README.md"
requires-python = ">=3.9"
@ -30,7 +30,7 @@ required-version = ">=0.10.9"
module-root = ""
[tool.commitizen]
version = "0.4.112"
version = "0.4.113"
version_files = [
"pyproject.toml:^version",
"../pyproject.toml:litellm-proxy-extras==",

View file

@ -155,6 +155,8 @@ from litellm.utils import (
TranscriptionResponse,
cached_cost_map_key,
cached_get_model_info_helper,
get_model_info_for_pricing,
get_model_info_helper_for_pricing,
mapped_model_fill_missing,
model_info_with_pricing_overrides,
runtime_model_cost_registrations,
@ -379,7 +381,7 @@ def _per_second_pricing_cost(
audio_seconds: float = 0.0,
) -> tuple[float, float] | None:
try:
model_info: Final = cached_get_model_info_helper(model=model, custom_llm_provider=custom_llm_provider)
model_info: Final = get_model_info_helper_for_pricing(model=model, custom_llm_provider=custom_llm_provider)
except Exception: # noqa: BLE001 # the lookup raises plain Exception for an unmapped model
return None
if _has_token_or_tiered_pricing(model_info) or not _bills_wall_clock_seconds(model_info):
@ -600,7 +602,9 @@ def cost_per_token(
model = model_without_prefix
if is_decisions_call_type(call_type):
decisions_model_info: Final = cached_get_model_info_helper(model=model, custom_llm_provider=custom_llm_provider)
decisions_model_info: Final = get_model_info_helper_for_pricing(
model=model, custom_llm_provider=custom_llm_provider
)
decisions_overrides: Final = decisions_pricing_fields(
litellm.model_cost.get(decisions_model_info["key"], {}) # pyright: ignore[reportUnknownMemberType, reportUnknownArgumentType] # model cost map is dynamically loaded
)
@ -808,7 +812,7 @@ def cost_per_token(
service_tier=service_tier,
)
else:
model_info: Final = cached_get_model_info_helper(model=model, custom_llm_provider=custom_llm_provider)
model_info: Final = get_model_info_helper_for_pricing(model=model, custom_llm_provider=custom_llm_provider)
if _has_token_or_tiered_pricing(model_info):
return generic_cost_per_token(
model=model,
@ -2604,7 +2608,7 @@ def _layered_ocr_pricing(*sources: Mapping[str, object] | None) -> OCRPricing:
def _cost_map_model_info(model: str, custom_llm_provider: str | None) -> ModelInfo | None:
try:
return litellm.get_model_info(model=model, custom_llm_provider=custom_llm_provider)
return get_model_info_for_pricing(model=model, custom_llm_provider=custom_llm_provider)
except Exception:
return None

View file

@ -3036,7 +3036,7 @@ class PrometheusLogger(CustomLogger):
async def async_post_call_failure_hook(
self,
request_data: dict,
request_data: dict[str, object],
original_exception: Exception,
user_api_key_dict: UserAPIKeyAuth,
traceback_str: str | None = None,
@ -3059,10 +3059,14 @@ class PrometheusLogger(CustomLogger):
try:
_tags: Final = StandardLoggingPayloadSetup.get_request_tags(
litellm_params=request_data,
proxy_server_request=request_data.get("proxy_server_request", {}),
proxy_server_request=_logged_fields(request_data.get("proxy_server_request")),
)
_metadata: Final = _logged_fields(request_data.get("metadata"))
model_id: Final = (
_logged_fields(_metadata.get("model_info")).get("id")
or _logged_fields(request_data.get("model_info")).get("id")
or _logged_fields(request_data.get("standard_logging_object")).get("model_id")
)
_metadata: Final = request_data.get("metadata", {}) or {}
model_id: Final = _metadata.get("model_info", {}).get("id") or request_data.get("model_info", {}).get("id")
rate_limit_category, rate_limit_type = self._extract_rate_limit_labels(original_exception)
api_provider: Final = self._extract_api_provider_from_request_data(
request_data

View file

@ -146,6 +146,10 @@ def handle_anthropic_text_model_custom_llm_provider(
return model, custom_llm_provider
def declared_provider(model: str | None, custom_llm_provider: str | None = None) -> str | None:
return custom_llm_provider or (model.split("/", 1)[0] if model and "/" in model else None)
def declared_authenticating_provider(model: str | None, custom_llm_provider: str | None = None) -> str | None:
"""The authenticating provider this pair already names, or None.
@ -154,7 +158,7 @@ def declared_authenticating_provider(model: str | None, custom_llm_provider: str
and for a declared pair the resolver's answer is the declaration itself, so metadata callers
adopt the declaration instead of resolving.
"""
declared: Final = custom_llm_provider or (model.split("/", 1)[0] if model and "/" in model else None)
declared: Final = declared_provider(model, custom_llm_provider)
return declared if declared in PROVIDERS_THAT_AUTHENTICATE_ON_PROVIDER_INFO else None

View file

@ -211,7 +211,7 @@ from litellm.types.utils import (
batch_chat_usage,
)
from litellm.types.videos.main import VideoObject
from litellm.utils import get_base_model_from_metadata, print_verbose
from litellm.utils import get_base_model_from_metadata, get_model_info_for_pricing, print_verbose
from ..integrations.argilla import ArgillaLogger
from ..integrations.arize.arize_phoenix import ArizePhoenixLogger
@ -7113,7 +7113,7 @@ class StandardLoggingPayloadSetup:
model_cost_information = StandardLoggingModelInformation(model_map_key="", model_map_value=None)
else:
try:
_model_cost_information: Final = litellm.get_model_info(
_model_cost_information: Final = get_model_info_for_pricing(
model=pricing_model_name or model_cost_name,
custom_llm_provider=custom_llm_provider,
api_base=api_base,

View file

@ -35,7 +35,7 @@ from litellm.types.utils import (
Usage,
text_tokens_without_nested_reasoning,
)
from litellm.utils import get_model_info
from litellm.utils import get_model_info, get_model_info_for_pricing
# Pre-resolved CallTypes enum values for fast membership checks
_IMAGE_RESPONSE_CALL_TYPES: Final = frozenset(
@ -1491,7 +1491,9 @@ def generic_cost_per_token(
# per-deployment override: those are registered under the deployment id and kept off
# the shared model-name key, so resolving from the name here reads the public rate.
resolved_model_info: Final = apply_provider_cache_read_default(
get_model_info(model=model, custom_llm_provider=custom_llm_provider) if model_info is None else model_info,
get_model_info_for_pricing(model=model, custom_llm_provider=custom_llm_provider)
if model_info is None
else model_info,
custom_llm_provider,
)
@ -1824,7 +1826,7 @@ def get_billed_token_rates(
resolved_model_info: Final = apply_provider_cache_read_default(
model_info
if model_info is not None
else get_model_info(model=model, custom_llm_provider=custom_llm_provider),
else get_model_info_for_pricing(model=model, custom_llm_provider=custom_llm_provider),
custom_llm_provider,
)
except Exception: # noqa: BLE001 # get_model_info raises a bare Exception for an unmapped model: no rates

View file

@ -60,6 +60,7 @@ from litellm.types.decisions import (
systemone_choice_key,
)
from litellm.types.utils import is_decisions_model_mode
from litellm.utils import get_model_info_helper
_PAYLOAD_ADAPTER: Final[TypeAdapter[object]] = TypeAdapter(object)
_SYSTEMONE_RESPONSE_ADAPTER: Final[TypeAdapter[DecisionsResponse]] = TypeAdapter(DecisionsResponse)
@ -500,7 +501,9 @@ def ir_to_systemone_response(response: DecisionsIRResponse, request: DecisionsIR
def catalog_mode(model: str, custom_llm_provider: str) -> str | None:
try:
key: Final = litellm.get_model_info(model=model, custom_llm_provider=custom_llm_provider)["key"]
key: Final = get_model_info_helper(model=model, custom_llm_provider=custom_llm_provider, catalog_only=True)[
"key"
]
except Exception: # noqa: BLE001 # get_model_info raises bare Exception for an unmapped model, which the catalog does not list
return None
entry: Final = GetModelCostMap.loaded_model_cost_map().get(key)
@ -510,7 +513,9 @@ def catalog_mode(model: str, custom_llm_provider: str) -> str | None:
def _is_decisions_model(model: str, custom_llm_provider: str) -> bool:
try:
model_mode: Final = litellm.get_model_info(model=model, custom_llm_provider=custom_llm_provider).get("mode")
model_mode: Final = get_model_info_helper(
model=model, custom_llm_provider=custom_llm_provider, catalog_only=True
).get("mode")
except Exception: # noqa: BLE001 # get_model_info raises bare Exception for an unmapped model, which has no mode
return False
return is_decisions_model_mode(model_mode)

View file

@ -1,11 +1,13 @@
from collections.abc import Mapping
from collections.abc import Callable, Mapping
from typing import TYPE_CHECKING, Any, Final
import httpx
from pydantic import TypeAdapter
import litellm
from litellm.anthropic_beta_gated_fields import strip_beta_gated_request_body
from litellm.anthropic_beta_headers_manager import filter_and_transform_beta_headers
from litellm.constants import DEFAULT_ANTHROPIC_CHAT_MAX_TOKENS
from litellm.litellm_core_utils.llm_cost_calc.guardrail_cost import object_mapping
from litellm.litellm_core_utils.prompt_templates.factory import (
convert_to_anthropic_image_obj,
@ -25,7 +27,9 @@ from litellm.llms.bedrock.chat.invoke_transformations.base_invoke_transformation
)
from litellm.llms.bedrock.common_utils import (
BEDROCK_INVOKE_TRACE_FIELD,
BedrockModelInfo,
apply_bedrock_invoke_structured_output,
bedrock_capability_model,
bedrock_chat_uses_native_structured_output,
bedrock_cleaned_output_schema,
bedrock_supports_tool_search,
@ -35,6 +39,7 @@ from litellm.llms.bedrock.common_utils import (
normalize_custom_field_on_tools,
normalize_tool_input_schema_types_for_bedrock_invoke,
requests_opt_in_native_output,
strip_bedrock_routing_prefix,
strip_unsupported_bedrock_invoke_output_config_keys,
tools_without_eager_input_streaming,
)
@ -59,6 +64,19 @@ _NON_DEFAULT_PARAMS: Final = TypeAdapter(Mapping[str, object])
_LITELLM_PARAMS: Final = TypeAdapter(Mapping[str, object])
def _anthropic_config_max_tokens() -> int | None:
return litellm.AnthropicConfig.max_tokens
def _mapped_max_tokens(model: str) -> int | None:
row: Final = object_mapping(litellm.model_cost.get(model)) or {} # pyright: ignore[reportUnknownMemberType, reportUnknownArgumentType] # cost map rows are untyped JSON
match row.get("max_output_tokens"):
case int() as max_tokens:
return max_tokens
case _:
return None
class AmazonAnthropicClaudeConfig(AmazonInvokeConfig, AnthropicConfig):
"""
Reference:
@ -79,9 +97,18 @@ class AmazonAnthropicClaudeConfig(AmazonInvokeConfig, AnthropicConfig):
anthropic_version: str = "bedrock-2023-05-31"
def __init__(self, model_info: Mapping[str, object] | None = None) -> None:
def __init__(
self,
model_info: Mapping[str, object] | None = None,
read_configured_max_tokens: Callable[[], int | None] = _anthropic_config_max_tokens,
) -> None:
super().__init__()
self._deployment_model_info: Final = model_info
self._read_configured_max_tokens: Final = read_configured_max_tokens
@classmethod
def get_config(cls, *, model: str | None = None) -> dict[str, object]: # mutable-ok: overrides BaseConfig's dict
return {key: value for key, value in super().get_config(model=model).items() if key != "max_tokens"}
@property
def custom_llm_provider(self) -> str | None:
@ -241,6 +268,36 @@ class AmazonAnthropicClaudeConfig(AmazonInvokeConfig, AnthropicConfig):
headers=headers,
)
def _default_max_tokens_models(self, model: str, litellm_params: Mapping[str, object]) -> tuple[str, ...]:
return (
BedrockModelInfo.get_base_model(
bedrock_capability_model(strip_bedrock_routing_prefix(model), litellm_params.get("base_model"))
),
)
def _default_max_tokens(self, model: str, litellm_params: Mapping[str, object]) -> int:
configured_max_tokens: Final = self._read_configured_max_tokens()
match deployment_model_info(litellm_params).get("max_output_tokens"):
case int() as deployment_max_tokens:
return (
deployment_max_tokens
if configured_max_tokens is None
else min(deployment_max_tokens, configured_max_tokens)
)
case _ if configured_max_tokens is not None:
return configured_max_tokens
case _:
return next(
(
max_tokens
for max_tokens in map(
_mapped_max_tokens, self._default_max_tokens_models(model, litellm_params)
)
if max_tokens is not None
),
DEFAULT_ANTHROPIC_CHAT_MAX_TOKENS,
)
def _build_bedrock_anthropic_request_base(
self,
model: str,
@ -257,13 +314,21 @@ class AmazonAnthropicClaudeConfig(AmazonInvokeConfig, AnthropicConfig):
model=model,
output_config=filtered_params["output_config"],
)
filtered_params = self._normalize_bedrock_tool_search_tools(filtered_params)
normalized_params: Final = self._normalize_bedrock_tool_search_tools(filtered_params)
default_max_tokens: Final = (
None
if "max_tokens" in normalized_params
else self._default_max_tokens(model, _LITELLM_PARAMS.validate_python(litellm_params))
)
request_params: Final = (
normalized_params if default_max_tokens is None else {**normalized_params, "max_tokens": default_max_tokens}
)
anthropic_request: Final = AnthropicConfig.transform_request(
self,
model=model,
messages=messages,
optional_params=filtered_params,
optional_params=request_params,
litellm_params=litellm_params,
headers=headers,
)
@ -377,7 +442,7 @@ class AmazonAnthropicClaudeConfig(AmazonInvokeConfig, AnthropicConfig):
"data": image_chunk["data"],
}
def _normalize_bedrock_tool_search_tools(self, optional_params: dict) -> dict:
def _normalize_bedrock_tool_search_tools(self, optional_params: dict) -> dict[str, object]:
"""
Convert tool search entries to the format supported by the Bedrock Invoke API.
"""

View file

@ -54,6 +54,9 @@ class AmazonMantleConfig(AmazonAnthropicClaudeConfig):
region=region,
)
def _default_max_tokens_models(self, model: str, litellm_params: Mapping[str, object]) -> tuple[str, ...]:
return (f"bedrock_mantle/{model}", *super()._default_max_tokens_models(model, litellm_params))
def validate_environment(
self,
headers: dict,

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,71 +1,76 @@
1:"$Sreact.fragment"
2:"/litellm-asset-prefix/_next/static/chunks/0a-rekt06v0sv.js"
3:"/litellm-asset-prefix/_next/static/chunks/2_9r2jeem0dh8.js"
4:"/litellm-asset-prefix/_next/static/chunks/0tx19jeq-wskb.js"
5:I[363178,["$2","$3","$4"],"ThemeProvider"]
6:I[12985,["$2","$3","$4"],"NuqsAdapter"]
7:I[867271,["$2","$3","$4"],"default"]
8:"TerminologyProvider"
9:I[283634,["$2","$3","$4"],"$8"]
a:I[656682,["$2","$3","$4"],"default"]
b:I[557951,["$2","$3","$4"],"AuthProvider"]
c:I[339756,["$2","$3","$4"],"default"]
d:I[837457,["$2","$3","$4"],"default"]
e:I[713354,["$2","$3","$4"],"Toaster"]
18:"ViewportBoundary"
19:I[897367,["$2","$3","$4"],"$18"]
1a:"MetadataBoundary"
1b:I[897367,["$2","$3","$4"],"$1a"]
1c:"$Sreact.suspense"
1d:I[27201,["$2","$3","$4"],"IconMark"]
3:"/litellm-asset-prefix/_next/static/chunks/0whs1nv27w-4p.js"
4:"/litellm-asset-prefix/_next/static/chunks/23z3yylt1gm8n.js"
5:"/litellm-asset-prefix/_next/static/chunks/2xpjos3nb6yh4.js"
6:I[419159,["$2","$3","$4","$5"],"default"]
7:I[363178,["$2","$3","$4","$5"],"ThemeProvider"]
8:I[12985,["$2","$3","$4","$5"],"NuqsAdapter"]
9:I[867271,["$2","$3","$4","$5"],"default"]
a:"TerminologyProvider"
b:I[283634,["$2","$3","$4","$5"],"$a"]
c:I[656682,["$2","$3","$4","$5"],"default"]
d:I[557951,["$2","$3","$4","$5"],"AuthProvider"]
e:I[339756,["$2","$3","$4","$5"],"default"]
f:I[837457,["$2","$3","$4","$5"],"default"]
10:I[713354,["$2","$3","$4","$5"],"Toaster"]
1c:"ViewportBoundary"
1d:I[897367,["$2","$3","$4","$5"],"$1c"]
1e:"MetadataBoundary"
1f:I[897367,["$2","$3","$4","$5"],"$1e"]
20:"$Sreact.suspense"
21:I[27201,["$2","$3","$4","$5"],"IconMark"]
:HL["/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","style"]
:HL["/litellm-asset-prefix/_next/static/chunks/0598zsj78ni2h.css","style"]
10:X
15:[["children",{"s":"__PAGE__","h":160,"d":{"r":"$L16","p":"$@17","v":null,"s":"$10"}}]]
11:[["children",{"s":"(dashboard)","h":96,"d":{"r":["$","$1","c",{"children":[[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js","async":true}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/1zju-fgvhby-r.js","async":true}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/32d1uqn-sef7-.js","async":true}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/138wymdv6q3wy.js","async":true}],["$","script","script-4",{"src":"/litellm-asset-prefix/_next/static/chunks/44oxggpk8fep6.js","async":true}],["$","script","script-5",{"src":"/litellm-asset-prefix/_next/static/chunks/3s77-_umb2pas.js","async":true}],["$","script","script-6",{"src":"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js","async":true}],["$","script","script-7",{"src":"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js","async":true}],["$","script","script-8",{"src":"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js","async":true}],["$","script","script-9",{"src":"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js","async":true}],["$","script","script-10",{"src":"/litellm-asset-prefix/_next/static/chunks/2j7hjtph8n74b.js","async":true}],["$","script","script-11",{"src":"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js","async":true}],["$","script","script-12",{"src":"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js","async":true}],["$","script","script-13",{"src":"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js","async":true}],["$","script","script-14",{"src":"/litellm-asset-prefix/_next/static/chunks/2l8ss800ubmmh.js","async":true}],["$","script","script-15",{"src":"/litellm-asset-prefix/_next/static/chunks/13d402rvlr6kh.js","async":true}],["$","script","script-16",{"src":"/litellm-asset-prefix/_next/static/chunks/3t9yzf1l2_xau.js","async":true}],["$","script","script-17",{"src":"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js","async":true}],["$","script","script-18",{"src":"/litellm-asset-prefix/_next/static/chunks/3cziaul2j05he.js","async":true}],"$L12"],"$L13"]}],"p":"$@14","v":null,"s":"$10"},"c":"$Q15"}]]
0:{"t":{"t":{"s":"","h":80,"d":{"r":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/0598zsj78ni2h.css","precedence":"next"}],["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/0a-rekt06v0sv.js","async":true}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/2_9r2jeem0dh8.js","async":true}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/0tx19jeq-wskb.js","async":true}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"OU16Qa_className","children":["$","$L5",null,{"attribute":"class","defaultTheme":"light","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L6",null,{"children":["$","$L7",null,{"children":[["$","$L9",null,{"children":["$","$La",null,{"children":["$","$Lb",null,{"children":["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]}],["$","$Le",null,{}]]}]}]}]}]}]]}],"p":"$@f","v":null,"s":"$10"},"c":"$Q11"},"h":{"r":["$","$1","h",{"children":[null,["$","$L19",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","$L1b",null,{"children":[["$","div",null,{"hidden":true,"children":["$","$1c",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"LiteLLM Dashboard"}],["$","meta","1",{"name":"description","content":"LiteLLM Proxy Admin UI"}],["$","link","2",{"rel":"icon","href":"/favicon.ico?favicon.34m4ev7_7ennf.ico","sizes":"48x48","type":"image/x-icon"}],["$","link","3",{"rel":"icon","href":"/get_favicon"}],["$","$L1d","4",{}]]}]}],null]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"p":"$@1e","v":null,"s":"$10"}},"a":"$@1f","u":"$@20","b":"gyn32IHLXvPl9GksQaEMb"}
21:"ClientSegmentRoot"
22:I[92825,["$2","$3","$4"],"$21"]
23:"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js"
24:"/litellm-asset-prefix/_next/static/chunks/1zju-fgvhby-r.js"
25:"/litellm-asset-prefix/_next/static/chunks/32d1uqn-sef7-.js"
26:"/litellm-asset-prefix/_next/static/chunks/138wymdv6q3wy.js"
27:"/litellm-asset-prefix/_next/static/chunks/44oxggpk8fep6.js"
28:"/litellm-asset-prefix/_next/static/chunks/3s77-_umb2pas.js"
29:"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js"
2a:"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js"
2b:"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js"
2c:"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js"
2d:"/litellm-asset-prefix/_next/static/chunks/2j7hjtph8n74b.js"
2e:"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js"
2f:"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js"
30:"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js"
31:"/litellm-asset-prefix/_next/static/chunks/2l8ss800ubmmh.js"
32:"/litellm-asset-prefix/_next/static/chunks/13d402rvlr6kh.js"
33:"/litellm-asset-prefix/_next/static/chunks/3t9yzf1l2_xau.js"
34:"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js"
35:"/litellm-asset-prefix/_next/static/chunks/3cziaul2j05he.js"
36:"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js"
37:I[216370,["$2","$3","$4","$23","$24","$25","$26","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33","$34","$35","$36"],"default"]
39:I[347257,["$2","$3","$4"],"ClientPageRoot"]
3a:"/litellm-asset-prefix/_next/static/chunks/1avj5q5vr8i-4.js"
3b:"/litellm-asset-prefix/_next/static/chunks/2aqdbosnh_sy6.js"
3c:"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js"
3d:"/litellm-asset-prefix/_next/static/chunks/0jodjixl6-lwk.js"
3e:I[871135,["$2","$3","$4","$23","$24","$25","$26","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33","$34","$35","$36","$3a","$3b","$3c","$3d"],"default"]
41:I[897367,["$2","$3","$4"],"OutletBoundary"]
12:["$","script","script-19",{"src":"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js","async":true}]
13:["$","$L22",null,{"Component":"$37","slots":{"children":["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]]}]},"serverProvidedParams":{"params":{},"promises":["$@38"]}}]
16:["$","$1","c",{"children":[["$","$L39",null,{"Component":"$3e","serverProvidedParams":{"searchParams":{},"params":"$13:props:serverProvidedParams:params","promises":["$@3f","$@40"]}}],[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/1avj5q5vr8i-4.js","async":true}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/2aqdbosnh_sy6.js","async":true}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js","async":true}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/0jodjixl6-lwk.js","async":true}]],["$","$L41",null,{"children":["$","$1c",null,{"name":"Next.MetadataOutlet","children":"$@42"}]}]]}]
10:300
38:"$13:props:serverProvidedParams:params"
3f:{}
40:"$13:props:serverProvidedParams:params"
42:null
20:true
10:C
1f:0
f:"$undefined"
1e:"$undefined"
17:"$undefined"
14:"$undefined"
:HL["/litellm-asset-prefix/_next/static/chunks/3imrwezdxy-f0.css","style"]
12:X
19:[["children",{"s":"__PAGE__","h":160,"d":{"r":"$L1a","p":"$@1b","v":null,"s":"$12"}}]]
13:[["children",{"s":"(dashboard)","h":96,"d":{"r":["$","$1","c",{"children":[[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/05rbx4f99s_mc.js","async":true}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/093p9wry_dbzw.js","async":true}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js","async":true}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/3j2it4e3149lm.js","async":true}],["$","script","script-4",{"src":"/litellm-asset-prefix/_next/static/chunks/223lgr5da13bk.js","async":true}],["$","script","script-5",{"src":"/litellm-asset-prefix/_next/static/chunks/2vj12ulas06oa.js","async":true}],["$","script","script-6",{"src":"/litellm-asset-prefix/_next/static/chunks/2ff3rim4oi2cc.js","async":true}],["$","script","script-7",{"src":"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js","async":true}],["$","script","script-8",{"src":"/litellm-asset-prefix/_next/static/chunks/0m3d_l40-c_eu.js","async":true}],["$","script","script-9",{"src":"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js","async":true}],["$","script","script-10",{"src":"/litellm-asset-prefix/_next/static/chunks/0c55iw8mjlbxy.js","async":true}],["$","script","script-11",{"src":"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js","async":true}],["$","script","script-12",{"src":"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js","async":true}],["$","script","script-13",{"src":"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js","async":true}],["$","script","script-14",{"src":"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js","async":true}],["$","script","script-15",{"src":"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js","async":true}],["$","script","script-16",{"src":"/litellm-asset-prefix/_next/static/chunks/2mno6omnbsrll.js","async":true}],["$","script","script-17",{"src":"/litellm-asset-prefix/_next/static/chunks/0uiha79glxxxq.js","async":true}],"$L14","$L15","$L16"],"$L17"]}],"p":"$@18","v":null,"s":"$12"},"c":"$Q19"}]]
0:{"t":{"t":{"s":"","h":80,"d":{"r":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/3imrwezdxy-f0.css","precedence":"next"}],["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/0a-rekt06v0sv.js","async":true}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/0whs1nv27w-4p.js","async":true}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/23z3yylt1gm8n.js","async":true}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/2xpjos3nb6yh4.js","async":true}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"OU16Qa_className","children":["$","$L6",null,{"children":["$","$L7",null,{"attribute":"class","defaultTheme":"light","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L8",null,{"children":["$","$L9",null,{"children":[["$","$Lb",null,{"children":["$","$Lc",null,{"children":["$","$Ld",null,{"children":["$","$Le",null,{"parallelRouterKey":"children","template":["$","$Lf",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]}],["$","$L10",null,{}]]}]}]}]}]}]}]]}],"p":"$@11","v":null,"s":"$12"},"c":"$Q13"},"h":{"r":["$","$1","h",{"children":[null,["$","$L1d",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","$L1f",null,{"children":[["$","div",null,{"hidden":true,"children":["$","$20",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"LiteLLM Dashboard"}],["$","meta","1",{"name":"description","content":"LiteLLM Proxy Admin UI"}],["$","link","2",{"rel":"icon","href":"/favicon.ico?favicon.34m4ev7_7ennf.ico","sizes":"48x48","type":"image/x-icon"}],["$","link","3",{"rel":"icon","href":"/get_favicon"}],["$","$L21","4",{}]]}]}],null]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"p":"$@22","v":null,"s":"$12"}},"a":"$@23","u":"$@24","b":"vaqa8IMfgYULCB9kkT63q"}
25:"ClientSegmentRoot"
26:I[92825,["$2","$3","$4","$5"],"$25"]
27:"/litellm-asset-prefix/_next/static/chunks/05rbx4f99s_mc.js"
28:"/litellm-asset-prefix/_next/static/chunks/093p9wry_dbzw.js"
29:"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js"
2a:"/litellm-asset-prefix/_next/static/chunks/3j2it4e3149lm.js"
2b:"/litellm-asset-prefix/_next/static/chunks/223lgr5da13bk.js"
2c:"/litellm-asset-prefix/_next/static/chunks/2vj12ulas06oa.js"
2d:"/litellm-asset-prefix/_next/static/chunks/2ff3rim4oi2cc.js"
2e:"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js"
2f:"/litellm-asset-prefix/_next/static/chunks/0m3d_l40-c_eu.js"
30:"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js"
31:"/litellm-asset-prefix/_next/static/chunks/0c55iw8mjlbxy.js"
32:"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js"
33:"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js"
34:"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js"
35:"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js"
36:"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js"
37:"/litellm-asset-prefix/_next/static/chunks/2mno6omnbsrll.js"
38:"/litellm-asset-prefix/_next/static/chunks/0uiha79glxxxq.js"
39:"/litellm-asset-prefix/_next/static/chunks/3gorz8m4pykq3.js"
3a:"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js"
3b:"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js"
3c:I[216370,["$2","$3","$4","$5","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33","$34","$35","$36","$37","$38","$39","$3a","$3b"],"default"]
3e:I[347257,["$2","$3","$4","$5"],"ClientPageRoot"]
3f:"/litellm-asset-prefix/_next/static/chunks/2mugxwq5ws91u.js"
40:"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js"
41:"/litellm-asset-prefix/_next/static/chunks/07gs0vohcw6g-.js"
42:"/litellm-asset-prefix/_next/static/chunks/1x88h31rqm6cs.js"
43:I[871135,["$2","$3","$4","$5","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33","$34","$35","$36","$37","$38","$39","$3a","$3b","$3f","$40","$41","$42"],"default"]
46:I[897367,["$2","$3","$4","$5"],"OutletBoundary"]
14:["$","script","script-18",{"src":"/litellm-asset-prefix/_next/static/chunks/3gorz8m4pykq3.js","async":true}]
15:["$","script","script-19",{"src":"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js","async":true}]
16:["$","script","script-20",{"src":"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js","async":true}]
17:["$","$L26",null,{"Component":"$3c","slots":{"children":["$","$Le",null,{"parallelRouterKey":"children","template":["$","$Lf",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]]}]},"serverProvidedParams":{"params":{},"promises":["$@3d"]}}]
1a:["$","$1","c",{"children":[["$","$L3e",null,{"Component":"$43","serverProvidedParams":{"searchParams":{},"params":"$17:props:serverProvidedParams:params","promises":["$@44","$@45"]}}],[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/2mugxwq5ws91u.js","async":true}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js","async":true}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/07gs0vohcw6g-.js","async":true}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/1x88h31rqm6cs.js","async":true}]],["$","$L46",null,{"children":["$","$20",null,{"name":"Next.MetadataOutlet","children":"$@47"}]}]]}]
12:300
3d:"$17:props:serverProvidedParams:params"
44:{}
45:"$17:props:serverProvidedParams:params"
47:null
24:true
12:C
23:0
11:"$undefined"
22:"$undefined"
1b:"$undefined"
18:"$undefined"

View file

@ -1,68 +1,74 @@
1:"$Sreact.fragment"
2:"/litellm-asset-prefix/_next/static/chunks/0a-rekt06v0sv.js"
3:"/litellm-asset-prefix/_next/static/chunks/2_9r2jeem0dh8.js"
4:"/litellm-asset-prefix/_next/static/chunks/0tx19jeq-wskb.js"
5:I[363178,["$2","$3","$4"],"ThemeProvider"]
6:I[12985,["$2","$3","$4"],"NuqsAdapter"]
7:I[867271,["$2","$3","$4"],"default"]
8:"TerminologyProvider"
9:I[283634,["$2","$3","$4"],"$8"]
a:I[656682,["$2","$3","$4"],"default"]
b:I[557951,["$2","$3","$4"],"AuthProvider"]
c:I[339756,["$2","$3","$4"],"default"]
d:I[837457,["$2","$3","$4"],"default"]
e:I[713354,["$2","$3","$4"],"Toaster"]
16:"ViewportBoundary"
17:I[897367,["$2","$3","$4"],"$16"]
19:"MetadataBoundary"
1a:I[897367,["$2","$3","$4"],"$19"]
1b:"$Sreact.suspense"
1d:I[168027,["$2","$3","$4"],"default",1]
3:"/litellm-asset-prefix/_next/static/chunks/0whs1nv27w-4p.js"
4:"/litellm-asset-prefix/_next/static/chunks/23z3yylt1gm8n.js"
5:"/litellm-asset-prefix/_next/static/chunks/2xpjos3nb6yh4.js"
6:I[419159,["$2","$3","$4","$5"],"default"]
7:I[363178,["$2","$3","$4","$5"],"ThemeProvider"]
8:I[12985,["$2","$3","$4","$5"],"NuqsAdapter"]
9:I[867271,["$2","$3","$4","$5"],"default"]
a:"TerminologyProvider"
b:I[283634,["$2","$3","$4","$5"],"$a"]
c:I[656682,["$2","$3","$4","$5"],"default"]
d:I[557951,["$2","$3","$4","$5"],"AuthProvider"]
e:I[339756,["$2","$3","$4","$5"],"default"]
f:I[837457,["$2","$3","$4","$5"],"default"]
10:I[713354,["$2","$3","$4","$5"],"Toaster"]
1b:"ViewportBoundary"
1c:I[897367,["$2","$3","$4","$5"],"$1b"]
1e:"MetadataBoundary"
1f:I[897367,["$2","$3","$4","$5"],"$1e"]
20:"$Sreact.suspense"
22:I[168027,["$2","$3","$4","$5"],"default",1]
:HL["/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","style"]
:HL["/litellm-asset-prefix/_next/static/chunks/0598zsj78ni2h.css","style"]
:HL["/litellm-asset-prefix/_next/static/chunks/3imrwezdxy-f0.css","style"]
:HL["/litellm-asset-prefix/_next/static/media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
14:[["children",{"s":"__PAGE__","h":512,"d":{"r":"$L15","p":false,"v":null}}]]
f:[["children",{"s":"(dashboard)","h":512,"d":{"r":["$","$1","c",{"children":[[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/1zju-fgvhby-r.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/32d1uqn-sef7-.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/138wymdv6q3wy.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/litellm-asset-prefix/_next/static/chunks/44oxggpk8fep6.js","async":true,"nonce":"$undefined"}],["$","script","script-5",{"src":"/litellm-asset-prefix/_next/static/chunks/3s77-_umb2pas.js","async":true,"nonce":"$undefined"}],["$","script","script-6",{"src":"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js","async":true,"nonce":"$undefined"}],["$","script","script-7",{"src":"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js","async":true,"nonce":"$undefined"}],["$","script","script-8",{"src":"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js","async":true,"nonce":"$undefined"}],["$","script","script-9",{"src":"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js","async":true,"nonce":"$undefined"}],["$","script","script-10",{"src":"/litellm-asset-prefix/_next/static/chunks/2j7hjtph8n74b.js","async":true,"nonce":"$undefined"}],["$","script","script-11",{"src":"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js","async":true,"nonce":"$undefined"}],["$","script","script-12",{"src":"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js","async":true,"nonce":"$undefined"}],["$","script","script-13",{"src":"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js","async":true,"nonce":"$undefined"}],["$","script","script-14",{"src":"/litellm-asset-prefix/_next/static/chunks/2l8ss800ubmmh.js","async":true,"nonce":"$undefined"}],["$","script","script-15",{"src":"/litellm-asset-prefix/_next/static/chunks/13d402rvlr6kh.js","async":true,"nonce":"$undefined"}],["$","script","script-16",{"src":"/litellm-asset-prefix/_next/static/chunks/3t9yzf1l2_xau.js","async":true,"nonce":"$undefined"}],"$L10","$L11","$L12"],"$L13"]}],"p":false,"v":null},"c":"$Q14"}]]
0:{"P":null,"c":["",""],"q":"","i":false,"t":{"t":{"s":"","h":528,"d":{"r":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/0598zsj78ni2h.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/0a-rekt06v0sv.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/2_9r2jeem0dh8.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/0tx19jeq-wskb.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"OU16Qa_className","children":["$","$L5",null,{"attribute":"class","defaultTheme":"light","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L6",null,{"children":["$","$L7",null,{"children":[["$","$L9",null,{"children":["$","$La",null,{"children":["$","$Lb",null,{"children":["$","$Lc",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$Ld",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}],["$","$Le",null,{}]]}]}]}]}]}]]}],"p":false,"v":null},"c":"$Qf"},"h":{"r":["$","$1","h",{"children":[null,["$","$L17",null,{"children":"$L18"}],["$","$L1a",null,{"children":[["$","div",null,{"hidden":true,"children":["$","$1b",null,{"name":"Next.Metadata","children":"$L1c"}]}],null]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"p":false,"v":null}},"m":"$undefined","G":["$1d",[["$","link","0",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/0598zsj78ni2h.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"gyn32IHLXvPl9GksQaEMb"}
1e:"ClientSegmentRoot"
1f:I[92825,["$2","$3","$4"],"$1e"]
20:"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js"
21:"/litellm-asset-prefix/_next/static/chunks/1zju-fgvhby-r.js"
22:"/litellm-asset-prefix/_next/static/chunks/32d1uqn-sef7-.js"
23:"/litellm-asset-prefix/_next/static/chunks/138wymdv6q3wy.js"
24:"/litellm-asset-prefix/_next/static/chunks/44oxggpk8fep6.js"
25:"/litellm-asset-prefix/_next/static/chunks/3s77-_umb2pas.js"
26:"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js"
27:"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js"
28:"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js"
29:"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js"
2a:"/litellm-asset-prefix/_next/static/chunks/2j7hjtph8n74b.js"
2b:"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js"
2c:"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js"
2d:"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js"
2e:"/litellm-asset-prefix/_next/static/chunks/2l8ss800ubmmh.js"
2f:"/litellm-asset-prefix/_next/static/chunks/13d402rvlr6kh.js"
30:"/litellm-asset-prefix/_next/static/chunks/3t9yzf1l2_xau.js"
31:"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js"
32:"/litellm-asset-prefix/_next/static/chunks/3cziaul2j05he.js"
33:"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js"
34:I[216370,["$2","$3","$4","$20","$21","$22","$23","$24","$25","$26","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33"],"default"]
36:I[347257,["$2","$3","$4"],"ClientPageRoot"]
37:"/litellm-asset-prefix/_next/static/chunks/1avj5q5vr8i-4.js"
38:"/litellm-asset-prefix/_next/static/chunks/2aqdbosnh_sy6.js"
39:"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js"
3a:"/litellm-asset-prefix/_next/static/chunks/0jodjixl6-lwk.js"
3b:I[871135,["$2","$3","$4","$20","$21","$22","$23","$24","$25","$26","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33","$37","$38","$39","$3a"],"default"]
3e:I[897367,["$2","$3","$4"],"OutletBoundary"]
10:["$","script","script-17",{"src":"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js","async":true,"nonce":"$undefined"}]
11:["$","script","script-18",{"src":"/litellm-asset-prefix/_next/static/chunks/3cziaul2j05he.js","async":true,"nonce":"$undefined"}]
12:["$","script","script-19",{"src":"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js","async":true,"nonce":"$undefined"}]
13:["$","$L1f",null,{"Component":"$34","slots":{"children":["$","$Lc",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$Ld",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]},"serverProvidedParams":{"params":{},"promises":["$@35"]}}]
15:["$","$1","c",{"children":[["$","$L36",null,{"Component":"$3b","serverProvidedParams":{"searchParams":{},"params":"$13:props:serverProvidedParams:params","promises":["$@3c","$@3d"]}}],[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/1avj5q5vr8i-4.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/2aqdbosnh_sy6.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/0jodjixl6-lwk.js","async":true,"nonce":"$undefined"}]],["$","$L3e",null,{"children":["$","$1b",null,{"name":"Next.MetadataOutlet","children":"$@3f"}]}]]}]
35:"$13:props:serverProvidedParams:params"
3c:{}
3d:"$13:props:serverProvidedParams:params"
18:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
40:I[27201,["$2","$3","$4"],"IconMark"]
1c:[["$","title","0",{"children":"LiteLLM Dashboard"}],["$","meta","1",{"name":"description","content":"LiteLLM Proxy Admin UI"}],["$","link","2",{"rel":"icon","href":"/favicon.ico?favicon.34m4ev7_7ennf.ico","sizes":"48x48","type":"image/x-icon"}],["$","link","3",{"rel":"icon","href":"/get_favicon"}],["$","$L40","4",{}]]
3f:null
19:[["children",{"s":"__PAGE__","h":512,"d":{"r":"$L1a","p":false,"v":null}}]]
11:[["children",{"s":"(dashboard)","h":512,"d":{"r":["$","$1","c",{"children":[[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/05rbx4f99s_mc.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/093p9wry_dbzw.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/3j2it4e3149lm.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/litellm-asset-prefix/_next/static/chunks/223lgr5da13bk.js","async":true,"nonce":"$undefined"}],["$","script","script-5",{"src":"/litellm-asset-prefix/_next/static/chunks/2vj12ulas06oa.js","async":true,"nonce":"$undefined"}],["$","script","script-6",{"src":"/litellm-asset-prefix/_next/static/chunks/2ff3rim4oi2cc.js","async":true,"nonce":"$undefined"}],["$","script","script-7",{"src":"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js","async":true,"nonce":"$undefined"}],["$","script","script-8",{"src":"/litellm-asset-prefix/_next/static/chunks/0m3d_l40-c_eu.js","async":true,"nonce":"$undefined"}],["$","script","script-9",{"src":"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js","async":true,"nonce":"$undefined"}],["$","script","script-10",{"src":"/litellm-asset-prefix/_next/static/chunks/0c55iw8mjlbxy.js","async":true,"nonce":"$undefined"}],["$","script","script-11",{"src":"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js","async":true,"nonce":"$undefined"}],["$","script","script-12",{"src":"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js","async":true,"nonce":"$undefined"}],["$","script","script-13",{"src":"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js","async":true,"nonce":"$undefined"}],["$","script","script-14",{"src":"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js","async":true,"nonce":"$undefined"}],"$L12","$L13","$L14","$L15","$L16","$L17"],"$L18"]}],"p":false,"v":null},"c":"$Q19"}]]
0:{"P":null,"c":["",""],"q":"","i":false,"t":{"t":{"s":"","h":528,"d":{"r":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/3imrwezdxy-f0.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/0a-rekt06v0sv.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/0whs1nv27w-4p.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/23z3yylt1gm8n.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/2xpjos3nb6yh4.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"OU16Qa_className","children":["$","$L6",null,{"children":["$","$L7",null,{"attribute":"class","defaultTheme":"light","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L8",null,{"children":["$","$L9",null,{"children":[["$","$Lb",null,{"children":["$","$Lc",null,{"children":["$","$Ld",null,{"children":["$","$Le",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$Lf",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}],["$","$L10",null,{}]]}]}]}]}]}]}]]}],"p":false,"v":null},"c":"$Q11"},"h":{"r":["$","$1","h",{"children":[null,["$","$L1c",null,{"children":"$L1d"}],["$","$L1f",null,{"children":[["$","div",null,{"hidden":true,"children":["$","$20",null,{"name":"Next.Metadata","children":"$L21"}]}],null]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"p":false,"v":null}},"m":"$undefined","G":["$22",[["$","link","0",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/litellm-asset-prefix/_next/static/chunks/3imrwezdxy-f0.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"vaqa8IMfgYULCB9kkT63q"}
23:"ClientSegmentRoot"
24:I[92825,["$2","$3","$4","$5"],"$23"]
25:"/litellm-asset-prefix/_next/static/chunks/05rbx4f99s_mc.js"
26:"/litellm-asset-prefix/_next/static/chunks/093p9wry_dbzw.js"
27:"/litellm-asset-prefix/_next/static/chunks/3tb8tug0et-f3.js"
28:"/litellm-asset-prefix/_next/static/chunks/3j2it4e3149lm.js"
29:"/litellm-asset-prefix/_next/static/chunks/223lgr5da13bk.js"
2a:"/litellm-asset-prefix/_next/static/chunks/2vj12ulas06oa.js"
2b:"/litellm-asset-prefix/_next/static/chunks/2ff3rim4oi2cc.js"
2c:"/litellm-asset-prefix/_next/static/chunks/2kd01k7_ccb0k.js"
2d:"/litellm-asset-prefix/_next/static/chunks/0m3d_l40-c_eu.js"
2e:"/litellm-asset-prefix/_next/static/chunks/45b8usrooa1la.js"
2f:"/litellm-asset-prefix/_next/static/chunks/0c55iw8mjlbxy.js"
30:"/litellm-asset-prefix/_next/static/chunks/1rq-bi4a8voir.js"
31:"/litellm-asset-prefix/_next/static/chunks/0g3hfgh2z8the.js"
32:"/litellm-asset-prefix/_next/static/chunks/14v3irtjifjt2.js"
33:"/litellm-asset-prefix/_next/static/chunks/39_9engqoezqp.js"
34:"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js"
35:"/litellm-asset-prefix/_next/static/chunks/2mno6omnbsrll.js"
36:"/litellm-asset-prefix/_next/static/chunks/0uiha79glxxxq.js"
37:"/litellm-asset-prefix/_next/static/chunks/3gorz8m4pykq3.js"
38:"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js"
39:"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js"
3a:I[216370,["$2","$3","$4","$5","$25","$26","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33","$34","$35","$36","$37","$38","$39"],"default"]
3c:I[347257,["$2","$3","$4","$5"],"ClientPageRoot"]
3d:"/litellm-asset-prefix/_next/static/chunks/2mugxwq5ws91u.js"
3e:"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js"
3f:"/litellm-asset-prefix/_next/static/chunks/07gs0vohcw6g-.js"
40:"/litellm-asset-prefix/_next/static/chunks/1x88h31rqm6cs.js"
41:I[871135,["$2","$3","$4","$5","$25","$26","$27","$28","$29","$2a","$2b","$2c","$2d","$2e","$2f","$30","$31","$32","$33","$34","$35","$36","$37","$38","$39","$3d","$3e","$3f","$40"],"default"]
44:I[897367,["$2","$3","$4","$5"],"OutletBoundary"]
12:["$","script","script-15",{"src":"/litellm-asset-prefix/_next/static/chunks/1-f3yvj3y6lg8.js","async":true,"nonce":"$undefined"}]
13:["$","script","script-16",{"src":"/litellm-asset-prefix/_next/static/chunks/2mno6omnbsrll.js","async":true,"nonce":"$undefined"}]
14:["$","script","script-17",{"src":"/litellm-asset-prefix/_next/static/chunks/0uiha79glxxxq.js","async":true,"nonce":"$undefined"}]
15:["$","script","script-18",{"src":"/litellm-asset-prefix/_next/static/chunks/3gorz8m4pykq3.js","async":true,"nonce":"$undefined"}]
16:["$","script","script-19",{"src":"/litellm-asset-prefix/_next/static/chunks/2aatum0yo4cv8.js","async":true,"nonce":"$undefined"}]
17:["$","script","script-20",{"src":"/litellm-asset-prefix/_next/static/chunks/2hk8n3azev--d.js","async":true,"nonce":"$undefined"}]
18:["$","$L24",null,{"Component":"$3a","slots":{"children":["$","$Le",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$Lf",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:t:t:d:r:props:children:1:props:children:props:children:props:children:props:children:props:children:props:children:0:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]},"serverProvidedParams":{"params":{},"promises":["$@3b"]}}]
1a:["$","$1","c",{"children":[["$","$L3c",null,{"Component":"$41","serverProvidedParams":{"searchParams":{},"params":"$18:props:serverProvidedParams:params","promises":["$@42","$@43"]}}],[["$","script","script-0",{"src":"/litellm-asset-prefix/_next/static/chunks/2mugxwq5ws91u.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/litellm-asset-prefix/_next/static/chunks/441rbmhkm7c36.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/litellm-asset-prefix/_next/static/chunks/07gs0vohcw6g-.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/litellm-asset-prefix/_next/static/chunks/1x88h31rqm6cs.js","async":true,"nonce":"$undefined"}]],["$","$L44",null,{"children":["$","$20",null,{"name":"Next.MetadataOutlet","children":"$@45"}]}]]}]
3b:"$18:props:serverProvidedParams:params"
42:{}
43:"$18:props:serverProvidedParams:params"
1d:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
46:I[27201,["$2","$3","$4","$5"],"IconMark"]
21:[["$","title","0",{"children":"LiteLLM Dashboard"}],["$","meta","1",{"name":"description","content":"LiteLLM Proxy Admin UI"}],["$","link","2",{"rel":"icon","href":"/favicon.ico?favicon.34m4ev7_7ennf.ico","sizes":"48x48","type":"image/x-icon"}],["$","link","3",{"rel":"icon","href":"/get_favicon"}],["$","$L46","4",{}]]
45:null

View file

@ -1,6 +1,6 @@
:HL["/litellm-asset-prefix/_next/static/chunks/1bnh8r0-prf7e.css","style"]
:HL["/litellm-asset-prefix/_next/static/chunks/0598zsj78ni2h.css","style"]
:HL["/litellm-asset-prefix/_next/static/chunks/3imrwezdxy-f0.css","style"]
:HL["/litellm-asset-prefix/_next/static/media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
2:[["children",{"s":"__PAGE__","h":160}]]
1:[["children",{"s":"(dashboard)","h":96,"c":"$Q2"}]]
0:{"b":"gyn32IHLXvPl9GksQaEMb","t":{"t":{"s":"","h":80,"c":"$Q1"}}}
0:{"b":"vaqa8IMfgYULCB9kkT63q","t":{"t":{"s":"","h":80,"c":"$Q1"}}}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,687130,e=>{let t=(0,e.i(475254).f)("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);e.s(["f",0,t],687130)},434068,e=>{let t=e=>"boolean"==typeof e?e:Array.isArray(e)?e.some(t):null!==e&&"object"==typeof e&&Object.values(e).some(t);e.s(["f",0,(e,a)=>Object.fromEntries(Object.keys(e).filter(e=>t(a[e])).map(t=>[t,e[t]]))])},980187,e=>{e.s(["H",0,e=>e?e.reduce((e,t)=>(e[t.team_id]=t.team_alias,e),{}):{},"i",0,(e,t)=>{let a=t.find(t=>t.team_id===e);return a?a.team_alias:null}])}])})();
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,687130,e=>{let t=(0,e.i(475254).f)("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);e.s(["f",0,t],687130)},434068,e=>{let t=e=>"boolean"==typeof e?e:Array.isArray(e)?e.some(t):null!==e&&"object"==typeof e&&Object.values(e).some(t);e.s(["f",0,(e,o)=>Object.fromEntries(Object.keys(e).filter(e=>t(o[e])).map(t=>[t,e[t]]))])}])})();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,86408,e=>{"use strict";var s=e.i(843476),n=e.i(271645),c=e.i(618566),t=e.i(934879);function u(){let e=(0,c.useSearchParams)().get("key"),[u,i]=(0,n.useState)(null);return(0,n.useEffect)(()=>{e&&i(e)},[e]),(0,s.jsx)(t.f,{accessToken:u,publicPage:!0,premiumUser:!1,userRole:null,canOpenPlayground:!1,canAddModels:!1})}e.s(["default",0,function(){return(0,s.jsx)(n.Suspense,{fallback:(0,s.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:"Loading..."}),children:(0,s.jsx)(u,{})})}])}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1 +0,0 @@
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,182995,e=>{"use strict";var s=e.i(843476),a=e.i(934879),d=e.i(976883),i=e.i(405033),o=e.i(708347);e.s(["default",0,function(){let{accessToken:e,userRole:c,premiumUser:t}=(0,i.k)();return(0,s.jsx)("div",{className:"moyai-models-page",children:(0,s.jsxs)("div",{className:"moyai-models-content",children:[(0,s.jsxs)("header",{className:"moyai-models-header",children:[(0,s.jsx)("p",{className:"text-xs font-medium text-muted-foreground",children:"Model Hub"}),(0,s.jsx)("h1",{children:"Models"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Find the right model. Explore providers, compare pricing, and see what each model can do."})]}),(0,o.z)(c)?(0,s.jsx)(a.f,{accessToken:e,publicPage:!1,premiumUser:t,userRole:c,canOpenPlayground:!1,canAddModels:!1,variant:"chat"}):(0,s.jsx)(d.f,{accessToken:e,isEmbedded:!0,variant:"chat"})]})})}])}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,75533,t=>{"use strict";var i=t.i(843476),e=t.i(135214),o=t.i(936578),s=t.i(601964);t.s(["default",0,function(){let{isLoading:t,isAuthorized:u}=(0,e.f)();return t||!u?(0,i.jsx)(o.f,{}):(0,i.jsx)(s.f,{})}])}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,[180127,e=>{let i=(0,e.i(475254).f)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["f",0,i])},871689,e=>{var i=e.i(180127);e.s(["f",()=>i.f])},595468,e=>{var i=e.i(123287);e.s(["f",()=>i.f])},541071,e=>{var i=e.i(373488);e.s(["f",()=>i.f])},332102,e=>{let i=(0,e.i(475254).f)("inbox",[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]]);e.s(["f",0,i],332102)},878894,e=>{var i=e.i(582458);e.s(["f",()=>i.f])},450240,e=>{var i=e.i(843476),t=e.i(286536),a=e.i(77705),s=e.i(271645),l=e.i(950594);let r=s.forwardRef(({className:e,groupClassName:r,disabled:n,...p},d)=>{let[f,x]=s.useState(!1);return(0,i.jsxs)(l.H,{className:r,children:[(0,i.jsx)(l.M,{...p,ref:d,type:f?"text":"password",disabled:n,className:e}),(0,i.jsx)(l.B,{align:"inline-end",children:(0,i.jsx)(l.w,{size:"icon-xs",disabled:n,"aria-label":f?"Hide password":"Show password",onClick:()=>x(e=>!e),children:f?(0,i.jsx)(a.f,{}):(0,i.jsx)(t.f,{})})})]})});r.displayName="PasswordInput",e.s(["f",0,r])}],512154,e=>{e.q("/litellm-asset-prefix/_next/static/media/bing.3b9zkaag7urkm.png")},764453,e=>{e.q("/litellm-asset-prefix/_next/static/media/dataforseo.1g2jptyl8rcb1.png")},341367,e=>{e.q("/litellm-asset-prefix/_next/static/media/exa_ai.36h3hrkelbgj-.png")},732731,e=>{e.q("/litellm-asset-prefix/_next/static/media/google_pse.3hii8gkiytuod.png")},601739,e=>{e.q("/litellm-asset-prefix/_next/static/media/nimble.0ors74qocyffr.png")},911676,e=>{e.q("/litellm-asset-prefix/_next/static/media/parallel_ai.0jx5g5pf0u355.png")},692745,e=>{e.q("/litellm-asset-prefix/_next/static/media/perplexity.2zhky1a8ufk3x.png")},380084,e=>{e.q("/litellm-asset-prefix/_next/static/media/tavily.15dorlkyzxydf.png")}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show more