Rečnik AI pojmova za sistem inženjere
Dokumentacija alata za pokretanje AI modela pretpostavlja da ti je terminologija poznata. Nije, i nema razloga da bude — reč je o oblasti koja je svoj rečnik gradila u istraživačkim radovima, pa ga onda prosula po README fajlovima.
Ovaj tekst je referenca na koju ćeš se vraćati kroz ceo serijal. Nije za čitanje u jednom dahu; prođi ga jednom da vidiš šta gde stoji, pa se vrati kada ti neki pojam zatreba. Ako još nisi pročitao šta je AI model, počni odatle, jer se ovde na taj tekst oslanjam.
Model i njegovi fajlovi
LLM (large language model, veliki jezički model) je opšti naziv za modele koji obrađuju i generišu tekst. Kada u ovom serijalu piše „model", misli se na LLM, osim ako nije izričito rečeno drugačije.
Parametri ili težine su brojevi koji čine model. Oznaka u nazivu govori koliko ih ima: 8B je osam milijardi, 27B dvadeset sedam milijardi.
MoE (mixture of experts) je arhitektura kod koje se za svaki token aktivira samo deo mreže. Zato ćeš viđati zapise poput 122B-A10B — model ima 122 milijarde parametara ukupno, ali po tokenu radi sa deset milijardi. Praktična posledica je važna: u memoriju mora da stane celina, a brzina odgovara aktivnom delu. MoE model je brz, ali i dalje gladan memorije.
Base i instruct su dve verzije istog modela. Base samo nastavlja tekst i za razgovor je neupotrebljiv. Instruct verzija je dodatno obučena da prati uputstva i vodi dijalog — to je ono što ti treba u devedeset devet odsto slučajeva. Prepoznaje se po nastavku u nazivu, tipa -Instruct ili -it.
| Format | Gde se sreće | Napomena |
|---|---|---|
| GGUF | llama.cpp, Ollama | Jedan fajl, ugrađen tokenizer, radi i na procesoru |
| safetensors | Hugging Face, vLLM | Standard za grafičke kartice, više fajlova u direktorijumu |
Kvantizacija je smanjivanje preciznosti brojeva radi manjeg zauzeća memorije. Oznake tipa Q4_K_M, Q8_0, AWQ i GPTQ govore o metodi i broju bitova. Pravilo palca: Q4_K_M je razuman podrazumevani izbor, ispod četiri bita kvalitet primetno pada. Detaljno u tekstu o kvantizaciji.
Sve tri stvari vidiš odjednom kada pitaš alat za detalje modela:
$ ollama show qwen3:8b
Model
architecture qwen3
parameters 8.2B
context length 40960
quantization Q4_K_M
Ulaz i izlaz
Token je komadić teksta, osnovna jedinica koju model obrađuje. Nije ni slovo ni reč, nego negde između. Za srpski računaj otprilike dva do tri znaka po tokenu, dakle više tokena nego što bi ista rečenica potrošila na engleskom.
Prompt je sve što šalješ modelu. Sistemski prompt je poseban deo prompta koji zadaje ulogu i pravila ponašanja i ide na početak, pre korisničke poruke.
Kontekst prozor je najveći broj tokena koje model može da drži istovremeno — sistemski prompt, ceo dosadašnji razgovor i odgovor koji tek nastaje. Kada se popuni, najstariji delovi ispadaju.
KV keš je međurezultat koji model čuva da ne bi ponovo računao ceo razgovor pri svakom novom tokenu. Živi u memoriji kartice i raste sa dužinom konteksta. To je razlog zašto postavka koja lepo radi na kratkim upitima pukne usred dugog razgovora, o čemu ima više u tekstu o proceni VRAM-a.
Prefill i decode su dve faze obrade. Prefill je čitanje celog prompta odjednom i ide brzo. Decode je generisanje odgovora, token po token, i tu se troši vreme. Zato dugačak ulaz manje košta od dugačkog izlaza.
Stop sekvenca je niz znakova na kome generisanje prestaje. max_tokens je tvrda granica dužine odgovora — ako ti se odgovori seku na pola rečenice, prvo proveri nju.
Parametri generisanja
Ove vrednosti šalješ uz svaki zahtev i njima podešavaš ponašanje modela bez ikakve izmene samog modela. Kako izgleda pun zahtev, razrađuje tekst o API-ju.
curl http://localhost:11434/v1/chat/completions -d '{
"model": "qwen3:8b",
"messages": [
{"role": "system", "content": "Ti si pomoćnik za Linux administraciju."},
{"role": "user", "content": "Kako da vidim zauzeće diska?"}
],
"temperature": 0.2,
"top_p": 0.9,
"max_tokens": 512
}'
| Parametar | Šta radi | Praktična vrednost |
|---|---|---|
| temperature | Koliko odstupa od najverovatnijeg tokena | 0–0.3 za komande i konfiguracije, 0.7–1.0 za tekst |
| top_p | Bira samo iz najverovatnijih tokena čiji zbir dostiže zadatu vrednost | 0.9, retko se dira |
| top_k | Ograničava izbor na k najverovatnijih tokena | 40, alternativa za top_p |
| repeat_penalty | Kažnjava ponavljanje istih tokena | 1.1 ako se model vrti u krug |
| seed | Fiksira slučajni izbor | Postavi kada ti treba ponovljiv rezultat |
Ako ti je cilj determinističan izlaz, temperatura na nuli je važnija od svega ostalog.
Hardver i performanse
Inferencija je pokretanje gotovog modela radi generisanja odgovora. To je ono što ti radiš na svom serveru.
VRAM je memorija grafičke kartice. Najčešće usko grlo cele priče.
Offloading je premeštanje dela slojeva modela u sistemsku memoriju kada ne staju u VRAM. Model tada radi, ali osetno sporije, jer podaci putuju preko PCIe magistrale. Poređenje jednog i drugog pristupa daje tekst o CPU i GPU inferenciji.
Tokeni u sekundi (t/s) je mera brzine generisanja i jedini broj kojim smisleno porediš dve postavke. Za razgovor je oko petnaest t/s granica udobnosti, jer je to otprilike brzina čitanja.
TTFT (time to first token) je koliko se čeka na prvi znak odgovora. Zavisi od dužine prompta, ne od dužine odgovora.
Batching je istovremena obrada više zahteva. Podiže ukupnu propusnost servera, ali svaki pojedinačni korisnik dobija odgovor nešto sporije. To je glavna razlika u pristupu između Ollame i vLLM-a, kojom se bavi tekst o vLLM-u. Merenje svega ovoga pokriva tekst o benchmarku.
Proširivanje mogućnosti
Model sam po sebi ne zna ništa o tvojoj firmi niti ima pristup bilo čemu. Postoje tri načina da se to promeni i redosled po ceni je jasan.
| Pristup | Šta radi | Cena i složenost |
|---|---|---|
| RAG | Pronalazi relevantne delove tvojih dokumenata i ubacuje ih u prompt | Niska, radi na postojećem modelu |
| Alati | Daje modelu funkcije koje može da pozove | Srednja, traži pisanje integracije |
| Fine-tuning | Menja same težine modela na tvojim podacima | Visoka, traži pripremljen skup podataka i hardver |
RAG (retrieval-augmented generation) je najčešće tačan odgovor kada neko kaže „hoću da model zna našu dokumentaciju". Detaljno u tekstu o RAG-u.
Embedding je numerički zapis značenja nekog teksta. Dva teksta sličnog značenja imaju bliske zapise, i to je mehanizam kojim RAG pronalazi šta je relevantno. Vektorska baza je baza koja te zapise čuva i brzo pretražuje po sličnosti.
Tool calling ili function calling je sposobnost modela da umesto teksta vrati zahtev za pozivom funkcije. Model i dalje ništa ne izvršava — samo kaže šta bi trebalo pozvati, a tvoj kod odlučuje hoće li to i uraditi. Ta granica je mesto na kome se odlučuje bezbednost celog sistema.
MCP (Model Context Protocol) je standard za povezivanje modela sa spoljnim alatima i izvorima podataka, obrađen u posebnom tekstu.
LoRA je jeftina varijanta fine-tuninga koja ne dira originalne težine nego dodaje mali sloj izmena. Više u tekstu o fine-tuningu.
Agent je model koji u petlji koristi alate dok ne završi zadatak. Zvuči moćno i jeste, ali svaki krug petlje je nova prilika za grešku, pa agentima na produkciji prilazi oprezno. Kompletan primer sklopljen od svih delova serijala nalazi se u završnom tekstu.
Rizici i licence
Halucinacija je uverljiv, ali netačan izlaz. Nije kvar nego očekivano ponašanje sistema koji predviđa verovatan tekst.
Prompt injection je napad u kome se instrukcija za model podmetne kroz podatke koje model obrađuje — u dokumentu, u log fajlu, na veb stranici. Ako model ima pristup alatima, ovo prestaje da bude teorijski problem. Tema teksta o bezbednosti.
Open-weight nije isto što i open source. Open-weight znači da su težine dostupne za preuzimanje; šta smeš da radiš s njima piše u licenci, i tu ima svega — od čiste MIT i Apache 2.0, do licenci koje ograničavaju komercijalnu upotrebu ili broj korisnika. Pročitaj licencu pre nego što model pustiš u firmu. Razlika je razrađena u tekstu o otvorenim i zatvorenim modelima, a konkretni modeli i njihove licence u pregledu aktuelnih modela.
Praktični scenariji
Scenario 1: greška o dužini konteksta
Error: this model's maximum context length is 8192 tokens, however you requested 9317 tokens
Zahtev je veći od kontekst prozora. Ili skrati razgovor i priložene fajlove, ili pokreni model sa većim prozorom — ako imaš memorije za veći KV keš.
Scenario 2: model ponavlja istu rečenicu
Podigni repeat_penalty na 1.1. Ako se nastavi, proveri koristiš li base umesto instruct verzije modela.
Scenario 3: isti upit daje različite odgovore, a treba ti ponovljivost
Postavi temperature na 0 i fiksiraj seed. Bez toga se svaki poziv oslanja na slučajan izbor.
Scenario 4: model radi, ali užasno sporo
Verovatno deo slojeva radi na procesoru. Proveri koliko je stvarno završilo na kartici i uporedi veličinu modela sa slobodnim VRAM-om — kako se to čita iz nvidia-smi, pokazuje poseban tekst.
Kratka referenca
- LLM — veliki jezički model
- Parametri — brojevi koji čine model, oznaka 8B, 27B
- MoE — arhitektura sa delimično aktivnom mrežom
- Instruct — verzija modela obučena za praćenje uputstava
- GGUF / safetensors — formati fajlova modela
- Kvantizacija — smanjenje preciznosti radi manjeg zauzeća
- Token — osnovna jedinica teksta
- Kontekst prozor — najveći broj tokena u obradi istovremeno
- KV keš — međurezultat u memoriji, raste sa kontekstom
- Prefill / decode — čitanje prompta i generisanje odgovora
- temperature — odstupanje od najverovatnijeg izbora
- top_p / top_k — sužavanje skupa mogućih tokena
- seed — fiksiranje slučajnog izbora
- VRAM — memorija grafičke kartice
- Offloading — premeštanje slojeva u sistemsku memoriju
- t/s — tokeni u sekundi, mera brzine
- TTFT — vreme do prvog tokena
- Batching — paralelna obrada više zahteva
- RAG — dopuna prompta pronađenim dokumentima
- Embedding — numerički zapis značenja teksta
- Tool calling — model traži poziv funkcije, kod odlučuje
- MCP — standard za povezivanje sa alatima
- LoRA — jeftina varijanta fine-tuninga
- Halucinacija — uverljiv netačan izlaz
- Prompt injection — instrukcija podmetnuta kroz podatke
- Open-weight — dostupne težine, licenca je zasebno pitanje
Vežba
- Za model označen kao
122B-A10Bobjasni koliko parametara mora da stane u memoriju, a koliko ih učestvuje u obradi jednog tokena. - Napiši curl zahtev koji traži determinističan odgovor ograničen na 256 tokena.
- Objasni zašto dugačak ulazni dokument manje utiče na vreme odgovora nego dugačak izlaz.
- Za zahtev „model treba da odgovara na pitanja o našoj internoj proceduri" odluči da li ide RAG ili fine-tuning i obrazloži.
- Zamisli da model čita sistemske logove i ima alat za restart servisa. Opiši kako bi izgledao prompt injection napad i gde bi postavio proveru.
Sledeći tekst u serijalu: Otvoreni i zatvoreni modeli — šta možeš da hostuješ na svom serveru
Povezano:
- AI na Linux serveru — pregled celog serijala
- Šta je AI model — prethodni tekst
- Linux osnove — komande koje su preduslov za dalje tekstove
Comments
Post a Comment