Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
5763b4a
feat(providers): add CoralBricks as a native provider
Oct 5, 2026
88814a9
test(coralbricks): harden cost map consistency tests
Oct 5, 2026
5f5db59
test(coralbricks): type cost helpers, read cost maps from disk, cover…
Oct 6, 2026
f8568e3
test(coralbricks): drop Final on loop-rebound names
Oct 6, 2026
c789c5c
test(coralbricks): add the provider audit cells, the Add Model browse…
mateo-berri Oct 6, 2026
07dc9e8
Merge remote-tracking branch 'origin/main' into litellm_coralbricks_p…
Oct 8, 2026
430c736
test(coralbricks): derive UI spend from model info, type browser rows…
Oct 8, 2026
9f9a8be
test(coralbricks): release held upstream before the wire server joins…
Oct 8, 2026
35f9b6f
test(coralbricks): number forwarded chats with itertools.count instea…
Oct 8, 2026
18ffd76
fix(coralbricks): drop retired glm-5.3-flash-fp4 and test against dee…
Oct 8, 2026
1dfd035
test(coralbricks): pin retries, await the respawned worker, read the …
mateo-berri Oct 9, 2026
cb1a23d
fix(coralbricks): price the current model names and the new DeepSeek …
mateo-berri Oct 10, 2026
efb24af
fix(coralbricks): keep pricing for the deprecated fp4 slugs CoralBric…
mateo-berri Oct 10, 2026
a4fb718
fix(coralbricks): list the catalog rows for wildcard deployments and …
mateo-berri Oct 12, 2026
93c5048
Merge remote-tracking branch 'origin/main' into litellm_coralbricks_p…
mateo-berri Oct 12, 2026
d5bbab5
fix(coralbricks): price the deprecated glm-5.3 and deepseek-v4.1-flas…
mateo-berri Oct 12, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -342,6 +342,7 @@ Set `LITELLM_PROXY_API_BASE` and `LITELLM_PROXY_API_KEY` and every model call th
| [Cohere Chat (`cohere_chat`)](https://docs.litellm.ai/docs/providers/cohere) | ✅ | ✅ | ✅ | | | | | | | |
| [CometAPI (`cometapi`)](https://docs.litellm.ai/docs/providers/cometapi) | ✅ | ✅ | ✅ | ✅ | | | | | | |
| [CompactifAI (`compactifai`)](https://docs.litellm.ai/docs/providers/compactifai) | ✅ | ✅ | ✅ | | | | | | | |
| [CoralBricks (`coralbricks`)](https://docs.litellm.ai/docs/providers/coralbricks) | ✅ | ✅ | ✅ | | | | | | | |
| [Custom (`custom`)](https://docs.litellm.ai/docs/providers/custom_llm_server) | ✅ | ✅ | ✅ | | | | | | | |
| [Custom OpenAI (`custom_openai`)](https://docs.litellm.ai/docs/providers/openai_compatible) | ✅ | ✅ | ✅ | | | ✅ | ✅ | ✅ | ✅ | |
| [Dashscope (`dashscope`)](https://docs.litellm.ai/docs/providers/dashscope) | ✅ | ✅ | ✅ | ✅ | | | | | | ✅ |
Expand Down
5 changes: 5 additions & 0 deletions litellm/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -721,6 +721,7 @@ def identify(event_details):
transcribe_models: Set = set()
gigachat_models: Set = set()
llamagate_models: Set = set()
coralbricks_models: Set[str] = set()
reducto_models: Set = set()
bedrock_mantle_models: Set = set()

Expand Down Expand Up @@ -1012,6 +1013,8 @@ def _populate_provider_model_sets(model_cost_map: Mapping[str, Mapping[str, obje
gigachat_models.add(key)
elif value.get("litellm_provider") == "llamagate":
llamagate_models.add(key)
elif value.get("litellm_provider") == "coralbricks":
coralbricks_models.add(key)
elif value.get("litellm_provider") == "reducto":
reducto_models.add(key)
elif value.get("litellm_provider") == "bedrock_mantle":
Expand Down Expand Up @@ -1146,6 +1149,7 @@ def add_known_models(model_cost_map: Optional[Dict] = None):
| docker_model_runner_models
| reducto_models
| bedrock_mantle_models
| coralbricks_models
| set(clarifai_models)
)

Expand Down Expand Up @@ -1265,6 +1269,7 @@ def _build_models_by_provider() -> dict:
"transcribe": transcribe_models,
"gigachat": gigachat_models,
"llamagate": llamagate_models,
"coralbricks": coralbricks_models,
"reducto": reducto_models,
"bedrock_mantle": bedrock_mantle_models,
}
Expand Down
2 changes: 2 additions & 0 deletions litellm/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -1007,6 +1007,7 @@ class ServerStreamingClassification(str, Enum):
"https://api.meta.ai/v1",
"https://api.sailresearch.com/v1",
"https://api.cognition.ai/v1",
"https://inference.coralbricks.ai/v1",
"https://api.cortecs.ai/v1",
"https://api.scx.ai/v1",
"https://api.prisminference.com/v1",
Expand Down Expand Up @@ -1083,6 +1084,7 @@ class ServerStreamingClassification(str, Enum):
"darkbloom",
"meta", # Meta Model API (Muse Spark) - JSON-configured provider
"cognition",
"coralbricks",
"cortecs",
"scx-ai",
"prism",
Expand Down
6 changes: 6 additions & 0 deletions litellm/llms/openai_like/providers.json
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,12 @@
"api_key_env": "COGNITION_API_KEY",
"api_base_env": "COGNITION_API_BASE"
},
"coralbricks": {
"base_url": "https://inference.coralbricks.ai/v1",
"api_key_env": "CORALBRICKS_API_KEY",
"api_base_env": "CORALBRICKS_API_BASE",
"supported_endpoints": ["/v1/chat/completions", "/v1/responses", "/v1/messages"]
},
"cortecs": {
"base_url": "https://api.cortecs.ai/v1",
"api_key_env": "CORTECS_API_KEY",
Expand Down
138 changes: 138 additions & 0 deletions litellm/model_prices_and_context_window_backup.json
Original file line number Diff line number Diff line change
Expand Up @@ -16614,6 +16614,144 @@
"supports_function_calling": true,
"supports_tool_choice": true
},
"coralbricks/glm-5.3-fast": {
"cache_creation_input_token_cost": 1.68e-06,
"cache_read_input_token_cost": 0.0,
"input_cost_per_token": 1.12e-06,
"litellm_provider": "coralbricks",
"max_input_tokens": 1048576,
"max_tokens": 1048576,
"mode": "chat",
"output_cost_per_token": 4.4e-06,
"source": "https://www.coralbricks.ai/pricing",
"supported_endpoints": [
"/v1/chat/completions",
"/v1/responses",
"/v1/messages"
],
"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": false
},
"coralbricks/glm-5.3-fp4": {
"cache_creation_input_token_cost": 1.68e-06,
"cache_read_input_token_cost": 0.0,
"input_cost_per_token": 1.12e-06,
"litellm_provider": "coralbricks",
"max_input_tokens": 1048576,
"max_tokens": 1048576,
"mode": "chat",
"output_cost_per_token": 4.4e-06,
"source": "https://www.coralbricks.ai/pricing",
"supported_endpoints": [
"/v1/chat/completions",
"/v1/responses",
"/v1/messages"
],
"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": false
},
"coralbricks/glm-5.3": {
"cache_creation_input_token_cost": 1.68e-06,
"cache_read_input_token_cost": 0.0,
"input_cost_per_token": 1.12e-06,
"litellm_provider": "coralbricks",
"max_input_tokens": 1048576,
"max_tokens": 1048576,
"mode": "chat",
"output_cost_per_token": 4.4e-06,
"source": "https://www.coralbricks.ai/pricing",
"supported_endpoints": [
"/v1/chat/completions",
"/v1/responses",
"/v1/messages"
],
"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": false
},
"coralbricks/deepseek-v4.1-flash-fast": {
"cache_creation_input_token_cost": 9e-08,
"cache_read_input_token_cost": 0.0,
"input_cost_per_token": 1e-08,
"litellm_provider": "coralbricks",
"max_input_tokens": 1048576,
"max_tokens": 1048576,
"mode": "chat",
"output_cost_per_token": 1.2e-06,
"source": "https://www.coralbricks.ai/pricing",
"supported_endpoints": [
"/v1/chat/completions",
"/v1/responses",
"/v1/messages"
],
"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
},
"coralbricks/deepseek-v4.1-flash-fast-fp4": {
"cache_creation_input_token_cost": 9e-08,
"cache_read_input_token_cost": 0.0,
"input_cost_per_token": 1e-08,
"litellm_provider": "coralbricks",
"max_input_tokens": 1048576,
"max_tokens": 1048576,
"mode": "chat",
"output_cost_per_token": 1.2e-06,
"source": "https://www.coralbricks.ai/pricing",
"supported_endpoints": [
"/v1/chat/completions",
"/v1/responses",
"/v1/messages"
],
"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
},
"coralbricks/deepseek-v4.1-flash": {
"cache_creation_input_token_cost": 9e-08,
"cache_read_input_token_cost": 0.0,
"input_cost_per_token": 1e-08,
"litellm_provider": "coralbricks",
"max_input_tokens": 1048576,
"max_tokens": 1048576,
"mode": "chat",
"output_cost_per_token": 1.2e-06,
"source": "https://www.coralbricks.ai/pricing",
"supported_endpoints": [
"/v1/chat/completions",
"/v1/responses",
"/v1/messages"
],
"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
},
"computer-use-preview": {
"deprecation_date": "2026-07-23",
"input_cost_per_token": 3e-06,
Expand Down
18 changes: 18 additions & 0 deletions litellm/provider_endpoints_support_backup.json
Original file line number Diff line number Diff line change
Expand Up @@ -618,6 +618,24 @@
"interactions": true
}
},
"coralbricks": {
"display_name": "CoralBricks (`coralbricks`)",
"url": "https://docs.litellm.ai/docs/providers/coralbricks",
"endpoints": {
"chat_completions": true,
"messages": true,
"responses": true,
"embeddings": false,
"image_generations": false,
"audio_transcriptions": false,
"audio_speech": false,
"moderations": false,
"batches": false,
"rerank": false,
"a2a": false,
"interactions": false
}
},
"cortecs": {
"display_name": "Cortecs (`cortecs`)",
"url": "https://docs.litellm.ai/docs/providers/cortecs",
Expand Down
28 changes: 28 additions & 0 deletions litellm/proxy/public_endpoints/provider_create_fields.json
Original file line number Diff line number Diff line change
Expand Up @@ -1033,6 +1033,34 @@
],
"default_model_placeholder": "gpt-3.5-turbo"
},
{
"provider": "CORALBRICKS",
"provider_display_name": "CoralBricks",
"litellm_provider": "coralbricks",
"credential_fields": [
{
"key": "api_base",
"label": "API Base",
"placeholder": "https://inference.coralbricks.ai/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": "coralbricks/glm-5.3-fast"
},
{
"provider": "CORTECS",
"provider_display_name": "Cortecs",
Expand Down
1 change: 1 addition & 0 deletions litellm/types/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -4308,6 +4308,7 @@ class LlmProviders(str, Enum):
LIBERTAI = "libertai"
PINSTRIPES = "pinstripes"
COGNITION = "cognition"
CORALBRICKS = "coralbricks"
Comment thread
devin-ai-integration[bot] marked this conversation as resolved.
CORTECS = "cortecs"
SCX_AI = "scx-ai"
PRISM = "prism"
Expand Down
Loading
Loading