mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-06 08:16:43 +00:00
feat(provider): add Chuizi.AI as OpenAI-compatible provider
Add Chuizi.AI (https://chuizi.ai) as a provider. Chuizi.AI is a unified AI gateway providing access to 100+ models across 16 providers through a single OpenAI-compatible endpoint. Changes: - Add CHUIZI to LlmProviders enum - Add to openai_compatible_endpoints, openai_compatible_providers, and openai_text_completion_compatible_providers lists - Add endpoint detection for api.chuizi.ai/v1 - Add provider documentation page Usage: model="chuizi/anthropic/claude-sonnet-4-6" Auth: CHUIZI_API_KEY env var
This commit is contained in:
parent
d251238bd7
commit
86bb05a400
4 changed files with 113 additions and 0 deletions
106
docs/my-website/docs/providers/chuizi.md
Normal file
106
docs/my-website/docs/providers/chuizi.md
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
# Chuizi.AI
|
||||
|
||||
## Overview
|
||||
|
||||
| Property | Details |
|
||||
|-------|-------|
|
||||
| Description | Chuizi.AI is a unified AI gateway providing access to 100+ models across 16 providers through a single OpenAI-compatible endpoint. |
|
||||
| Provider Route on LiteLLM | `chuizi/` |
|
||||
| Link to Provider Doc | [Chuizi.AI Docs ↗](https://chuizi.ai/docs) |
|
||||
| Base URL | `https://api.chuizi.ai/v1` |
|
||||
| Supported Operations | [`/chat/completions`](#sample-usage), [`/completions`](#sample-usage), [`/embeddings`](#sample-usage) |
|
||||
|
||||
<br />
|
||||
|
||||
## Required Variables
|
||||
|
||||
```python showLineNumbers title="Environment Variables"
|
||||
os.environ["CHUIZI_API_KEY"] = "" # your Chuizi.AI API key
|
||||
```
|
||||
|
||||
Get your API key from [app.chuizi.ai](https://app.chuizi.ai/login).
|
||||
|
||||
## Usage - LiteLLM Python SDK
|
||||
|
||||
### Non-streaming
|
||||
|
||||
```python showLineNumbers title="Chuizi.AI Non-streaming"
|
||||
import os
|
||||
import litellm
|
||||
from litellm import completion
|
||||
|
||||
os.environ["CHUIZI_API_KEY"] = "" # your Chuizi.AI API key
|
||||
|
||||
messages = [{"content": "What is the capital of France?", "role": "user"}]
|
||||
|
||||
# Claude via Chuizi.AI
|
||||
response = completion(
|
||||
model="chuizi/anthropic/claude-sonnet-4-6",
|
||||
messages=messages
|
||||
)
|
||||
print(response)
|
||||
```
|
||||
|
||||
### Streaming
|
||||
|
||||
```python showLineNumbers title="Chuizi.AI Streaming"
|
||||
import os
|
||||
import litellm
|
||||
from litellm import completion
|
||||
|
||||
os.environ["CHUIZI_API_KEY"] = ""
|
||||
|
||||
messages = [{"content": "Write a haiku about AI", "role": "user"}]
|
||||
|
||||
response = completion(
|
||||
model="chuizi/openai/gpt-4.1",
|
||||
messages=messages,
|
||||
stream=True
|
||||
)
|
||||
|
||||
for chunk in response:
|
||||
print(chunk.choices[0].delta.content or "", end="")
|
||||
```
|
||||
|
||||
## Usage - LiteLLM Proxy
|
||||
|
||||
### Config
|
||||
|
||||
```yaml showLineNumbers title="config.yaml"
|
||||
model_list:
|
||||
- model_name: claude-sonnet
|
||||
litellm_params:
|
||||
model: chuizi/anthropic/claude-sonnet-4-6
|
||||
api_key: os.environ/CHUIZI_API_KEY
|
||||
- model_name: gpt-4.1
|
||||
litellm_params:
|
||||
model: chuizi/openai/gpt-4.1
|
||||
api_key: os.environ/CHUIZI_API_KEY
|
||||
- model_name: deepseek-chat
|
||||
litellm_params:
|
||||
model: chuizi/deepseek/deepseek-chat
|
||||
api_key: os.environ/CHUIZI_API_KEY
|
||||
```
|
||||
|
||||
### Start Proxy
|
||||
|
||||
```bash
|
||||
litellm --config /path/to/config.yaml
|
||||
```
|
||||
|
||||
## Available Models
|
||||
|
||||
Models use `provider/model` naming. Some popular models:
|
||||
|
||||
| Model | LiteLLM Route |
|
||||
|-------|--------------|
|
||||
| Claude Sonnet 4.6 | `chuizi/anthropic/claude-sonnet-4-6` |
|
||||
| Claude Opus 4.6 | `chuizi/anthropic/claude-opus-4-6` |
|
||||
| Claude Haiku 4.5 | `chuizi/anthropic/claude-haiku-4-5` |
|
||||
| GPT-4.1 | `chuizi/openai/gpt-4.1` |
|
||||
| o4-mini | `chuizi/openai/o4-mini` |
|
||||
| Gemini 2.5 Pro | `chuizi/google/gemini-2.5-pro` |
|
||||
| DeepSeek V3.2 | `chuizi/deepseek/deepseek-chat` |
|
||||
| DeepSeek R1 | `chuizi/deepseek/deepseek-r1` |
|
||||
|
||||
See the full model list at [chuizi.ai/models](https://chuizi.ai/models).
|
||||
|
|
@ -721,6 +721,7 @@ openai_compatible_endpoints: List = [
|
|||
"https://nano-gpt.com/api/v1",
|
||||
"https://api.poe.com/v1",
|
||||
"https://llm.chutes.ai/v1/",
|
||||
"https://api.chuizi.ai/v1",
|
||||
"https://api.v0.dev/v1",
|
||||
"https://api.morphllm.com/v1",
|
||||
"https://api.lambda.ai/v1",
|
||||
|
|
@ -770,6 +771,7 @@ openai_compatible_providers: List = [
|
|||
"nano-gpt", # Nano-GPT - JSON-configured provider
|
||||
"poe", # Poe - JSON-configured provider
|
||||
"chutes", # Chutes - JSON-configured provider
|
||||
"chuizi", # Chuizi.AI - unified AI gateway
|
||||
"featherless_ai",
|
||||
"nscale",
|
||||
"nebius",
|
||||
|
|
@ -805,6 +807,7 @@ openai_text_completion_compatible_providers: List = (
|
|||
"nano-gpt",
|
||||
"poe",
|
||||
"chutes",
|
||||
"chuizi",
|
||||
"v0",
|
||||
"lambda_ai",
|
||||
"hyperbolic",
|
||||
|
|
|
|||
|
|
@ -309,6 +309,9 @@ def get_llm_provider( # noqa: PLR0915
|
|||
elif endpoint == "https://llm.chutes.ai/v1/":
|
||||
custom_llm_provider = "chutes"
|
||||
dynamic_api_key = get_secret_str("CHUTES_API_KEY")
|
||||
elif endpoint == "https://api.chuizi.ai/v1":
|
||||
custom_llm_provider = "chuizi"
|
||||
dynamic_api_key = get_secret_str("CHUIZI_API_KEY")
|
||||
elif endpoint == "https://api.v0.dev/v1":
|
||||
custom_llm_provider = "v0"
|
||||
dynamic_api_key = get_secret_str("V0_API_KEY")
|
||||
|
|
|
|||
|
|
@ -3291,6 +3291,7 @@ class LlmProviders(str, Enum):
|
|||
NANOGPT = "nano-gpt"
|
||||
POE = "poe"
|
||||
CHUTES = "chutes"
|
||||
CHUIZI = "chuizi"
|
||||
XIAOMI_MIMO = "xiaomi_mimo"
|
||||
LITELLM_AGENT = "litellm_agent"
|
||||
CURSOR = "cursor"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue