Cum am redus costurile LLM cu 99% fără să pierdem calitate
Majoritatea funcționalităților AI sunt scumpe pentru că nimeni nu le-a măsurat. Iată munca de rutare, caching și prompt-uri care a dus o sarcină de producție de la mii la zeci de dolari pe lună.
Când o echipă lansează prima funcționalitate construită pe un model lingvistic mare, factura este rareori prima grijă. Devine prima grijă cam două luni mai târziu. Sarcina descrisă aici procesa documente lungi pentru un produs SaaS și costa câteva mii de dolari pe lună la lansare. Șase săptămâni mai târziu costa sub cincizeci. Calitatea, măsurată pe un set fix de evaluare, a crescut.
1. Măsoară înainte să optimizezi
Prima săptămână nu a produs nicio modificare de cod. Am logat fiecare apel cu numărul de token-uri, modelul, latența și identificatorul funcționalității care l-a declanșat. Două constatări au plătit tot proiectul: 38% dintre apeluri erau reîncercări ale unor cereri care reușiseră deja, iar un job de fundal rezuma din nou documente care nu se schimbaseră.
2. Rutează după dificultate, nu din obișnuință
Fiecare cerere fusese trimisă la cel mai mare model disponibil. Am clasificat cererile în trei niveluri cu euristici ieftine (lungimea documentului, limba, dacă era nevoie de output structurat) și am trimis fiecare nivel la cel mai mic model care trecea setul de evaluare pentru nivelul respectiv. Aproximativ 70% din trafic s-a mutat pe modele de 10 până la 20 de ori mai ieftine per token.
3. Cache agresiv, pe două niveluri
- Cache pe potrivire exactă a prompt-ului normalizat. Plictisitor, dar a eliminat imediat risipa din reîncercări.
- Prompt caching oferit de furnizori pentru partea lungă și statică a prompt-ului (instrucțiuni, scheme, exemple few-shot). Pe această sarcină, prefixul static reprezenta 80% din token-urile de intrare.
4. Scurtează prompt-ul
Prompt-ul de sistem crescuse la 3.000 de token-uri de instrucțiuni acumulate. L-am rescris la 600, am mutat exemplele într-un pas de retrieval care injectează doar cele două cele mai relevante și am trecut la output structurat, ca modelul să nu mai producă proză explicativă pe care oricum o aruncam.
5. Procesează în loturi ce nu trebuie să fie interactiv
Reprocesarea de noapte s-a mutat pe API-urile batch ale furnizorilor, la jumătate de preț, și nu mai concura cu traficul interactiv pentru limitele de rată.
Ce am păstrat
Un set de evaluare de 400 de exemple reale, anonimizate, cu rezultatele așteptate, rulat la fiecare modificare. Munca pe costuri fără set de evaluare înseamnă ghicit. Setul este și ce ne-a permis să spunem „calitatea a crescut” fără să clipim.
Rețeta într-o listă
- Loghează token-uri, model și funcționalitate per apel.
- Construiește un set de evaluare din trafic real.
- Elimină munca duplicată și cea pe date neschimbate.
- Rutează pe niveluri către cel mai mic model care trece testul.
- Pune în cache prefixul static al prompt-ului.
- Scurtează prompt-ul, folosește output structurat.
- Procesează în loturi munca offline.
Dacă funcționalitatea ta AI are o linie de buget care face pe cineva să se strâmbe, de obicei sunt două până la patru săptămâni de lucru. Scrie-ne dacă vrei ajutor.


