Moja finančná aplikácia FinMan VHWorx číta meradlá, účty za palivo a bankové výpisy z fotografií a súborov. Všetko to beží na vizuálnych/textových LLM cez OpenRouter — a veľa z toho na bezplatných modeloch.
Bezplatné modely sú skvelé, okrem jednej veci: neustále sa menia. Objavujú sa, miznú, premenúvajú alebo ticho zanikajú. Ak hardcodujete id modelu, vaša funkcia ticho zomrie v náhodný utorok.
Takže FinMan prestal zaobchádzať s modelmi ako s konštantami. Modely sú údaje:
- Denná úloha synchronizuje aktuálny zoznam modelov z OpenRouter. Nové bezplatné vizuálne modely sú automaticky pridávané; zmiznuté sú deaktivované.
- Platené zálohy sa denne prehodnocujú podľa ceny. Rodina Gemini Flash zálohuje bezplatnú úroveň, najlacnejšie najprv — takže prechod nikdy neprekvapí účet.
- Rozpoznávanie prechádza prioritným zoznamom. Ak model zlyhá alebo zmizne, ďalší preberá. Jeden mŕtvy model nikdy neprestanú fungovať používateľovej fotografii.
- Aplikácia sa sama aktualizuje. Samostatná úloha priradí najlepší model z verejného rebríčka komunity ako prioritu #1 — takže textové úlohy ticho prechádzajú na to, čo je aktuálne najlepšie.
- Zmeny ma informujú na Telegrame. Žiadne panely na kontrolu.
Výsledok po mesiacoch v produkcii: Odvtedy som sa nedotkol id modelu. Každá vlna deprecácie prešla bez povšimnutia — mne a používateľom.
Ak staviate na LLM (najmä bezplatných úrovniach), toto je najefektívnejšia malá zmena, ktorú poznám: modely ako údaje, nie konštanty. Tabuľka, denný cron, prioritný prechod. To je celý trik.