ci / test (push) Successful in 24s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
91 lines
3.1 KiB
YAML
91 lines
3.1 KiB
YAML
# LiteLLM-Gateway: einzige Stelle mit URLs/Keys der Modelle. Clients kennen nur die Aliase (= Slots).
|
|
# Hostnamen sind die DNS-Namen bzw. IPs der GPU-VMs im VLAN "svc" (siehe platform/proxmox).
|
|
model_list:
|
|
# --- Stufe 0: starkes Modell über OpenRouter (Modell hier austauschbar) ---
|
|
- model_name: tier0-strong
|
|
litellm_params:
|
|
model: openrouter/anthropic/claude-opus-5.5 # TODO: beim Deployment gewünschtes Modell eintragen
|
|
api_key: os.environ/OPENROUTER_API_KEY
|
|
model_info: {mode: chat}
|
|
|
|
# --- Stufe 1: vLLM auf den RTX 4000 Ada ---
|
|
- model_name: tier1-general
|
|
litellm_params:
|
|
model: hosted_vllm/tier1-general # vLLM --served-model-name
|
|
api_base: http://gpu-main:8000/v1
|
|
model_info: {mode: chat}
|
|
- model_name: tier1-flex
|
|
litellm_params:
|
|
model: hosted_vllm/tier1-flex
|
|
api_base: http://gpu-flex:8000/v1
|
|
model_info: {mode: chat}
|
|
|
|
# LoRA-Adapter: vLLM stellt jeden Adapter unter eigenem Namen bereit. Der Router ruft sie als
|
|
# "<slot>/<adapter>" auf; die Wildcard leitet an den vLLM des jeweiligen Slots weiter.
|
|
# (Wildcard-Routing beim Deployment gegen die eingesetzte LiteLLM-Version prüfen.)
|
|
- model_name: "tier1-general/*"
|
|
litellm_params:
|
|
model: "hosted_vllm/*"
|
|
api_base: http://gpu-main:8000/v1
|
|
- model_name: "tier1-flex/*"
|
|
litellm_params:
|
|
model: "hosted_vllm/*"
|
|
api_base: http://gpu-flex:8000/v1
|
|
|
|
# --- llama.cpp auf P2000 / M4000 ---
|
|
- model_name: verifier-small
|
|
litellm_params:
|
|
model: openai/verifier-small
|
|
api_base: http://gpu-small:8080/v1
|
|
api_key: none
|
|
model_info: {mode: chat}
|
|
- model_name: signature-extractor
|
|
litellm_params:
|
|
model: openai/signature-extractor
|
|
api_base: http://gpu-small:8080/v1
|
|
api_key: none
|
|
model_info: {mode: chat}
|
|
- model_name: embed-default
|
|
litellm_params:
|
|
model: openai/embed-default
|
|
api_base: http://gpu-embed:8081/v1
|
|
api_key: none
|
|
model_info: {mode: embedding}
|
|
- model_name: rerank-default # Router ruft Rerank direkt (RERANK_URL); Eintrag für Monitoring
|
|
litellm_params:
|
|
model: openai/rerank-default
|
|
api_base: http://gpu-embed:8082/v1
|
|
api_key: none
|
|
model_info: {mode: rerank}
|
|
|
|
# --- Sprachausgabe (OpenAI-kompatibles /v1/audio/speech) ---
|
|
- model_name: tts-de # Piper im Infra-LXC (knaster tts-serve)
|
|
litellm_params:
|
|
model: openai/tts-de
|
|
api_base: http://tts-piper:8090/v1
|
|
api_key: none
|
|
model_info: {mode: audio_speech}
|
|
- model_name: tts-de-hq # Qwen3-TTS auf gpu-flex (Server-Wahl beim Deployment)
|
|
litellm_params:
|
|
model: openai/tts-de-hq
|
|
api_base: http://gpu-flex:8091/v1
|
|
api_key: none
|
|
model_info: {mode: audio_speech}
|
|
|
|
router_settings:
|
|
# Infrastruktur-Fallbacks innerhalb einer Stufe; Qualitäts-Eskalation macht der Router-Service
|
|
fallbacks:
|
|
- tier1-general: [tier1-flex]
|
|
- tts-de-hq: [tts-de]
|
|
allowed_fails: 2
|
|
cooldown_time: 60
|
|
num_retries: 1
|
|
timeout: 120
|
|
|
|
litellm_settings:
|
|
drop_params: true
|
|
request_timeout: 120
|
|
|
|
general_settings:
|
|
master_key: os.environ/LITELLM_MASTER_KEY
|