feat: add SiliconFlow provider support
Add SiliconFlow (硅基流动) as an OpenAI-compatible gateway provider. SiliconFlow hosts multiple models (Qwen, DeepSeek, etc.) via an OpenAI-compatible API at https://api.siliconflow.cn/v1. Changes: - Add ProviderSpec for siliconflow in providers/registry.py - Add siliconflow field to ProvidersConfig in config/schema.py Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
f821e95d3c
commit
66cd21e6ec
@ -192,6 +192,7 @@ class ProvidersConfig(BaseModel):
|
||||
moonshot: ProviderConfig = Field(default_factory=ProviderConfig)
|
||||
minimax: ProviderConfig = Field(default_factory=ProviderConfig)
|
||||
aihubmix: ProviderConfig = Field(default_factory=ProviderConfig) # AiHubMix API gateway
|
||||
siliconflow: ProviderConfig = Field(default_factory=ProviderConfig) # 硅基流动 API gateway
|
||||
|
||||
|
||||
class GatewayConfig(BaseModel):
|
||||
|
||||
@ -117,6 +117,27 @@ PROVIDERS: tuple[ProviderSpec, ...] = (
|
||||
model_overrides=(),
|
||||
),
|
||||
|
||||
# SiliconFlow (硅基流动): OpenAI-compatible gateway hosting multiple models.
|
||||
# strip_model_prefix=False: SiliconFlow model names include org prefix
|
||||
# (e.g. "Qwen/Qwen2.5-14B-Instruct", "deepseek-ai/DeepSeek-V3")
|
||||
# which is part of the model ID and must NOT be stripped.
|
||||
ProviderSpec(
|
||||
name="siliconflow",
|
||||
keywords=("siliconflow",),
|
||||
env_key="OPENAI_API_KEY", # OpenAI-compatible
|
||||
display_name="SiliconFlow",
|
||||
litellm_prefix="openai", # → openai/{model}
|
||||
skip_prefixes=(),
|
||||
env_extras=(),
|
||||
is_gateway=True,
|
||||
is_local=False,
|
||||
detect_by_key_prefix="",
|
||||
detect_by_base_keyword="siliconflow",
|
||||
default_api_base="https://api.siliconflow.cn/v1",
|
||||
strip_model_prefix=False,
|
||||
model_overrides=(),
|
||||
),
|
||||
|
||||
# === Standard providers (matched by model-name keywords) ===============
|
||||
|
||||
# Anthropic: LiteLLM recognizes "claude-*" natively, no prefix needed.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user