diff --git a/README.md b/README.md index 7ffc44854bb..d3977e06b4b 100644 --- a/README.md +++ b/README.md @@ -394,6 +394,7 @@ Set `LITELLM_PROXY_API_BASE` and `LITELLM_PROXY_API_KEY` and every model call th | [Text Completion Codestral (`text-completion-codestral`)](https://docs.litellm.ai/docs/providers/codestral) | ✅ | ✅ | ✅ | | | | | | | | | [Text Completion OpenAI (`text-completion-openai`)](https://docs.litellm.ai/docs/providers/text_completion_openai) | ✅ | ✅ | ✅ | | | ✅ | ✅ | ✅ | ✅ | | | [Together AI (`together_ai`)](https://docs.litellm.ai/docs/providers/togetherai) | ✅ | ✅ | ✅ | | | | | | | | +| [TokenLab (`tokenlab`)](https://tokenlab.sh/docs/en/integrations/litellm) | ✅ | ✅ | ✅ | ✅ | | | | | | | | [Topaz (`topaz`)](https://docs.litellm.ai/docs/providers/topaz) | ✅ | ✅ | ✅ | | | | | | | | | [Triton (`triton`)](https://docs.litellm.ai/docs/providers/triton-inference-server) | ✅ | ✅ | ✅ | | | | | | | | | [Typesafe Decisions API (`typesafe`)](https://docs.litellm.ai/docs/providers) | | | | | | | | | | | diff --git a/litellm/__init__.py b/litellm/__init__.py index 487d5da1663..2f74f619abe 100644 --- a/litellm/__init__.py +++ b/litellm/__init__.py @@ -690,6 +690,7 @@ qwen_ai_platform_models: Set = set() moonshot_models: Set = set() publicai_models: Set = set() darkbloom_models: Set = set() +tokenlab_models: Set[str] = set() v0_models: Set = set() morph_models: Set = set() lambda_ai_models: Set = set() @@ -955,6 +956,8 @@ def _populate_provider_model_sets(model_cost_map: Dict) -> None: publicai_models.add(key) elif value.get("litellm_provider") == "darkbloom": darkbloom_models.add(key) + elif value.get("litellm_provider") == "tokenlab" and isinstance(key, str): + tokenlab_models.add(key) elif value.get("litellm_provider") == "v0": v0_models.add(key) elif value.get("litellm_provider") == "morph": @@ -1118,6 +1121,7 @@ model_list = list( | moonshot_models | publicai_models | darkbloom_models + | tokenlab_models | v0_models | morph_models | lambda_ai_models @@ -1230,6 +1234,7 @@ def _build_models_by_provider() -> dict: "moonshot": moonshot_models, "publicai": publicai_models, "darkbloom": darkbloom_models, + "tokenlab": tokenlab_models, "v0": v0_models, "morph": morph_models, "lambda_ai": lambda_ai_models, diff --git a/litellm/constants.py b/litellm/constants.py index 938a3c85c29..b83d47d7153 100644 --- a/litellm/constants.py +++ b/litellm/constants.py @@ -960,6 +960,7 @@ openai_compatible_endpoints: Final[list] = [ "https://api.inference.wandb.ai/v1", "https://api.clarifai.com/v2/ext/openai/v1", "https://api.libertai.io/v1", + "https://api.tokenlab.sh/v1", "https://pinstripes.io/v1", "https://api.meta.ai/v1", "https://api.sailresearch.com/v1", @@ -1037,6 +1038,7 @@ openai_compatible_providers: Final[list] = [ "docker_model_runner", "ragflow", "pinstripes", # Pinstripes - JSON-configured provider + "tokenlab", # TokenLab - JSON-configured provider "darkbloom", "meta", # Meta Model API (Muse Spark) - JSON-configured provider "cognition", diff --git a/litellm/llms/openai_like/json_loader.py b/litellm/llms/openai_like/json_loader.py index 5cdaff90d24..9df44fa33c6 100644 --- a/litellm/llms/openai_like/json_loader.py +++ b/litellm/llms/openai_like/json_loader.py @@ -78,6 +78,14 @@ class JSONProviderRegistry: return False return "/v1/responses" in provider.supported_endpoints + @classmethod + def supports_anthropic_messages_api(cls, slug: str) -> bool: + """Check if a JSON provider supports the Anthropic Messages API""" + provider = cls._providers.get(slug) + if provider is None: + return False + return "/v1/messages" in provider.supported_endpoints + @classmethod def list_providers(cls) -> list: """List all registered provider slugs""" diff --git a/litellm/llms/openai_like/providers.json b/litellm/llms/openai_like/providers.json index f3aa7768928..04221c5953a 100644 --- a/litellm/llms/openai_like/providers.json +++ b/litellm/llms/openai_like/providers.json @@ -186,6 +186,15 @@ "api_base_env": "CORTECS_API_BASE", "supported_endpoints": ["/v1/chat/completions", "/v1/responses", "/v1/messages"] }, + "tokenlab": { + "base_url": "https://api.tokenlab.sh/v1", + "api_key_env": "TOKENLAB_API_KEY", + "api_base_env": "TOKENLAB_API_BASE", + "param_mappings": { + "max_completion_tokens": "max_tokens" + }, + "supported_endpoints": ["/v1/chat/completions", "/v1/messages", "/v1/responses", "/v1/embeddings"] + }, "pinstripes": { "base_url": "https://pinstripes.io/v1", "api_key_env": "PINSTRIPES_API_KEY", diff --git a/litellm/model_prices_and_context_window_backup.json b/litellm/model_prices_and_context_window_backup.json index cce8eff3925..2cf8adaa389 100644 --- a/litellm/model_prices_and_context_window_backup.json +++ b/litellm/model_prices_and_context_window_backup.json @@ -61133,6 +61133,3889 @@ ], "supports_audio_output": true }, + "tokenlab/allam-2-7b": { + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32768, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 8e-08, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/claude-fable-5": { + "cache_creation_input_token_cost": 3.75e-06, + "cache_read_input_token_cost": 3e-07, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-fable-5-1": { + "cache_creation_input_token_cost": 3.75e-06, + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-haiku-4-5": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 64000, + "max_tokens": 64000, + "mode": "chat", + "output_cost_per_token": 1.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-4-6": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-4-7": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-4-8": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-5": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-5-5": { + "cache_creation_input_token_cost": 1.5e-06, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-sonnet-4-6": { + "cache_creation_input_token_cost": 1.125e-06, + "cache_read_input_token_cost": 9e-08, + "input_cost_per_token": 9e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-sonnet-5": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-sonnet-5-5": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/codestral-embed": { + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/deepseek-v4-flash": { + "cache_read_input_token_cost": 3e-09, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/deepseek-v4-flash-vision-exp": { + "cache_read_input_token_cost": 3e-09, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/deepseek-v4-pro": { + "cache_creation_input_token_cost": 6.6e-07, + "cache_read_input_token_cost": 2.2e-08, + "input_cost_per_token": 6.6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 1.98e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/deepseek-v4.1-flash": { + "cache_creation_input_token_cost": 1.5e-07, + "cache_read_input_token_cost": 3e-09, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.0-code": { + "cache_creation_input_token_cost": 4.7058824e-07, + "cache_read_input_token_cost": 9.411765e-08, + "input_cost_per_token": 4.7058824e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.35294118e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/doubao-seed-2.0-lite": { + "cache_creation_input_token_cost": 2.5e-07, + "cache_read_input_token_cost": 5e-08, + "input_cost_per_token": 2.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.0-mini": { + "cache_creation_input_token_cost": 1e-07, + "cache_read_input_token_cost": 2e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.0-pro": { + "cache_creation_input_token_cost": 4.7058824e-07, + "cache_read_input_token_cost": 9.411765e-08, + "input_cost_per_token": 4.7058824e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.35294118e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.1-lite": { + "cache_read_input_token_cost": 2.3529411765e-08, + "input_cost_per_token": 1.17647058824e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 3.97058823529e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.1-pro": { + "cache_read_input_token_cost": 1.7647059e-07, + "input_cost_per_token": 8.8235294e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 4.41176471e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.1-turbo": { + "cache_creation_input_token_cost": 5e-07, + "cache_read_input_token_cost": 1e-07, + "input_cost_per_token": 5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-character": { + "cache_read_input_token_cost": 2.352941e-08, + "input_cost_per_token": 1.1764706e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 98304, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 2.9411765e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-evolving": { + "cache_read_input_token_cost": 1.7647059e-07, + "input_cost_per_token": 8.8235294e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 4.41176471e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/ember-1": { + "cache_read_input_token_cost": 3e-07, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/gemini-2.5-flash": { + "cache_read_input_token_cost": 1.5e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-2.5-flash-lite": { + "cache_read_input_token_cost": 5e-09, + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3-flash-preview": { + "cache_read_input_token_cost": 2.5e-08, + "input_cost_per_token": 2.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.1-flash-lite": { + "cache_read_input_token_cost": 1.25e-08, + "input_cost_per_token": 1.25e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 7.5e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.1-pro-preview": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 6e-06, + "output_cost_per_token_above_200k_tokens": 9e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.5-flash": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 7.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.5-flash-lite": { + "cache_read_input_token_cost": 1.5e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.6-flash": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 7.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 3.75e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.7-flash": { + "cache_read_input_token_cost": 3.75e-08, + "input_cost_per_token": 3.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.875e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.8-flash": { + "cache_read_input_token_cost": 3.75e-08, + "input_cost_per_token": 3.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.875e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-embedding-001": { + "input_cost_per_token": 7.5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 2048, + "max_tokens": 2048, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/gemini-embedding-2": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/glm-5": { + "cache_creation_input_token_cost": 1e-06, + "cache_read_input_token_cost": 2e-07, + "input_cost_per_token": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5-turbo": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 2.4e-07, + "input_cost_per_token": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.1": { + "cache_creation_input_token_cost": 1.4e-06, + "cache_read_input_token_cost": 2.6e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.2": { + "cache_creation_input_token_cost": 1.4e-06, + "cache_read_input_token_cost": 2.6e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.3": { + "cache_read_input_token_cost": 2.6e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.3-flash": { + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 5e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/glm-5.3-flashx": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 3.7e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/glm-5v-turbo": { + "cache_read_input_token_cost": 2.4e-07, + "input_cost_per_token": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4.1": { + "cache_read_input_token_cost": 3.5e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1047576, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 5.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4.1-mini": { + "cache_read_input_token_cost": 7e-08, + "input_cost_per_token": 2.8e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1047576, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 1.12e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4o": { + "cache_read_input_token_cost": 8.75e-07, + "input_cost_per_token": 1.75e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4o-mini": { + "cache_read_input_token_cost": 5.25e-08, + "input_cost_per_token": 1.05e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 4.2e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5": { + "cache_read_input_token_cost": 8.75e-08, + "input_cost_per_token": 8.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5-mini": { + "cache_read_input_token_cost": 1.75e-08, + "input_cost_per_token": 1.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5-nano": { + "cache_read_input_token_cost": 3.5e-09, + "input_cost_per_token": 3.5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 2.8e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.1": { + "cache_read_input_token_cost": 8.75e-08, + "input_cost_per_token": 8.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 409600, + "max_output_tokens": 32000, + "max_tokens": 32000, + "mode": "chat", + "output_cost_per_token": 7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.2": { + "cache_read_input_token_cost": 1.225e-07, + "input_cost_per_token": 1.225e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 9.8e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.2-pro": { + "cache_read_input_token_cost": 1.05e-05, + "input_cost_per_token": 2.1e-05, + "litellm_provider": "tokenlab", + "max_input_tokens": 272000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 0.000168, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.3-codex": { + "cache_read_input_token_cost": 1.225e-07, + "input_cost_per_token": 1.225e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 9.8e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4": { + "cache_read_input_token_cost": 1.75e-07, + "cache_read_input_token_cost_above_272k_tokens": 3.5e-07, + "input_cost_per_token": 1.75e-06, + "input_cost_per_token_above_272k_tokens": 3.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.05e-05, + "output_cost_per_token_above_272k_tokens": 1.575e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4-mini": { + "cache_read_input_token_cost": 5.25e-08, + "input_cost_per_token": 5.25e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.15e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4-nano": { + "cache_read_input_token_cost": 1.4e-08, + "input_cost_per_token": 1.4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 8.75e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4-pro": { + "cache_read_input_token_cost": 3e-06, + "input_cost_per_token": 3e-05, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 0.00018, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.5": { + "cache_read_input_token_cost": 1.5e-07, + "cache_read_input_token_cost_above_272k_tokens": 3e-07, + "input_cost_per_token": 1.5e-06, + "input_cost_per_token_above_272k_tokens": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 9e-06, + "output_cost_per_token_above_272k_tokens": 1.35e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.5-pro": { + "input_cost_per_token": 3e-05, + "input_cost_per_token_above_272k_tokens": 6e-05, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 0.00018, + "output_cost_per_token_above_272k_tokens": 0.00027, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.6-luna": { + "cache_creation_input_token_cost": 7.5e-08, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-07, + "cache_read_input_token_cost": 6e-09, + "cache_read_input_token_cost_above_272k_tokens": 1.2e-08, + "input_cost_per_token": 6e-08, + "input_cost_per_token_above_272k_tokens": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.6e-07, + "output_cost_per_token_above_272k_tokens": 5.4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.6-sol": { + "cache_creation_input_token_cost": 1.5e-06, + "cache_creation_input_token_cost_above_272k_tokens": 3e-06, + "cache_read_input_token_cost": 1.2e-07, + "cache_read_input_token_cost_above_272k_tokens": 2.4e-07, + "input_cost_per_token": 1.2e-06, + "input_cost_per_token_above_272k_tokens": 2.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 6e-06, + "output_cost_per_token_above_272k_tokens": 9e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.6-terra": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-06, + "cache_read_input_token_cost": 6e-08, + "cache_read_input_token_cost_above_272k_tokens": 1.2e-07, + "input_cost_per_token": 6e-07, + "input_cost_per_token_above_272k_tokens": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.6e-06, + "output_cost_per_token_above_272k_tokens": 5.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6-astra": { + "cache_creation_input_token_cost": 3.75e-06, + "cache_creation_input_token_cost_above_272k_tokens": 7.5e-06, + "cache_read_input_token_cost": 3e-07, + "cache_read_input_token_cost_above_272k_tokens": 6e-07, + "input_cost_per_token": 3e-06, + "input_cost_per_token_above_272k_tokens": 6e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "output_cost_per_token_above_272k_tokens": 2.25e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6-luna": { + "cache_creation_input_token_cost": 3.75e-08, + "cache_creation_input_token_cost_above_272k_tokens": 7.5e-08, + "cache_read_input_token_cost": 3e-09, + "cache_read_input_token_cost_above_272k_tokens": 6e-09, + "input_cost_per_token": 3e-08, + "input_cost_per_token_above_272k_tokens": 6e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-07, + "output_cost_per_token_above_272k_tokens": 2.25e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6-sol": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-06, + "cache_read_input_token_cost": 6e-08, + "cache_read_input_token_cost_above_272k_tokens": 1.2e-07, + "input_cost_per_token": 6e-07, + "input_cost_per_token_above_272k_tokens": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_272k_tokens": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6.1-sol": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-06, + "cache_read_input_token_cost": 3e-08, + "cache_read_input_token_cost_above_272k_tokens": 6e-08, + "input_cost_per_token": 6e-07, + "input_cost_per_token_above_272k_tokens": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_272k_tokens": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/gpt-oss-120b": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 131072, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/gpt-oss-20b": { + "input_cost_per_token": 7.5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 131072, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 3e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/grok-4.20": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.20-multi-agent": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.20-non-reasoning": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.3": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.5": { + "cache_read_input_token_cost": 1.5e-07, + "cache_read_input_token_cost_above_200k_tokens": 3e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 500000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_200k_tokens": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.6": { + "cache_read_input_token_cost": 2.5e-07, + "cache_read_input_token_cost_above_200k_tokens": 5e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 500000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_200k_tokens": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.7": { + "cache_read_input_token_cost": 2.5e-07, + "cache_read_input_token_cost_above_200k_tokens": 5e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 500000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_200k_tokens": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-build-0.1": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 5e-07, + "input_cost_per_token_above_200k_tokens": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 256000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1e-06, + "output_cost_per_token_above_200k_tokens": 2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/hunyuan-role": { + "input_cost_per_token": 3.5294118e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 28672, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 1.41176471e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/hy-mt2-pro": { + "input_cost_per_token": 7.4e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 4096, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 2.95e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/hy3": { + "cache_read_input_token_cost": 3.3e-08, + "input_cost_per_token": 1.32e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 196608, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 5.28e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/hy4-preview": { + "cache_read_input_token_cost": 4.2e-08, + "input_cost_per_token": 8.34e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 960000, + "max_output_tokens": 64000, + "max_tokens": 64000, + "mode": "chat", + "output_cost_per_token": 2.501e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/kimi-k2.6": { + "cache_read_input_token_cost": 1.6e-07, + "input_cost_per_token": 9.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k2.7-code": { + "cache_read_input_token_cost": 1.9e-07, + "input_cost_per_token": 9.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k2.7-code-highspeed": { + "cache_read_input_token_cost": 3.8e-07, + "input_cost_per_token": 1.9e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 8e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k2.8-preview": { + "cache_creation_input_token_cost": 1e-06, + "cache_read_input_token_cost": 2.5e-07, + "input_cost_per_token": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 1000000, + "max_tokens": 1000000, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k3": { + "cache_creation_input_token_cost": 3e-06, + "cache_read_input_token_cost": 3e-07, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/laguna-s-2.1": { + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/ling-3.0-flash-vl": { + "cache_read_input_token_cost": 4.117647059e-09, + "input_cost_per_token": 2.0588235294e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 6.1764705882e-08, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mercury-2.5": { + "cache_read_input_token_cost": 4e-09, + "input_cost_per_token": 4e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 260000, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.5e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/mimo-v2.5": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 2.8e-09, + "input_cost_per_token": 1.4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 1048576, + "max_tokens": 1048576, + "mode": "chat", + "output_cost_per_token": 2.8e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mimo-v2.5-pro": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 3.6e-09, + "input_cost_per_token": 4.35e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 1048576, + "max_tokens": 1048576, + "mode": "chat", + "output_cost_per_token": 8.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mimo-v2.6-flash": { + "cache_read_input_token_cost": 2.8e-09, + "input_cost_per_token": 1.4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.8e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mimo-v2.6-pro": { + "cache_read_input_token_cost": 3.6e-09, + "input_cost_per_token": 4.35e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 8.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/minimax-m2": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.1": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.1-highspeed": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.5-highspeed": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.7": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/minimax-m2.7-highspeed": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/minimax-m3": { + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 524288, + "max_tokens": 524288, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/mistral-embed": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/mistral-medium-3.5": { + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/nova-2-lite": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "mode": "chat", + "output_cost_per_token": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/o3": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 3.5e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 100000, + "max_tokens": 100000, + "mode": "chat", + "output_cost_per_token": 5.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/pplx-embed-v1-0.6b": { + "input_cost_per_token": 4e-09, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/pplx-embed-v1-4b": { + "input_cost_per_token": 3e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/qwen-doc-turbo": { + "cache_creation_input_token_cost": 1.0875e-07, + "cache_read_input_token_cost": 1.74e-08, + "input_cost_per_token": 8.7e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 253952, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 1.44e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-flash": { + "cache_creation_input_token_cost": 6.25e-08, + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 997952, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-flash-character": { + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8000, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-max": { + "cache_read_input_token_cost": 3.2e-07, + "input_cost_per_token": 1.6e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 30720, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 6.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-mt-flash": { + "input_cost_per_token": 1.6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 4.9e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen-mt-lite": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 3.6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen-mt-plus": { + "input_cost_per_token": 2.46e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 7.37e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen-plus": { + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 997952, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-plus-character": { + "cache_read_input_token_cost": 1e-07, + "input_cost_per_token": 5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32768, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 1.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-vl-ocr": { + "input_cost_per_token": 7e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 30000, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 1.6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3-coder-flash": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 997952, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3-omni-flash": { + "input_cost_per_token": 4.3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 49152, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 1.66e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3-vl-embedding": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ], + "supports_vision": true + }, + "tokenlab/qwen3-vl-plus": { + "cache_creation_input_token_cost": 2.5e-07, + "cache_read_input_token_cost": 4e-08, + "input_cost_per_token": 2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 260096, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 1.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-27b": { + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 260096, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.5-flash": { + "cache_creation_input_token_cost": 1.25e-07, + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.5-ocr": { + "input_cost_per_token": 6.9e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 49152, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 2.75e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-omni-flash": { + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 196608, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-omni-plus": { + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 196608, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 8.3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-plus": { + "cache_creation_input_token_cost": 5e-07, + "cache_read_input_token_cost": 4e-08, + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.6-27b": { + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 131072, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 3.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.7-max": { + "cache_creation_input_token_cost": 3.125e-06, + "cache_read_input_token_cost": 5e-07, + "input_cost_per_token": 2.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.7-plus": { + "cache_creation_input_token_cost": 5e-07, + "cache_read_input_token_cost": 8e-08, + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.7-text-embedding": { + "input_cost_per_token": 7.3529411765e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_tokens": 128000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/qwen3.7-text-embedding-flash": { + "input_cost_per_token": 1.8382352941e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_tokens": 128000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/qwen3.8-2.4t-a95b": { + "input_cost_per_token": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/qwen3.8-27b": { + "cache_creation_input_token_cost": 6.25e-07, + "cache_read_input_token_cost": 1e-07, + "input_cost_per_token": 5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.8-flash": { + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.8-max": { + "input_cost_per_token": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.8-omni-flash": { + "cache_read_input_token_cost": 1.6e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "mode": "chat", + "output_cost_per_token": 4.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/solar-pro4": { + "cache_read_input_token_cost": 1.8e-08, + "input_cost_per_token": 9e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 524288, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3.6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/step-3.5-flash": { + "cache_read_input_token_cost": 2e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 256000, + "max_output_tokens": 256000, + "max_tokens": 256000, + "mode": "chat", + "output_cost_per_token": 3e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/step-3.7-flash": { + "cache_read_input_token_cost": 4e-08, + "input_cost_per_token": 2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 1.15e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/step-5-preview": { + "cache_read_input_token_cost": 5e-08, + "input_cost_per_token": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 64000, + "max_tokens": 64000, + "mode": "chat", + "output_cost_per_token": 2.7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/text-embedding-3-large": { + "input_cost_per_token": 9.1e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8191, + "max_tokens": 8191, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/text-embedding-3-small": { + "input_cost_per_token": 1.4e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8191, + "max_tokens": 8191, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/text-embedding-ada-002": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8191, + "max_tokens": 8191, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/text-embedding-v4": { + "input_cost_per_token": 7e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/tongyi-embedding-vision-plus": { + "input_cost_per_token": 9e-08, + "litellm_provider": "tokenlab", + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ], + "supports_vision": true + }, + "tokenlab/tongyi-intent-detect-v3": { + "input_cost_per_token": 5.8e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 1.44e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/tongyi-xiaomi-analysis-flash": { + "input_cost_per_token": 2.9411764705e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 28672, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 5.8823529412e-08, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/tongyi-xiaomi-analysis-pro": { + "input_cost_per_token": 1.47058823529e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 28672, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 3.97058823529e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/voyage-3-large": { + "input_cost_per_token": 1.8e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-3.5": { + "input_cost_per_token": 6e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-3.5-lite": { + "input_cost_per_token": 2e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-4": { + "input_cost_per_token": 6e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-4-large": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-4-lite": { + "input_cost_per_token": 2e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-code-2": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 16000, + "max_tokens": 16000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-code-3": { + "input_cost_per_token": 1.8e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-finance-2": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-law-2": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 16000, + "max_tokens": 16000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, "fallback_generalizations": { "rules": [ { diff --git a/litellm/provider_endpoints_support_backup.json b/litellm/provider_endpoints_support_backup.json index 0e325bb61fe..e7606601009 100644 --- a/litellm/provider_endpoints_support_backup.json +++ b/litellm/provider_endpoints_support_backup.json @@ -1664,6 +1664,23 @@ "a2a": false } }, + "tokenlab": { + "display_name": "TokenLab (`tokenlab`)", + "url": "https://tokenlab.sh/docs/en/integrations/litellm", + "endpoints": { + "chat_completions": true, + "messages": true, + "responses": true, + "embeddings": true, + "image_generations": false, + "audio_transcriptions": false, + "audio_speech": false, + "moderations": false, + "batches": false, + "rerank": false, + "a2a": false + } + }, "nvidia_nim": { "display_name": "Nvidia NIM (`nvidia_nim`)", "url": "https://docs.litellm.ai/docs/providers/nvidia_nim", diff --git a/litellm/proxy/public_endpoints/provider_create_fields.json b/litellm/proxy/public_endpoints/provider_create_fields.json index 2dd9f50bec8..6f9338b539f 100644 --- a/litellm/proxy/public_endpoints/provider_create_fields.json +++ b/litellm/proxy/public_endpoints/provider_create_fields.json @@ -3263,6 +3263,34 @@ ], "default_model_placeholder": "gpt-3.5-turbo" }, + { + "provider": "TOKENLAB", + "provider_display_name": "TokenLab", + "litellm_provider": "tokenlab", + "credential_fields": [ + { + "key": "api_base", + "label": "API Base", + "placeholder": "https://api.tokenlab.sh/v1", + "tooltip": null, + "required": false, + "field_type": "text", + "options": null, + "default_value": null + }, + { + "key": "api_key", + "label": "API Key", + "placeholder": null, + "tooltip": null, + "required": true, + "field_type": "password", + "options": null, + "default_value": null + } + ], + "default_model_placeholder": "tokenlab/gpt-5.5" + }, { "provider": "TOPAZ", "provider_display_name": "Topaz", diff --git a/litellm/types/utils.py b/litellm/types/utils.py index d3fe65037e2..5a86c04542e 100644 --- a/litellm/types/utils.py +++ b/litellm/types/utils.py @@ -4172,6 +4172,7 @@ class LlmProviders(str, Enum): PARASAIL = "parasail" XIAOMI_MIMO = "xiaomi_mimo" TENSORMESH = "tensormesh" + TOKENLAB = "tokenlab" LIBERTAI = "libertai" PINSTRIPES = "pinstripes" COGNITION = "cognition" diff --git a/model_prices_and_context_window.json b/model_prices_and_context_window.json index cce8eff3925..2cf8adaa389 100644 --- a/model_prices_and_context_window.json +++ b/model_prices_and_context_window.json @@ -61133,6 +61133,3889 @@ ], "supports_audio_output": true }, + "tokenlab/allam-2-7b": { + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32768, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 8e-08, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/claude-fable-5": { + "cache_creation_input_token_cost": 3.75e-06, + "cache_read_input_token_cost": 3e-07, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-fable-5-1": { + "cache_creation_input_token_cost": 3.75e-06, + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-haiku-4-5": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 64000, + "max_tokens": 64000, + "mode": "chat", + "output_cost_per_token": 1.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-4-6": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-4-7": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-4-8": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-5": { + "cache_creation_input_token_cost": 1.875e-06, + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-opus-5-5": { + "cache_creation_input_token_cost": 1.5e-06, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-sonnet-4-6": { + "cache_creation_input_token_cost": 1.125e-06, + "cache_read_input_token_cost": 9e-08, + "input_cost_per_token": 9e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-sonnet-5": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/claude-sonnet-5-5": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_adaptive_thinking": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_sampling_params": false, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/codestral-embed": { + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/deepseek-v4-flash": { + "cache_read_input_token_cost": 3e-09, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/deepseek-v4-flash-vision-exp": { + "cache_read_input_token_cost": 3e-09, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/deepseek-v4-pro": { + "cache_creation_input_token_cost": 6.6e-07, + "cache_read_input_token_cost": 2.2e-08, + "input_cost_per_token": 6.6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 1.98e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/deepseek-v4.1-flash": { + "cache_creation_input_token_cost": 1.5e-07, + "cache_read_input_token_cost": 3e-09, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 384000, + "max_tokens": 384000, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.0-code": { + "cache_creation_input_token_cost": 4.7058824e-07, + "cache_read_input_token_cost": 9.411765e-08, + "input_cost_per_token": 4.7058824e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.35294118e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/doubao-seed-2.0-lite": { + "cache_creation_input_token_cost": 2.5e-07, + "cache_read_input_token_cost": 5e-08, + "input_cost_per_token": 2.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.0-mini": { + "cache_creation_input_token_cost": 1e-07, + "cache_read_input_token_cost": 2e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.0-pro": { + "cache_creation_input_token_cost": 4.7058824e-07, + "cache_read_input_token_cost": 9.411765e-08, + "input_cost_per_token": 4.7058824e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 229376, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.35294118e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.1-lite": { + "cache_read_input_token_cost": 2.3529411765e-08, + "input_cost_per_token": 1.17647058824e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 3.97058823529e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.1-pro": { + "cache_read_input_token_cost": 1.7647059e-07, + "input_cost_per_token": 8.8235294e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 4.41176471e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-2.1-turbo": { + "cache_creation_input_token_cost": 5e-07, + "cache_read_input_token_cost": 1e-07, + "input_cost_per_token": 5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-character": { + "cache_read_input_token_cost": 2.352941e-08, + "input_cost_per_token": 1.1764706e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 98304, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 2.9411765e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/doubao-seed-evolving": { + "cache_read_input_token_cost": 1.7647059e-07, + "input_cost_per_token": 8.8235294e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 4.41176471e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/ember-1": { + "cache_read_input_token_cost": 3e-07, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/gemini-2.5-flash": { + "cache_read_input_token_cost": 1.5e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-2.5-flash-lite": { + "cache_read_input_token_cost": 5e-09, + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3-flash-preview": { + "cache_read_input_token_cost": 2.5e-08, + "input_cost_per_token": 2.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.1-flash-lite": { + "cache_read_input_token_cost": 1.25e-08, + "input_cost_per_token": 1.25e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 7.5e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.1-pro-preview": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 6e-06, + "output_cost_per_token_above_200k_tokens": 9e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.5-flash": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 7.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.5-flash-lite": { + "cache_read_input_token_cost": 1.5e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.6-flash": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 7.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 3.75e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.7-flash": { + "cache_read_input_token_cost": 3.75e-08, + "input_cost_per_token": 3.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.875e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-3.8-flash": { + "cache_read_input_token_cost": 3.75e-08, + "input_cost_per_token": 3.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.875e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gemini-embedding-001": { + "input_cost_per_token": 7.5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 2048, + "max_tokens": 2048, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/gemini-embedding-2": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/glm-5": { + "cache_creation_input_token_cost": 1e-06, + "cache_read_input_token_cost": 2e-07, + "input_cost_per_token": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5-turbo": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 2.4e-07, + "input_cost_per_token": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.1": { + "cache_creation_input_token_cost": 1.4e-06, + "cache_read_input_token_cost": 2.6e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.2": { + "cache_creation_input_token_cost": 1.4e-06, + "cache_read_input_token_cost": 2.6e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.3": { + "cache_read_input_token_cost": 2.6e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 4.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/glm-5.3-flash": { + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 5e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/glm-5.3-flashx": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 3.7e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/glm-5v-turbo": { + "cache_read_input_token_cost": 2.4e-07, + "input_cost_per_token": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4.1": { + "cache_read_input_token_cost": 3.5e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1047576, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 5.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4.1-mini": { + "cache_read_input_token_cost": 7e-08, + "input_cost_per_token": 2.8e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1047576, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 1.12e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4o": { + "cache_read_input_token_cost": 8.75e-07, + "input_cost_per_token": 1.75e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-4o-mini": { + "cache_read_input_token_cost": 5.25e-08, + "input_cost_per_token": 1.05e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 4.2e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5": { + "cache_read_input_token_cost": 8.75e-08, + "input_cost_per_token": 8.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5-mini": { + "cache_read_input_token_cost": 1.75e-08, + "input_cost_per_token": 1.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5-nano": { + "cache_read_input_token_cost": 3.5e-09, + "input_cost_per_token": 3.5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 2.8e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.1": { + "cache_read_input_token_cost": 8.75e-08, + "input_cost_per_token": 8.75e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 409600, + "max_output_tokens": 32000, + "max_tokens": 32000, + "mode": "chat", + "output_cost_per_token": 7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.2": { + "cache_read_input_token_cost": 1.225e-07, + "input_cost_per_token": 1.225e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 9.8e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.2-pro": { + "cache_read_input_token_cost": 1.05e-05, + "input_cost_per_token": 2.1e-05, + "litellm_provider": "tokenlab", + "max_input_tokens": 272000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 0.000168, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.3-codex": { + "cache_read_input_token_cost": 1.225e-07, + "input_cost_per_token": 1.225e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 9.8e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4": { + "cache_read_input_token_cost": 1.75e-07, + "cache_read_input_token_cost_above_272k_tokens": 3.5e-07, + "input_cost_per_token": 1.75e-06, + "input_cost_per_token_above_272k_tokens": 3.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.05e-05, + "output_cost_per_token_above_272k_tokens": 1.575e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4-mini": { + "cache_read_input_token_cost": 5.25e-08, + "input_cost_per_token": 5.25e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.15e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4-nano": { + "cache_read_input_token_cost": 1.4e-08, + "input_cost_per_token": 1.4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 400000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 8.75e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.4-pro": { + "cache_read_input_token_cost": 3e-06, + "input_cost_per_token": 3e-05, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 0.00018, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.5": { + "cache_read_input_token_cost": 1.5e-07, + "cache_read_input_token_cost_above_272k_tokens": 3e-07, + "input_cost_per_token": 1.5e-06, + "input_cost_per_token_above_272k_tokens": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 9e-06, + "output_cost_per_token_above_272k_tokens": 1.35e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.5-pro": { + "input_cost_per_token": 3e-05, + "input_cost_per_token_above_272k_tokens": 6e-05, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 0.00018, + "output_cost_per_token_above_272k_tokens": 0.00027, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.6-luna": { + "cache_creation_input_token_cost": 7.5e-08, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-07, + "cache_read_input_token_cost": 6e-09, + "cache_read_input_token_cost_above_272k_tokens": 1.2e-08, + "input_cost_per_token": 6e-08, + "input_cost_per_token_above_272k_tokens": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.6e-07, + "output_cost_per_token_above_272k_tokens": 5.4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.6-sol": { + "cache_creation_input_token_cost": 1.5e-06, + "cache_creation_input_token_cost_above_272k_tokens": 3e-06, + "cache_read_input_token_cost": 1.2e-07, + "cache_read_input_token_cost_above_272k_tokens": 2.4e-07, + "input_cost_per_token": 1.2e-06, + "input_cost_per_token_above_272k_tokens": 2.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 6e-06, + "output_cost_per_token_above_272k_tokens": 9e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-5.6-terra": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-06, + "cache_read_input_token_cost": 6e-08, + "cache_read_input_token_cost_above_272k_tokens": 1.2e-07, + "input_cost_per_token": 6e-07, + "input_cost_per_token_above_272k_tokens": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3.6e-06, + "output_cost_per_token_above_272k_tokens": 5.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6-astra": { + "cache_creation_input_token_cost": 3.75e-06, + "cache_creation_input_token_cost_above_272k_tokens": 7.5e-06, + "cache_read_input_token_cost": 3e-07, + "cache_read_input_token_cost_above_272k_tokens": 6e-07, + "input_cost_per_token": 3e-06, + "input_cost_per_token_above_272k_tokens": 6e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "output_cost_per_token_above_272k_tokens": 2.25e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6-luna": { + "cache_creation_input_token_cost": 3.75e-08, + "cache_creation_input_token_cost_above_272k_tokens": 7.5e-08, + "cache_read_input_token_cost": 3e-09, + "cache_read_input_token_cost_above_272k_tokens": 6e-09, + "input_cost_per_token": 3e-08, + "input_cost_per_token_above_272k_tokens": 6e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.5e-07, + "output_cost_per_token_above_272k_tokens": 2.25e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6-sol": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-06, + "cache_read_input_token_cost": 6e-08, + "cache_read_input_token_cost_above_272k_tokens": 1.2e-07, + "input_cost_per_token": 6e-07, + "input_cost_per_token_above_272k_tokens": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_272k_tokens": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/gpt-6.1-sol": { + "cache_creation_input_token_cost": 7.5e-07, + "cache_creation_input_token_cost_above_272k_tokens": 1.5e-06, + "cache_read_input_token_cost": 3e-08, + "cache_read_input_token_cost_above_272k_tokens": 6e-08, + "input_cost_per_token": 6e-07, + "input_cost_per_token_above_272k_tokens": 1.2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1050000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_272k_tokens": 4.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/gpt-oss-120b": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 131072, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/gpt-oss-20b": { + "input_cost_per_token": 7.5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 131072, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 3e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/grok-4.20": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.20-multi-agent": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.20-non-reasoning": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.3": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 6.25e-07, + "input_cost_per_token_above_200k_tokens": 1.25e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.25e-06, + "output_cost_per_token_above_200k_tokens": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.5": { + "cache_read_input_token_cost": 1.5e-07, + "cache_read_input_token_cost_above_200k_tokens": 3e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 500000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_200k_tokens": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.6": { + "cache_read_input_token_cost": 2.5e-07, + "cache_read_input_token_cost_above_200k_tokens": 5e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 500000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_200k_tokens": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-4.7": { + "cache_read_input_token_cost": 2.5e-07, + "cache_read_input_token_cost_above_200k_tokens": 5e-07, + "input_cost_per_token": 1e-06, + "input_cost_per_token_above_200k_tokens": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 500000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "output_cost_per_token_above_200k_tokens": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/grok-build-0.1": { + "cache_read_input_token_cost": 1e-07, + "cache_read_input_token_cost_above_200k_tokens": 2e-07, + "input_cost_per_token": 5e-07, + "input_cost_per_token_above_200k_tokens": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 256000, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1e-06, + "output_cost_per_token_above_200k_tokens": 2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/hunyuan-role": { + "input_cost_per_token": 3.5294118e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 28672, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 1.41176471e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/hy-mt2-pro": { + "input_cost_per_token": 7.4e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 4096, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 2.95e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/hy3": { + "cache_read_input_token_cost": 3.3e-08, + "input_cost_per_token": 1.32e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 196608, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 5.28e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/hy4-preview": { + "cache_read_input_token_cost": 4.2e-08, + "input_cost_per_token": 8.34e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 960000, + "max_output_tokens": 64000, + "max_tokens": 64000, + "mode": "chat", + "output_cost_per_token": 2.501e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/kimi-k2.6": { + "cache_read_input_token_cost": 1.6e-07, + "input_cost_per_token": 9.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k2.7-code": { + "cache_read_input_token_cost": 1.9e-07, + "input_cost_per_token": 9.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k2.7-code-highspeed": { + "cache_read_input_token_cost": 3.8e-07, + "input_cost_per_token": 1.9e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 8e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k2.8-preview": { + "cache_creation_input_token_cost": 1e-06, + "cache_read_input_token_cost": 2.5e-07, + "input_cost_per_token": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 1000000, + "max_tokens": 1000000, + "mode": "chat", + "output_cost_per_token": 4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/kimi-k3": { + "cache_creation_input_token_cost": 3e-06, + "cache_read_input_token_cost": 3e-07, + "input_cost_per_token": 3e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.5e-05, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/laguna-s-2.1": { + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/ling-3.0-flash-vl": { + "cache_read_input_token_cost": 4.117647059e-09, + "input_cost_per_token": 2.0588235294e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 6.1764705882e-08, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mercury-2.5": { + "cache_read_input_token_cost": 4e-09, + "input_cost_per_token": 4e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 260000, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.5e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/mimo-v2.5": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 2.8e-09, + "input_cost_per_token": 1.4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 1048576, + "max_tokens": 1048576, + "mode": "chat", + "output_cost_per_token": 2.8e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mimo-v2.5-pro": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 3.6e-09, + "input_cost_per_token": 4.35e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 1048576, + "max_tokens": 1048576, + "mode": "chat", + "output_cost_per_token": 8.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mimo-v2.6-flash": { + "cache_read_input_token_cost": 2.8e-09, + "input_cost_per_token": 1.4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.8e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/mimo-v2.6-pro": { + "cache_read_input_token_cost": 3.6e-09, + "input_cost_per_token": 4.35e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 8.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/minimax-m2": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.1": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.1-highspeed": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.5-highspeed": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 3e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 204800, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/minimax-m2.7": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/minimax-m2.7-highspeed": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 128000, + "max_tokens": 128000, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/minimax-m3": { + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1048576, + "max_output_tokens": 524288, + "max_tokens": 524288, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/mistral-embed": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/mistral-medium-3.5": { + "cache_read_input_token_cost": 1.5e-07, + "input_cost_per_token": 1.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/nova-2-lite": { + "cache_read_input_token_cost": 7.5e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "mode": "chat", + "output_cost_per_token": 2.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/o3": { + "cache_creation_input_token_cost": 0.0, + "cache_read_input_token_cost": 3.5e-07, + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 200000, + "max_output_tokens": 100000, + "max_tokens": 100000, + "mode": "chat", + "output_cost_per_token": 5.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/pplx-embed-v1-0.6b": { + "input_cost_per_token": 4e-09, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/pplx-embed-v1-4b": { + "input_cost_per_token": 3e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/qwen-doc-turbo": { + "cache_creation_input_token_cost": 1.0875e-07, + "cache_read_input_token_cost": 1.74e-08, + "input_cost_per_token": 8.7e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 253952, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 1.44e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-flash": { + "cache_creation_input_token_cost": 6.25e-08, + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 997952, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-flash-character": { + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 5e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8000, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-max": { + "cache_read_input_token_cost": 3.2e-07, + "input_cost_per_token": 1.6e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 30720, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 6.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-mt-flash": { + "input_cost_per_token": 1.6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 4.9e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen-mt-lite": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 3.6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen-mt-plus": { + "input_cost_per_token": 2.46e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 7.37e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen-plus": { + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 997952, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 1.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-plus-character": { + "cache_read_input_token_cost": 1e-07, + "input_cost_per_token": 5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32768, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 1.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen-vl-ocr": { + "input_cost_per_token": 7e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 30000, + "max_output_tokens": 8192, + "max_tokens": 8192, + "mode": "chat", + "output_cost_per_token": 1.6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3-coder-flash": { + "cache_creation_input_token_cost": 3.75e-07, + "cache_read_input_token_cost": 6e-08, + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 997952, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3-omni-flash": { + "input_cost_per_token": 4.3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 49152, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 1.66e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3-vl-embedding": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ], + "supports_vision": true + }, + "tokenlab/qwen3-vl-plus": { + "cache_creation_input_token_cost": 2.5e-07, + "cache_read_input_token_cost": 4e-08, + "input_cost_per_token": 2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 260096, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 1.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-27b": { + "input_cost_per_token": 3e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 260096, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.5-flash": { + "cache_creation_input_token_cost": 1.25e-07, + "cache_read_input_token_cost": 1e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 4e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.5-ocr": { + "input_cost_per_token": 6.9e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 49152, + "max_output_tokens": 16384, + "max_tokens": 16384, + "mode": "chat", + "output_cost_per_token": 2.75e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-omni-flash": { + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 196608, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.2e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-omni-plus": { + "input_cost_per_token": 1.4e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 196608, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 8.3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_vision": true + }, + "tokenlab/qwen3.5-plus": { + "cache_creation_input_token_cost": 5e-07, + "cache_read_input_token_cost": 4e-08, + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 2.4e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.6-27b": { + "input_cost_per_token": 6e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 131072, + "max_output_tokens": 32768, + "max_tokens": 32768, + "mode": "chat", + "output_cost_per_token": 3.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.7-max": { + "cache_creation_input_token_cost": 3.125e-06, + "cache_read_input_token_cost": 5e-07, + "input_cost_per_token": 2.5e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 7.5e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.7-plus": { + "cache_creation_input_token_cost": 5e-07, + "cache_read_input_token_cost": 8e-08, + "input_cost_per_token": 4e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 65536, + "max_tokens": 65536, + "mode": "chat", + "output_cost_per_token": 1.6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true + }, + "tokenlab/qwen3.7-text-embedding": { + "input_cost_per_token": 7.3529411765e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_tokens": 128000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/qwen3.7-text-embedding-flash": { + "input_cost_per_token": 1.8382352941e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 128000, + "max_tokens": 128000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/qwen3.8-2.4t-a95b": { + "input_cost_per_token": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/qwen3.8-27b": { + "cache_creation_input_token_cost": 6.25e-07, + "cache_read_input_token_cost": 1e-07, + "input_cost_per_token": 5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.8-flash": { + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 4.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.8-max": { + "input_cost_per_token": 2e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 991808, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 6e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/qwen3.8-omni-flash": { + "cache_read_input_token_cost": 1.6e-08, + "input_cost_per_token": 1.5e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "mode": "chat", + "output_cost_per_token": 4.7e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/solar-pro4": { + "cache_read_input_token_cost": 1.8e-08, + "input_cost_per_token": 9e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 524288, + "max_output_tokens": 131072, + "max_tokens": 131072, + "mode": "chat", + "output_cost_per_token": 3.6e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/step-3.5-flash": { + "cache_read_input_token_cost": 2e-08, + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 256000, + "max_output_tokens": 256000, + "max_tokens": 256000, + "mode": "chat", + "output_cost_per_token": 3e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/step-3.7-flash": { + "cache_read_input_token_cost": 4e-08, + "input_cost_per_token": 2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 262144, + "max_output_tokens": 262144, + "max_tokens": 262144, + "mode": "chat", + "output_cost_per_token": 1.15e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, + "tokenlab/step-5-preview": { + "cache_read_input_token_cost": 5e-08, + "input_cost_per_token": 1e-06, + "litellm_provider": "tokenlab", + "max_input_tokens": 1000000, + "max_output_tokens": 64000, + "max_tokens": 64000, + "mode": "chat", + "output_cost_per_token": 2.7e-06, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supported_modalities": [ + "text", + "image" + ], + "supported_output_modalities": [ + "text" + ], + "supports_function_calling": true, + "supports_native_streaming": true, + "supports_prompt_caching": true, + "supports_reasoning": true, + "supports_system_messages": true, + "supports_tool_choice": true, + "supports_vision": true + }, + "tokenlab/text-embedding-3-large": { + "input_cost_per_token": 9.1e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8191, + "max_tokens": 8191, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/text-embedding-3-small": { + "input_cost_per_token": 1.4e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8191, + "max_tokens": 8191, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/text-embedding-ada-002": { + "input_cost_per_token": 1e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 8191, + "max_tokens": 8191, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/text-embedding-v4": { + "input_cost_per_token": 7e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_tokens": 8192, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/tongyi-embedding-vision-plus": { + "input_cost_per_token": 9e-08, + "litellm_provider": "tokenlab", + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ], + "supports_vision": true + }, + "tokenlab/tongyi-intent-detect-v3": { + "input_cost_per_token": 5.8e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 8192, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 1.44e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/tongyi-xiaomi-analysis-flash": { + "input_cost_per_token": 2.9411764705e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 28672, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 5.8823529412e-08, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/tongyi-xiaomi-analysis-pro": { + "input_cost_per_token": 1.47058823529e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 28672, + "max_output_tokens": 4096, + "max_tokens": 4096, + "mode": "chat", + "output_cost_per_token": 3.97058823529e-07, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/chat/completions", + "/v1/responses" + ], + "supports_native_streaming": true, + "supports_system_messages": true + }, + "tokenlab/voyage-3-large": { + "input_cost_per_token": 1.8e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-3.5": { + "input_cost_per_token": 6e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-3.5-lite": { + "input_cost_per_token": 2e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-4": { + "input_cost_per_token": 6e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-4-large": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-4-lite": { + "input_cost_per_token": 2e-08, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-code-2": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 16000, + "max_tokens": 16000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-code-3": { + "input_cost_per_token": 1.8e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-finance-2": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 32000, + "max_tokens": 32000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, + "tokenlab/voyage-law-2": { + "input_cost_per_token": 1.2e-07, + "litellm_provider": "tokenlab", + "max_input_tokens": 16000, + "max_tokens": 16000, + "mode": "embedding", + "output_cost_per_token": 0.0, + "source": "https://api.tokenlab.sh/v1/models", + "supported_endpoints": [ + "/v1/embeddings" + ] + }, "fallback_generalizations": { "rules": [ { diff --git a/provider_endpoints_support.json b/provider_endpoints_support.json index 00904219b81..0962b1041f7 100644 --- a/provider_endpoints_support.json +++ b/provider_endpoints_support.json @@ -2469,6 +2469,23 @@ "a2a": false } }, + "tokenlab": { + "display_name": "TokenLab (`tokenlab`)", + "url": "https://tokenlab.sh/docs/en/integrations/litellm", + "endpoints": { + "chat_completions": true, + "messages": true, + "responses": true, + "embeddings": true, + "image_generations": false, + "audio_transcriptions": false, + "audio_speech": false, + "moderations": false, + "batches": false, + "rerank": false, + "a2a": false + } + }, "tensormesh": { "display_name": "Tensormesh (`tensormesh`)", "url": "https://docs.litellm.ai/docs/providers/tensormesh", diff --git a/tests/unit/llms/openai_like/test_tokenlab_provider.py b/tests/unit/llms/openai_like/test_tokenlab_provider.py new file mode 100644 index 00000000000..2f5cb7bc3da --- /dev/null +++ b/tests/unit/llms/openai_like/test_tokenlab_provider.py @@ -0,0 +1,200 @@ +import pytest + +import litellm + + +TOKENLAB_API_BASE = "https://api.tokenlab.sh/v1" +TOKENLAB_SAMPLE_MODELS = [ + "tokenlab/gpt-5.5", + "tokenlab/claude-opus-4-8", + "tokenlab/gemini-3.5-flash", + "tokenlab/deepseek-v4-pro", + "tokenlab/qwen3.7-max", + "tokenlab/text-embedding-3-small", +] + + +def test_tokenlab_json_registry(): + from litellm.llms.openai_like.json_loader import JSONProviderRegistry + + assert litellm.LlmProviders.TOKENLAB.value == "tokenlab" + assert litellm.LlmProviders("tokenlab") == litellm.LlmProviders.TOKENLAB + assert JSONProviderRegistry.exists("tokenlab") + config = JSONProviderRegistry.get("tokenlab") + assert config is not None + assert config.base_url == TOKENLAB_API_BASE + assert config.api_key_env == "TOKENLAB_API_KEY" + assert config.api_base_env == "TOKENLAB_API_BASE" + assert config.param_mappings["max_completion_tokens"] == "max_tokens" + assert config.supported_endpoints == [ + "/v1/chat/completions", + "/v1/messages", + "/v1/responses", + "/v1/embeddings", + ] + assert JSONProviderRegistry.supports_responses_api("tokenlab") is True + assert JSONProviderRegistry.supports_anthropic_messages_api("tokenlab") is True + + +def test_tokenlab_provider_detection_by_prefix(): + from litellm.litellm_core_utils.get_llm_provider_logic import get_llm_provider + + model, provider, _, api_base = get_llm_provider("tokenlab/gpt-5.5") + + assert model == "gpt-5.5" + assert provider == "tokenlab" + assert api_base == TOKENLAB_API_BASE + + +def test_tokenlab_api_base_override(): + from litellm.litellm_core_utils.get_llm_provider_logic import get_llm_provider + + _, provider, api_key, api_base = get_llm_provider( + model="tokenlab/gpt-5.5", + api_base="https://custom.tokenlab.example/v1", + api_key="sk-test", + ) + + assert provider == "tokenlab" + assert api_base == "https://custom.tokenlab.example/v1" + assert api_key == "sk-test" + + +def test_tokenlab_url_autodetection(): + from litellm.litellm_core_utils.get_llm_provider_logic import get_llm_provider + + _, provider, _, api_base = get_llm_provider( + model="gpt-5.5", + api_base=TOKENLAB_API_BASE, + ) + + assert provider == "tokenlab" + assert api_base == TOKENLAB_API_BASE + + +def test_tokenlab_chat_complete_url(): + from litellm.llms.openai_like.dynamic_config import create_config_class + from litellm.llms.openai_like.json_loader import JSONProviderRegistry + + config = create_config_class(JSONProviderRegistry.get("tokenlab"))() + + assert ( + config.get_complete_url( + api_base=None, + api_key=None, + model="gpt-5.5", + optional_params={}, + litellm_params={}, + ) + == "https://api.tokenlab.sh/v1/chat/completions" + ) + + +def test_tokenlab_responses_api_config(): + from litellm.llms.openai.responses.transformation import OpenAIResponsesAPIConfig + from litellm.utils import ProviderConfigManager + + config = ProviderConfigManager.get_provider_responses_api_config( + provider="tokenlab", + model="tokenlab/gpt-5.5", + ) + + assert isinstance(config, OpenAIResponsesAPIConfig) + assert config.custom_llm_provider == "tokenlab" + assert config.get_complete_url(api_base=None, litellm_params={}) == "https://api.tokenlab.sh/v1/responses" + + +def test_tokenlab_anthropic_messages_config(): + from litellm.llms.openai_like.messages.transformation import ( + OpenAILikeAnthropicMessagesConfig, + ) + from litellm.utils import ProviderConfigManager + + config = ProviderConfigManager.get_provider_anthropic_messages_config( + provider=litellm.LlmProviders.TOKENLAB, + model="claude-opus-4-8", + ) + + assert isinstance(config, OpenAILikeAnthropicMessagesConfig) + assert ( + config.get_complete_url( + api_base=TOKENLAB_API_BASE, + api_key="sk-test", + model="claude-opus-4-8", + optional_params={}, + litellm_params={}, + ) + == "https://api.tokenlab.sh/v1/messages" + ) + + +class TestTokenLabCostMap: + @pytest.fixture(autouse=True) + def _use_local_model_cost_map(self, monkeypatch): + original_model_cost = litellm.model_cost + monkeypatch.setenv("LITELLM_LOCAL_MODEL_COST_MAP", "True") + litellm.model_cost = litellm.get_model_cost_map(url="") + litellm.get_model_info.cache_clear() + try: + yield + finally: + litellm.model_cost = original_model_cost + litellm.get_model_info.cache_clear() + + def test_sample_models_registered(self): + for model in TOKENLAB_SAMPLE_MODELS: + info = litellm.get_model_info(model) + assert info["litellm_provider"] == "tokenlab" + assert info["mode"] in {"chat", "embedding"} + + def test_claude_model_cost_map_keeps_schema_supported_endpoints(self): + from litellm.llms.openai_like.json_loader import JSONProviderRegistry + + endpoints = litellm.model_cost["tokenlab/claude-opus-4-8"]["supported_endpoints"] + assert endpoints == ["/v1/chat/completions", "/v1/responses"] + + provider_config = JSONProviderRegistry.get("tokenlab") + assert provider_config is not None + assert "/v1/messages" in provider_config.supported_endpoints + + def test_chat_cost_is_wired(self): + prompt_cost, completion_cost = litellm.cost_per_token( + model="tokenlab/gpt-5.5", + prompt_tokens=100_000, + completion_tokens=100_000, + ) + assert prompt_cost == pytest.approx(litellm.model_cost["tokenlab/gpt-5.5"]["input_cost_per_token"] * 100_000) + assert completion_cost == pytest.approx( + litellm.model_cost["tokenlab/gpt-5.5"]["output_cost_per_token"] * 100_000 + ) + assert prompt_cost > 0 and completion_cost > 0 + + def test_chat_cost_uses_the_long_context_tier(self): + assert ( + litellm.model_cost["tokenlab/gpt-5.5"]["input_cost_per_token_above_272k_tokens"] + > litellm.model_cost["tokenlab/gpt-5.5"]["input_cost_per_token"] + ) + + prompt_cost, completion_cost = litellm.cost_per_token( + model="tokenlab/gpt-5.5", + prompt_tokens=300_000, + completion_tokens=100_000, + ) + assert prompt_cost == pytest.approx( + litellm.model_cost["tokenlab/gpt-5.5"]["input_cost_per_token_above_272k_tokens"] * 300_000 + ) + assert completion_cost == pytest.approx( + litellm.model_cost["tokenlab/gpt-5.5"]["output_cost_per_token_above_272k_tokens"] * 100_000 + ) + + def test_embedding_cost_is_wired(self): + prompt_cost, completion_cost = litellm.cost_per_token( + model="tokenlab/text-embedding-3-small", + prompt_tokens=1_000_000, + completion_tokens=0, + ) + assert prompt_cost == pytest.approx( + litellm.model_cost["tokenlab/text-embedding-3-small"]["input_cost_per_token"] * 1_000_000 + ) + assert prompt_cost > 0 + assert completion_cost == 0