Apelarea directă a API-urilor externe (OpenAI, Anthropic, Google) din codul de aplicație reprezintă o greșeală majoră de arhitectură: dacă un furnizor suferă o cădere de sistem, toată aplicația se prăbușește; cheile de API sunt dispersate pe zeci de servere; iar costurile per echipă sunt imposibil de auditat.
Un LLM Gateway (precum open-source-ul LiteLLM Proxy sau Portkey) acționează ca un intermediar universal cu interfață compatibilă 1:1 OpenAI. Aplicațiile trimit toate cererile către Gateway.
Gateway-ul oferă capabilități critice de producție: Failover automat (dacă Claude 3.5 Sonnet returnează eroare 503 sau rate-limit 429, cererea este redirecționată transparent către GPT-4o în mai puțin de 50ms), Load Balancing între conturi multiple, Cache semantic pe Redis (economisind până la 40% din costuri) și alocarea de bugete lunare stricte per cheie de acces.
Sintaxă, opțiuni și concepte cheie
| Opțiune / Concept | Descriere practică |
|---|---|
Unified Endpoint |
Adresă unică de proxy: `http://llm-gateway.internal/v1/chat/completions`. |
Failover Routing |
Lista ordonată de modele de rezervă activate automat la coduri de eroare HTTP 429/500/503. |
Virtual Keys |
Chei API generate intern cu limite de buget (ex: maxim $50/lună pentru echipa de marketing). |
Semantic Cache |
Salvarea răspunsurilor pe Redis bazată pe similitudinea semantică a întrebărilor identice. |
Model Aliasing |
Maparea unui nume generic (`model: ‘smart-assistant’`) către cel mai ieftin model disponibil în timp real. |
Exemple practice și configurații
Exemplul 1: Configurarea LiteLLM Proxy cu failover automat între Claude și OpenAI
Fișierul de configurare YAML pentru reziliență 99.99%.
# config.yaml
model_list:
- model_name: asistenta-producție
litellm_params:
model: anthropic/claude-3-5-sonnet-20241022
api_key: os.environ/ANTHROPIC_KEY
- model_name: asistenta-producție
litellm_params:
model: openai/gpt-4o
api_key: os.environ/OPENAI_KEY
router_settings:
routing_strategy: latency-based-routing
num_retries: 3
fallbacks: [{"asistenta-producție": ["openai/gpt-4o"]}]
# Pornire gateway:
$ litellm --config config.yaml --port 4000
Rezultat & Impact
Aplicațiile apelează 'asistenta-producție' și beneficiază de protecție automată la căderi de API.
Greșeli frecvente și bune practici
- Conectarea de instanțe multiple fără un cache comun Redis, ceea ce face ca limitele de rate-limiting să nu fie sincronizate corect între noduri.
- Setarea unor timpi de timeout nerealist de mici pe cererile către modele de raționament lung (o1, R1), ceea ce declanșează failover prematur.