AI fără Hype: Ghidul unui Inginer în Lucru
O introducere pragmatică și ancorat în realitate la utilizarea LLM-urilor și a instrumentelor ML în proiecte reale, fără cuvinte zicești sau gândire magică.
Majoritatea conținutului AI de pe internet se încadrează în două tabere: solemne avertismente despre superinteligență sau afirmații entuziate că un chatbot îți va lua locul de muncă marți. Nici una nu te ajută să livrez ceva. Acest ghid omite ambele și te pune la curent cu cum să folosești efectiv generația actuală de instrumente AI în proiecte reale, cu limitările exprimate clar.
Ce face de fapt un LLM
Un model de limbaj mare ca GPT-4 sau Llama 3 prezice următorul token dintr-o secvență, antrenat pe cantități uriașe de text. Atâta tot. Nu există verificator intern de fapte, nu există memorie persistentă între sesiuni (decât dacă o construiești), și nu există înțelegere în modul în care o persoană înțelege. Când îl întrebi ceva, el generează o continuare statistic plauzibilă a promptului tău.
Aceasta contează practic: modelul va genera cu încredere o funcție Python care apelează o metodă de bibliotecă care nu există, pentru că acea metodă pare ca ceva pe care ar trebui să o aibă biblioteca. Rulează întotdeauna codul. Verifică întotdeauna referința API. Tratează rezultatul modelului ca o primă ciornă de la un stagiar rapid, bine informat care uneori minte fără să știe.
Un flux real: utilizarea unui LLM pentru cod
Iată un model care funcționează în loc să doar întrebi ChatGPT să "îmi construiești o aplicație":
- Scrie semnătura funcției și docstring-ul singur, specificând tipuri și cazuri limită.
- Cere modelului să o implementeze conform acelei specificații exact.
- Scrie testele tale separat — nu cere modelului să scrie teste pentru codul pe care tocmai l-a scris, va tinde să scrie teste care trec banal.
- Rulează testele. Alimentează eșecurile înapoi ca noi prompt-uri, nu afirmații vagi "nu funcționează".
def parse_duration(text: str) -> int:
"""
Parse strings like '1h30m', '45s', '2d' into total seconds.
Raise ValueError on invalid input.
"""
Dând modelului acest contract exact produce rezultate mult mai bune decât o descriere vag, și ți se oferă ceva concret de testat.
Generare cu regândire bazată pe regăsire, în termeni simpli
RAG se aruncă-n vânt ca un cuvânt zicesc dar mecanismul este simplu: în loc să te bazezi pe ceea ce a memorizat modelul în timpul antrenării, aduci documente relevante la momentul interogării și le introduci în prompt.
O configurație de bază:
- Fragmentează documentele tale (500-1000 tokeni fiecare este un punct de plecare obișnuit).
- Încorporează fiecare fragment cu un model ca
text-embedding-3-smallsau un model open cabge-small-en. - Stochează vectori în ceva de genul Postgres cu
pgvector, sau o magazie dedicată ca Qdrant. - La momentul interogării, încorporează întrebarea utilizatorului, rulează o căutare de similitudine (distanța cosinus este standard), și trage fragmentele de top-k în prompt alături de întrebare.
SELECT content FROM docs
ORDER BY embedding <=> '[0.012, -0.045, ...]'
LIMIT 5;
Aceasta este de ce un chatbot antrenat pe date până la o dată de tăiere poate răspunde în continuare la întrebări despre wiki-ul tău intern de săptămâna trecută. Nu gândește despre compania ta — citește documentele tale și le rezumă.
Unde ML clasic încă câștigă
Nu orice problemă are nevoie de un transformer. Dacă prezici churn din date tabelate structurate — vârstă cont, frecvență utilizare, bilete suport — un model de copaci cu boost gradient ca XGBoost sau LightGBM de obicei va depăși o abordare pe bază LLM, va antrena în minute în loc de ore, și va costa o fracțiune pentru a rula. Apucă RandomForestClassifier din scikit-learn sau XGBoost înainte de a apuca un apel API, mai ales când datele tale se încadrează într-o foaie de calcul și variabila țintă este un număr curat sau o categorie.
Costul și latența sunt constrângeri de design, nu de gânduri târzii
Un apel de clasă GPT-4 costă bani reali pe token și ia secunde reale să se întoarcă. Dacă construiești o caracteristică care rulează la fiecare încărcare pagină pentru fiecare utilizator, asta se adună rapid și latența va fi vizibilă. Memorizează agresiv, utilizează un model mai mic ca GPT-4o-mini sau un Llama 3 8B local pentru orice care nu are nevoie de raționament de top nivel, și rezervă apelurile modelelor costisitoare pentru părțile conductei tale unde calitatea contează de fapt.
Modul de eșec pe care nimeni nu te avertizează
Modelele halucinez mai mult, nu mai puțin, când le ceri lucruri puțin în afara distribuției antrenării lor — versiuni obscure de bibliotecă, jargon intern de companie, numere recente de CVE. Dacă răspunsul trebuie să fie exact corect (o avertizare de securitate, o citare legală, o doză medicală), nu încrede singur generarea. Verifică împotriva unei surse primare de fiecare dată, și construiește acel pas de verificare în conducta ta în loc să te bazezi pe revizuire umană după fapte.
Instrumentele AI sunt de fapt utile odată ce încetezi să te aștepți ca ele să gândească și începi să le tratezi ca un potrivitor rapid de model pe care trebuie să-l verifici. Construiește pasul de verificare din ziua unu și vei obține valoare reală din el în loc de un flux de nonsens încrezător.
Dacă vrei să mergi mai departe, verifică pistele Python și Data Science ale Korra Studio pentru fundamentele care fac lucrul cu aceste instrumente de fapt productiv.
Scris cu asistență AI, revizuit și publicat de Michal Pilch (CISSP), Korra Studio.
Aceasta este o notă din baza de cunoștințe Korra Studio — platforma asociază fiecare subiect cu mentorat 1-la-1.
Început gratuitarrow_forward