Home AIRAG (Retrieval-Augmented Generation) i optimizacija: Kako da sprečite AI da „halucinira“ podatke o vašoj firmi

RAG (Retrieval-Augmented Generation) i optimizacija: Kako da sprečite AI da „halucinira“ podatke o vašoj firmi

AI ne laže namerno – ali halucinira sistematski. I jedini lek je sadržaj koji mu ne daje prostor za izmišljanje.

od itn
rag optimizacija

– Šta je RAG (Retrieval-Augmented Generation – generisanje pojačano pretraživanjem) i zašto je nastao kao direktan odgovor na problem AI halucinacija
– Kako AI model „odlučuje“ šta je istina o vašoj firmi i zašto loše strukturiran sadržaj direktno uzrokuje netačne odgovore
– Koje su konkretne tehnike strukturiranja sadržaja – semantički HTML, JSON-LD schema markup, llms.txt i čiste Markdown stranice – koje minimizuju šansu da AI izmisli vaše cene, usluge ili kontakt podatke
– Kako izgleda „lanac halucinacije“ od lošeg izvora do lažnog AI odgovora, sa primerima iz prakse
– Šta je „source of truth“ (izvor istine) arhitektura i kako je implementirati na vašem sajtu danas
– Napredne RAG tehnike: chunking (segmentiranje), embedding (ugrađivanje), re-ranking i hibridna pretraga
– Šta nas čeka u budućnosti: kako se standardi menjaju i šta znači „verified AI feed“ za vaš biznis

AI zna za vašu firmu. Samo nije siguran šta tačno zna

Pretpostavite da potencijalni klijent upita ChatGPT: „Koliko košta web dizajn agencija X iz Beograda?“ Model odgovara pouzdanim tonom: „Agencija X nudi pakete od 500 do 2.000 evra, sa rokom isporuke od 2-4 nedelje.“ Problem: vaša agencija nema te cene nigde objavljene, rok isporuke je varijabilan i zavisi od projekta, a poslednji put kada je neko istraživao vaš sajt, on je bio na adaptaciji i nije imao ni jednu ažuriranu stranicu usluga.

AI je ove podatke negde „pročitao“. Ili ih je izmislio. Ili – što je najčešći i najopasniji slučaj – kombinovao nepotpune, zastarele i kontekstualno pogrešne podatke sa različitih lokacija i sintetizovao ih u odgovor koji zvuči razumno ali je faktički pogrešan.

Ovo je halucinacija (hallucination). I nije greška u radu AI sistema. To je direktna posledica načina na koji ste strukturirali – ili niste strukturirali – sadržaj na vašem sajtu.

Dobrа vest je da je problem rešiv. Loša vest je da većina kompanija, agencija i developera o tome ne razmišlja sve dok ne dođe do konkretne štete: klijent koji dolazi sa pogrešnim očekivanjima, partner koji je pročitao netačnu informaciju u AI odgovoru, ili – u ozbiljnijim industrijama poput medicine i prava – situacija koja može imati pravne posledice.

Prema istraživanju koje je AllAboutAI pratio od 2021. do 2025. godine, stopa halucinacija AI modela pala je sa 21,8% u 2021. na 0,7% kod najboljeg modela u 2025. godini. RAG tehnika sama po sebi smanjuje halucinacije za čak 71% kada se koristi pravilno. Ali ključna reč je „pravilno“ – i upravo tu leži problem koji ovaj tekst pokušava da razreši.

Hajde da krenemo od osnova i dođemo do praktičnih rešenja koja možete implementirati danas.

rag optimizacijaŠta je halucinacija i zašto se dešava?

Pre nego što razgovaramo o rešenjima, moramo razumeti problem u njegovoj tehničkoj suštini. Jer ako mislite da AI „laže“ ili da je „pokvaren“ kada daje netačne informacije, nećete razumeti ni zašto su vaša rešenja efikasna.

Kako LLM „zna“ nešto

Veliki jezički modeli (Large Language Models – LLM) poput GPT-4o, Claude 3.7 ili Gemini 2.0 su trenirani na ogromnim količinama teksta sa interneta, knjiga, naučnih radova i raznih digitalnih izvora. Tokom treninga, model ne „pamti“ činjenice na način na koji čovek pamti. Umesto toga, uči statističke obrasce između reči, rečenica i koncepata.

Kada model dobije upit „Koliko košta web dizajn?“, on ne pretražuje bazu podataka sa tačnim odgovorima. On generiše odgovor koji je statistički najvererovatniji nastavak tog upita, baziran na svemu što je „vidео“ tokom treninga. Ako je na hiljade web stranica pisalo da web dizajn košta između 500 i 5.000 evra, model će generisati odgovor u tom opsegu – čak i ako vaša konkretna firma ima potpuno drugačiju cenovnu strukturu.

Tri izvora halucinacija relevantnih za vaš sajt

Izvor 1: Zastareli podaci u training setu (skupu za treniranje)
GPT-4o ima knowledge cutoff (granicu znanja) od aprila 2024. Claude 3.7 od ranog 2025. Svaki model koji daje informacije o vašoj firmi radi sa podacima koji mogu biti mesecima ili godinama stari. Ako ste promenili cene, usluge, adresu ili kontakt, model to možda ne zna.

Izvor 2: Konfabularacija iz sličnih izvora
Ako je vaš sajt slabo strukturiran ili nema eksplicitnih faktualnih izjava, model popunjava praznine informacijama sa sličnih sajtova. Radite web dizajn? Model uzima prosečne cene svih web dizajn agencija koje je video. Imate softversku firmu? Uzima prosečne karakteristike sličnih firmi.

Izvor 3: Sukobi između izvora
Ako na vašem sajtu piše jedna cena, na review platformi (Clutch, Google Reviews, Trustpilot) stoji zastarela cena, a na LinkedIn opisu firme nema ničega o cenama – model dobija konfliktne signale i „izmiruje“ ih na način koji ne mora biti tačan.

Zašto je ovo posebno problematično za firme

Halucinacije nisu jednako opasne za sve tipove sadržaja. Ako model pogreši u odgovoru na filozofsko pitanje, posledice su minimalne. Ako pogreši o vašoj firmi, posledice su:

  • Klijenti dolaze sa pogrešnim cenovnim očekivanjima

  • Partneri donose odluke na osnovu netačnih podataka o vašim kapacitetima

  • Recruiteri i kandidati imaju pogrešnu sliku o vašoj veličini i kulturi

  • U regulisanim industrijama (medicina, pravo, finansije), netačni AI odgovori mogu imati pravne posledice

Search Engine Land je dokumentovao da su najčešći uzroci AI halucinacija o brendovima upravo odsustvo strukturiranih podataka i slaba entity linking (povezivanje entiteta) između zvaničnih profila firme. To su problemi koje vi, kao developer ili vlasnik sajta, možete direktno rešiti.

rag optimizacijaRAG – zašto je nastao i kako funkcioniše

RAG (Retrieval-Augmented Generation – generisanje pojačano pretraživanjem) nije nova ideja. Formalno je predložen u istraživačkom radu Facebookovog (sada Meta) AI tima 2020. godine, ali je masovnu primenu dobio tek 2023-2024, kada su enterprise kompanije počele da shvataju da čisti LLM bez spoljašnjih izvora podataka nije dovoljno pouzdan za poslovne primene.

Osnovna arhitektura RAG sistema

RAG funkcioniše u tri faze koje se izvršavaju za svaki upit:

Faza 1: Retrieval (pretraživanje)
Kada korisnik postavi pitanje, sistem pre nego što pita LLM pretraži eksternu bazu znanja – koja može biti vaša dokumentacija, vaše web stranice, vaša interna baza podataka – i pronađe delove teksta koji su relevantni za pitanje. Ovo pretraživanje koristi vector similarity (vektorsku sličnost) – tehnika koja poredi semantičku bliskost upita i dostupnih dokumenata, a ne samo ključne reči.

Faza 2: Augmentation (pojačavanje)
Pronađeni relevantni delovi teksta se dodaju u prompt (upit) koji se šalje LLM-u. Umesto da model samo dobije „Koliko košta vaša usluga dizajna?“, dobija i kontekst: „[Izvučeni tekst sa sajta: ‘Naši paketi web dizajna počinju od 1.200 evra za osnovni sajt…’] Na osnovu ovog konteksta, odgovori na pitanje.“

Faza 3: Generation (generisanje)
LLM generiše odgovor koristeći i sopstveno znanje i priloženi kontekst. Ključno: kada postoji konkretan kontekstualni dokument, model ga preferira nad sopstvenim „sećanjem“. Ako je dokument jasan i nedvosmislen, halucinacija je drastično manje verovatna.

Upravo ovde leži vaša moć kao vlasnika sajta: vi kontrolišete dokumente koji ulaze u RAG sistem. Vi birate šta će biti „preuzeto“ i priloženo modelu kao kontekst. I vi kontrolišete da li su ti dokumenti jasni, precizni i mašinski čitljivi – ili su zatrpani JavaScriptom, navigacionim menijima i reklamnim blokovima.

Zašto RAG smanjuje halucinacije za 71%?

Prema istraživanju AllAboutAI, RAG smanjuje halucinacije za 71% u poređenju sa čistim LLM odgovorima bez konteksta. Zašto toliko?

Jer model više ne mora da „izmišlja“ – ima tačan izvor pred sobom. Analogija: zamislite razliku između odgovora studenta koji piše esej iz sećanja i studenta koji piše uz otvorenu knjigu ispred sebe. Isti student, isti kapacitet za razumevanje – ali drastično različita tačnost.

Međutim – i ovo je kritičan detalj koji se često preskače – RAG smanjuje halucinacije samo ako su dokumenti koji se preuzimaju kvalitetni. Ako je „otvorena knjiga“ zastarela, nepotpuna ili kontradiktorna, student koji piše uz nju neće biti tačniji od onog koji piše iz sećanja.

Vaš sajt je ta „otvorena knjiga“. Hajde da razgovaramo o tome kako da je napišete.

rag optimizacijaKako AI „čita“ vaš sajt i gde nastaju problemi

Da biste razumeli kako da strukturirate sadržaj, morate razumeti kako RAG sistem – ili direktni AI crawler – uzima sadržaj sa vašeg sajta.

Korak 1: Crawling (prikupljanje)

AI crawler posećuje URL vašeg sajta i preuzima HTML dokument. Tipičan HTML dokument moderne web stranice sadrži:

  • Navigacioni meni (50-200 linkova)

  • Header sa logom, pretragom, jezičkim opcijama

  • Reklame i promotional banneri

  • Sidebar sa widgetima, najnovijim postovima, tagovima

  • Stvarni sadržaj stranice (10-30% ukupnog HTML-a)

  • Footer sa stotinama linkova, pravnim napomenama, verzijom sajta

Crawler uzima sve ovo zajedno.

Korak 2: Chunking (segmentiranje)

Pre nego što tekst uđe u RAG bazu znanja, mora biti podeljen na chunks (segmente) – manje delove teksta koji se mogu pretraživati i prilagati kao kontekst. Ovo je proces koji ima ogromne posledice za kvalitet odgovora.

Loš chunking: sistem podeli HTML stranice na fiksne delove od 512 tokena. Jedan chunk završava usred rečenice, drugi počinje iz sredine tabele sa cenama. Kontekst se gubi. Model dobija fragmente koji ne daju potpunu sliku.

Dobar chunking: sistem razume semantičku strukturu dokumenta i podeli ga na logičke celine – pasus o cenama ostaje zajedno, sekcija o uslugama je celovita, FAQ pitanje i odgovor su u istom chunku.

Semantički HTML direktno utiče na kvalitet chunking-a. Dokument koji koristi <article><section><h2><p> daje jasne signale o granicama logičkih celina. Dokument koji je 90% <div> tagova bez semantičkog značenja – ne daje nikakve signale.

Korak 3: Embedding (vektorsko ugrađivanje)

Svaki chunk se pretvara u vektor – matematičku reprezentaciju semantičkog značenja teksta. Kada korisnik postavi pitanje, i pitanje se pretvara u vektor, i sistem traži chunks čiji su vektori najbliži vektoru pitanja.

Chunk koji kaže „Naši web dizajn paketi počinju od 1.200€ i uključuju responzivni dizajn, SEO optimizaciju i 3 revizije“ imaće visoku sličnost sa pitanjem „Koliko košta web dizajn?“ i biće preuzet kao kontekst.

Chunk koji kaže „Web dizajn je proces kreiranja vizuelnog identiteta…“ imaće nižu sličnost i možda neće biti preuzet – čak i ako je na istoj stranici kao i onaj sa cenama.

Ovo znači da je konkretnost i eksplicitnost podataka na vašem sajtu direktno povezana sa tim da li će AI sistem naći pravi odgovor.

Korak 4: Generation sa kontekstom

Model dobija pitanje + preuzete chunks + sistemske instrukcije. Ako su chunks relevantni i jasni, odgovor je tačan. Ako su chunks zastareli, fragmentovani ili protivrečni, model ili halucinira ili daje delimično tačan odgovor.

Prema Shelf.io analizi, princip „garbage in, garbage out“ (smeće ulazi, smeće izlazi) važi za RAG jednako kao i za klasične baze podataka. Loš izvor podataka garantuje loš AI odgovor, bez obzira na to koliko je model sam po sebi sofisticiran.

rag optimizacijaSemantički HTML kao osnova mašinskog razumevanja

Počnimo od osnove: HTML koji pišete (ili generišete kroz CMS) direktno utiče na to koliko tačno AI razume vaš sadržaj.

Zašto semantički HTML nije samo „dobar kod“

Semantički HTML znači koristiti HTML elemente prema njihovom namenjenom značenju, a ne samo za vizuelno formatiranje. Za čoveka koji gleda ekran, <div class="naslov"> i <h1> izgledaju isto ako im primenimo isti CSS. Za mašinu – potpuno su različiti signali.

<h1> govori: „Ovo je naslov najviseg nivoa na stranici. Ovo je tema.“
<div class="naslov"> govori: Ništa semantičko. To je samo kontejner sa klasom.

Za RAG sistem koji pokušava da razume strukturu dokumenta, razlika je ogromna. <h1><h2><h3> definišu hijerarhiju informacija. <article> označava samostalnu sadržajnu celinu. <main> označava primarni sadržaj stranice (sve van navigacije i footera). <aside> označava sporedni sadržaj koji nije deo glavnog toka.

Konkretan primer: stranica usluga

Loša implementacija:

xml
<div class="content-wrapper">
<div class="service-box">
<div class="service-title">Web dizajn</div>
<div class="service-desc">
Pravimo moderne sajtove za vaš biznis.
</div>
<div class="price">Od 1.200€</div>
</div>
<div class="service-box">
<div class="service-title">SEO optimizacija</div>
<div class="service-desc">
Poboljšavamo vaše rangiranje na Googleu.
</div>
<div class="price">Od 300€/mesečno</div>
</div>
</div>

Za RAG sistem, ovo je samo niz <div> elemenata. Koji je naslov? Šta je opis? Koja je cena? Sistem mora da „pogadi“ na osnovu CSS klasa – a CSS klase su za njega nevidljive.

Dobra implementacija:

xml
<main>
<section aria-labelledby="services-heading">
<h2 id="services-heading">Naše usluge i cenovnik</h2>
<article>
<h3>Web dizajn</h3>
<p>Pravimo moderne, responzivne sajtove optimizovane za pretraživače
i AI sisteme. Svaki projekat uključuje 3 revizije dizajna.</p>
<p><strong>Cena:</strong> od 1.200€ za osnovni sajt,
od 2.500€ za e-commerce platformu.</p>
<p><strong>Rok isporuke:</strong> 4-6 nedelja.</p>
</article><article>
<h3>SEO optimizacija</h3>
<p>Tehnička i on-page SEO optimizacija, kreiranje sadržaja
i link building za srpsko i regionalno tržište.</p>
<p><strong>Cena:</strong> od 300€ mesečno za standardni paket.</p>
</article>
</section>
</main>

Ovaj kod govori RAG sistemu jasno: postoji sekcija o uslugama (<section>), svaka usluga je posebna celina (<article>), svaka ima naslov (<h3>), opis (<p>) i cenu (eksplicitno označenu sa <strong>Cena:</strong>).

Rezultat: kada AI odgovara na pitanje o vašim cenama, preuzima pravi chunk, i odgovor je tačan.

HTML elementi koji najviše pomažu mašinskom razumevanju

Strukturalni elementi:

  • <main> – primarni sadržaj (koristite jednom po stranici)

  • <article> – samostalna sadržajna celina

  • <section> – tematska grupa sadržaja (sa aria-labelledby)

  • <header> / <footer> – za header/footer članka, ne samo sajta

  • <nav> – navigacioni elementi (AI ih ignoriše kao ne-sadržaj)

  • <aside> – sporedni sadržaj (AI mu daje manji prioritet)

Tekstualni elementi:

  • <h1> – <h6> – hijerarhija naslova (koristite linearno, ne preskačite nivoe)

  • <p> – paragraf (osnovna jedinica teksta)

  • <strong> – semantički naglašen tekst (ključne reči, nazivi, cene)

  • <em> – semantički istaknut tekst

  • <time datetime="2026-03-12">12. marta 2026.</time> – datumi u standardnom formatu

  • <address> – kontakt informacije

Listovni elementi:

  • <ul> / <ol> / <li> – liste sa jasnom semantičkom strukturom

  • <dl> / <dt> / <dd> – definition lists (savršeno za FAQ parove)

  • <table> sa <thead><tbody><th scope> – strukturirane tabele

Microdata i ARIA atributi koji pomažu

Pored osnovnih HTML elemenata, postoje atributi koji dodatno pojačavaju semantiku:

xml
<!-- Označavanje FAQ sekcije koja odgovara schema markup-u -->
<section id="faq" aria-labelledby="faq-heading">
<h2 id="faq-heading">Česta pitanja</h2>
<details>
<summary>Koliko košta izrada web sajta?</summary>
<p>Cene web dizajna kreću se od 1.200€ za osnovni korporativni sajt
do 5.000€+ za kompleksne e-commerce platforme.</p>
</details>
</section>

<details> i <summary> su posebno moćan par jer semantički definišu Q&A strukturu – pitanje je u <summary>, odgovor u <p> unutar <details>. RAG sistem to može direktno mapirati na FAQ pattern.

AI i sajtoviJSON-LD schema markup – vaša „izjava istine“ za AI sisteme

Semantički HTML pomaže, ali nije dovoljno. Za kritične podatke o vašoj firmi – ime, adresa, cene, usluge, osoblje – potreban vam je eksplicitni mašinski čitljiv format koji ne ostavlja prostor za interpretaciju.

Tu dolazi JSON-LD schema markup – strukturirani podaci u standardizovanom formatu koji direktno govori AI sistemima: „Ovo je tačna, zvanična informacija o ovoj firmi.“

Zašto je JSON-LD „source of truth“ za AI

Prema analizi LSEO.com iz marta 2026., strukturirani podaci funkcionišu kao „truth file“ (fajl istine) – eksplicitna izjava koja AI crawlerima govori da je određena informacija zvanična i potvrđena. Kada model vidi JSON-LD koji kaže "priceRange": "1200-5000 EUR", on ima mnogo manje razloga da izmišlja cene od modela koji pokušava da izvuče cenu iz narativnog teksta.

Lovedby.ai je ovo formulisao precizno: „Kada postavite 'price': '50.00 EUR' unutar offers schema, to funkcioniše kao zaštitna ograda koja sprečava AI da izmišlja činjenice o vašem biznisu.“

Osnovni Organization schema

Ovo je minimum koji svaki sajt mora imati. Stavlja jasne, mašinski čitljive podatke o firmi:

json
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vas-sajt.com/#organization",
"name": "Puno ime firme d.o.o.",
"alternateName": "Kratki naziv",
"url": "https://vas-sajt.com",
"logo": {
"@type": "ImageObject",
"url": "https://vas-sajt.com/logo.png"
},
"description": "Jedna do dve rečenice koje precizno opisuju čime se firma bavi, bez marketinškog žargona.",
"foundingDate": "2019",
"numberOfEmployees": {
"@type": "QuantitativeValue",
"value": 12
},
"address": {
"@type": "PostalAddress",
"streetAddress": "Ulica bb",
"addressLocality": "Beograd",
"addressRegion": "Srbija",
"postalCode": "11000",
"addressCountry": "RS"
},
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+381-11-000-0000",
"contactType": "customer service",
"availableLanguage": ["Serbian", "English"],
"hoursAvailable": {
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
"opens": "09:00",
"closes": "17:00"
}
},
"sameAs": [
"https://www.linkedin.com/company/naziv-firme/",
"https://www.facebook.com/naziv-firme/",
"https://twitter.com/naziv-firme"
]
}
</script>

sameAs polje je posebno važno. Search Engine Land naglašava da entity linking između zvaničnih profila (LinkedIn, Crunchbase, Wikidata) direktno smanjuje šansu da AI poveže vaš brend sa pogrešnim entitetom ili izmisli podatke. Uključite sve zvanične profile.

Service schema – eksplicitne usluge i cene

Ovo je schema koja direktno adresira problem „izmišljenih cena“. Svaka usluga treba sopstveni schema blok:

json
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Service",
"@id": "https://vas-sajt.com/usluge/web-dizajn/#service",
"name": "Izrada web sajta",
"description": "Dizajn i razvoj korporativnih web sajtova optimizovanih za pretraživače. Uključuje: responzivni dizajn, on-page SEO, CMS integraciju i 3 revizije.",
"provider": {
"@id": "https://vas-sajt.com/#organization"
},
"areaServed": {
"@type": "Country",
"name": "Srbija"
},
"serviceType": "Web development",
"offers": {
"@type": "Offer",
"priceCurrency": "EUR",
"priceRange": "1200-5000",
"price": "1200",
"eligibleRegion": {
"@type": "Country",
"name": "RS"
},
"availability": "https://schema.org/InStock",
"validFrom": "2026-01-01",
"validThrough": "2026-12-31"
},
"termsOfService": "https://vas-sajt.com/uslovi-koriscenja/",
"hasOfferCatalog": {
"@type": "OfferCatalog",
"name": "Paketi web dizajna",
"itemListElement": [
{
"@type": "Offer",
"name": "Osnovni paket",
"description": "5 stranica, responzivni dizajn, kontakt forma, on-page SEO",
"price": "1200",
"priceCurrency": "EUR"
},
{
"@type": "Offer",
"name": "Business paket",
"description": "Do 15 stranica, blog, napredni SEO, Google Analytics integracija",
"price": "2500",
"priceCurrency": "EUR"
}
]
}
}
</script>

validFrom i validThrough polja su posebno vredna: govore AI sistemu da su ovi podaci vremenski ograničeni. Kada ova validacija istekne, model dobija signal da treba tražiti ažurirane informacije umesto da se oslanja na stare podatke.

Product schema za e-commerce

Ako imate online prodavnicu, Product schema je obaveza za sprečavanje halucinacija o cenama i dostupnosti:

json
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vas-sajt.com/proizvodi/laptop-model-x/#product",
"name": "Laptop Model X Pro",
"description": "Poslovni laptop sa 16GB RAM, 512GB SSD, Intel Core i7, Windows 11 Pro.",
"brand": {
"@type": "Brand",
"name": "Naziv brenda"
},
"sku": "LMX-PRO-2026",
"offers": {
"@type": "Offer",
"url": "https://vas-sajt.com/proizvodi/laptop-model-x/",
"priceCurrency": "RSD",
"price": "159990",
"priceValidUntil": "2026-06-30",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {
"@id": "https://vas-sajt.com/#organization"
}
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "23"
}
}

priceValidUntil je ključan. Ako AI sistem vidi da je cena validna do određenog datuma, a datum je prošao, ima signal da treba tražiti ažurirane informacije – umesto da da zastarelu cenu kao aktuelnu.

FAQ schema kao direktno „punjenje“ RAG baze znanja

FAQ schema je posebno moćna jer direktno formatira sadržaj u Q&A paru – što je upravo format koji RAG sistemi preferiraju za kontekstualno preuzimanje. Svaki par pitanje-odgovor je savršen chunk:

json
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Koliko košta izrada web sajta?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Cene izrade web sajta u našoj agenciji kreću se od 1.200€ za osnovi korporativni sajt do 5.000€ za kompleksnu e-commerce platformu. Cena zavisi od broja stranica, funkcionalnosti i roku isporuke. Kontaktirajte nas za besplatnu procenu projekta."
}
},
{
"@type": "Question",
"name": "Koliko traje izrada web sajta?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Standardni korporativni sajt isporučujemo za 4-6 nedelja od potpisivanja ugovora. E-commerce platforme obično zahtevaju 8-12 nedelja. Ekspresna isporuka za 2-3 nedelje moguća je uz dogovor i dostupnost kapaciteta."
}
},
{
"@type": "Question",
"name": "Da li radite sa klijentima van Srbije?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Da, radimo sa klijentima iz celog regiona – Srbija, Bosna i Hercegovina, Hrvatska, Crna Gora i Slovenija. Sva komunikacija i ugovori mogu biti na srpskom ili engleskom jeziku. Plaćanje je moguće u EUR ili RSD."
}
}
]
}

Kritično pravilo: FAQ koja je u schema markup-u mora biti vidljiva i na stranici. Google i AI sistemi kažnjavaju nevidljivi schema sadržaj. Što znači: ako imate FAQ schema, imate i vidljivu FAQ sekciju na stranici.

AI i sajtovillms.txt – direktna komunikacija sa AI crawlerima

Detaljno smo obradili llms.txt standard u prethodnom tekstu na ITNetwork.rs, ali u kontekstu prevencije halucinacija on ima posebnu ulogu koju vredi istaći.

llms.txt nije samo mapa sajta za AI – on je i izjava o autoritetu i relevantnosti. Kada AI sistem preuzima sadržaj vašeg sajta za RAG, llms.txt mu govori koje stranice su pouzdane, ažurirane i relevantne. Ako vaš sajt ima 200 URL-ova i llms.txt eksplicitno navodi 20 najvažnijih sa opisima, RAG sistem ima mnogo manji prostor za grešku.

llms.txt za prevenciju halucinacija – specijalne prakse

Uključite „Ground truth“ sekciju:

text

# Naziv firme d.o.o.

> Opis firme.

## Tačne i ažurirane informacije o firmi

NAPOMENA: Sledeće stranice sadrže zvanične, ažurirane podatke
o cenama, uslugama i kontakt informacijama. Ovi podaci su
poslednji put ažurirani: 2026-03-12.

– [Cenovnik usluga](https://vas-sajt.com/cenovnik/):
Zvanične i trenutno važeće cene svih usluga
– [Naše usluge](https://vas-sajt.com/usluge/):
Kompletan opis svake usluge sa paketima
– [O nama](https://vas-sajt.com/o-nama/):
Tačne informacije o veličini tima, godištu osnivanja i delatnosti

Eksplicitno označite zastareli sadržaj:

text

## Optional – Arhivski sadržaj (možda zastareo)

– [Blog post iz 2023](https://vas-sajt.com/blog/cenovnik-2023/):
UPOZORENJE: Ovaj tekst sadrži zastarele cene iz 2023. godine.
Za aktuelne cene pogledajte /cenovnik/

Ova vrsta eksplicitnog „upozorenja“ u llms.txt fajlu direktno komunicira RAG sistemima da ne koriste stare podatke kao autoritativni izvor.

Više o implementaciji llms.txt fajla korak po korak pročitajte u tekstu Zaboravite na robots.txt – stigao je llms.txt.

AI i sajtoviMarkdown verzije stranica – čist feed za RAG sisteme

Pored llms.txt, jedan od najefikasnijih načina da direktno hraniте RAG sisteme tačnim podacima jeste Markdown verzija vaših ključnih stranica.

Zašto Markdown eliminiše halucinacije uzrokovane „šumom“

Razmislite o tipičnoj stranici sa cenama na modernom WordPress sajtu. HTML verzija ima:

  • Header sa 40 navigacionih linkova

  • Hero sekciju sa marketinškim sloganom

  • Animated slider sa generalnim pričama

  • Cenovnik (stvarni sadržaj)

  • 3 testimonial widget-a

  • Footer sa 60 linkova

Kada RAG sistem uzme ovaj HTML i podeli ga na chunks, stvarni cenovnik je jedan mali deo između ogromnih količina navigacionog i dekorativnog sadržaja. Chunk koji sadrži cenu može biti iskidan sa obe strane nebitnim tekstom.

Markdown verzija iste stranice:

text

# Cenovnik web dizajn usluga

## Paket Starter – 1.200€

Namenjeno malim firmama i preduzetnicima.

Uključuje:
– 5 stranica (Početna, O nama, Usluge, Blog, Kontakt)
– Responzivni dizajn (mobilni, tablet, desktop)
– Kontakt forma
– Osnovna on-page SEO optimizacija
– Google Analytics integracija
– Rok isporuke: 4 nedelje

## Paket Business – 2.500€

Namenjeno rastućim kompanijama sa potrebom za blog platformom.

Uključuje:
– Do 15 stranica
– WordPress blog sa kategorijama i tagovima
– Napredna SEO optimizacija
– WooCommerce integracija (osnovna)
– Rok isporuke: 6 nedelja

## Paket Enterprise – od 5.000€

Za kompleksne projekte po meri.

Cena se određuje na osnovu opsega projekta.
Kontakt: office@vas-sajt.com | +381 11 000 000

*Poslednje ažuriranje: 12. mart 2026.*

Isti sadržaj, nula šuma, savršena chunk struktura. RAG sistem koji preuzme ovaj fajl dobija čist, nedvosmislen tekst o cenama – bez navigacije, bez reklama, bez dekorativnih elemenata.

Implementacija na WordPressu

Na WordPressu možete kreirati Markdown verzije automatski ili ručno:

Opcija 1 – Ručno za ključne stranice:
Kreirajte statičke .md fajlove i uploadujte ih na server. Imenujte ih po konvenciji ime-stranice.html.md ili koristite poseban direktorijum /md/cenovnik.md.

Opcija 2 – Plugin za automatsko generisanje:
Postoje plugin-ovi koji automatski generišu .md verzije svih postova, ali kvalitet automatskog generisanja varira. Za stranice sa kritičnim podacima (cene, kontakti, usluge), preporučuje se ručna izrada.

Opcija 3 – Custom endpoint u functions.php:

php
add_action('init', function() {
if (preg_match('/\.md$/', $_SERVER['REQUEST_URI'])) {
$slug = rtrim(str_replace('.md', '',
parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)), '/');
$post = get_page_by_path(ltrim($slug, '/'));
if ($post) {
header(‘Content-Type: text/markdown; charset=utf-8’);
// Uzimamo čist tekst bez HTML tagova
$content = wp_strip_all_tags($post->post_content);
$title = $post->post_title;
echo „# {$title}\n\n“;
echo „*Poslednje ažuriranje: „ .
get_the_modified_date(‘d. F Y.’, $post) . „*\n\n“;
echo $content;
exit;
}
}
});

AI i sajtoviBrand fact sheet – napredna tehnika za eliminisanje halucinacija

Ovo je tehnika koju preporučuje Search Engine Land u svojoj analizi, a malo ko je koristi: kreiranje posebnog JSON-LD Dataset fajla koji služi isključivo kao mašinski čitljiva „izjava o faktima“ o vašoj firmi.

Kako izgleda brand fact sheet

json
{
"@context": "https://schema.org",
"@type": "Dataset",
"@id": "https://vas-sajt.com/brand-facts.json",
"name": "Naziv Firme – Verifikovani podaci",
"description": "Mašinski čitljivi verifikovani podaci o firmi, namenjeni AI sistemima",
"creator": {
"@id": "https://vas-sajt.com/#organization"
},
"dateModified": "2026-03-12",
"isAccessibleForFree": true,
"distribution": {
"@type": "DataDownload",
"contentUrl": "https://vas-sajt.com/brand-facts.json",
"encodingFormat": "application/ld+json"
},
"about": {
"@type": "Organization",
"@id": "https://vas-sajt.com/#organization",
"name": "Naziv Firme d.o.o.",
"alternateName": ["Kratki naziv", "Engleski naziv ako postoji"],
"foundingDate": "2019-01-15",
"numberOfEmployees": {"@type": "QuantitativeValue", "value": 12},
"areaServed": "Srbija, region Zapadnog Balkana",
"serviceArea": {
"@type": "GeoCircle",
"geoMidpoint": {"@type": "GeoCoordinates",
"latitude": 44.8176, "longitude": 20.4569},
"geoRadius": "500 km"
},
"knowsAbout": ["Web razvoj", "SEO optimizacija", "Digitalni marketing"],
"hasCredential": [
{"@type": "EducationalOccupationalCredential",
"name": "Google Partner sertifikat",
"url": "https://vas-sajt.com/sertifikati/"}
],
"sameAs": [
"https://www.linkedin.com/company/naziv/",
"https://www.facebook.com/naziv/",
"https://www.crunchbase.com/organization/naziv"
]
}
}

Ovaj fajl linkujte iz <head> stranice, iz sitemap.xml i iz llms.txt fajla. Tri putanje ka istom autoritativnom izvoru daju AI sistemima snažan signal da je ovaj dokument pouzdani izvor istine o vašoj firmi.

rag optimizacijaNapredne RAG tehnike za developere koji grade sopstvene sisteme

Do sada smo govorili o optimizaciji vašeg sajta kao izvora podataka za tuđe RAG sisteme (ChatGPT, Perplexity, Google AI Overviews). Ali šta ako gradite sopstveni RAG sistem – chatbot za korisnike, interni AI asistent, ili knowledge base za vaš tim?

Chunking strategije za minimizaciju halucinacija

Prema LaunchDarkly RAG tutorialu, loš chunking je jedan od glavnih uzroka halucinacija u custom RAG sistemima. Evo strategija po tipu sadržaja:

Fixed-size chunking (fiksno segmentiranje):
Jednostavno, ali nepouzdano. Deli tekst na segmente fikse dužine (npr. 512 tokena). Problem: cepа logičke celine usred rečenice.

text
Chunk 1: "Naša firma nudi web dizajn pakete od..."
Chunk 2: "1.200€ pa do 5.000€ za enterprise projekte..."

Model koji dobije Chunk 1 ne zna cenu. Model koji dobije Chunk 2 ne zna kontekst. Halucinacija postaje verovatna.

Semantic chunking (semantičko segmentiranje):
Deli dokument na logičke celine prema semantičkim granicama. Pasus o cenama ostaje zajedno. FAQ par (pitanje + odgovor) uvek je u istom chunku.

python
# Pseudokod za semantic chunking
def semantic_chunk(text, max_tokens=512):
# Koristi NLP da detektuje semantičke granice
sentences = split_into_sentences(text)
chunks = []
current_chunk = []
current_tokens = 0
for sentence in sentences:
tokens = count_tokens(sentence)
# Nova semantička granica (H2, H3, prazna linija)
if is_semantic_boundary(sentence) and current_tokens > 100:
chunks.append(“ „.join(current_chunk))
current_chunk = [sentence]
current_tokens = tokens
elif current_tokens + tokens <= max_tokens:
current_chunk.append(sentence)
current_tokens += tokens
else:
chunks.append(“ „.join(current_chunk))
current_chunk = [sentence]
current_tokens = tokensreturn chunks

Document-aware chunking (dokumentom vođeno segmentiranje):
Za strukturirane dokumente (PDF sa tabelama, HTML sa heading hijerarhijom), čuva logičku strukturu dokumenta. Svaki <article> je poseban chunk. Svaka tabela sa cenama je poseban chunk.

Hybrid retrieval – ključ za poslovne podatke

Galileo AI analiza RAG optimizacije preporučuje hibridnu pretragu kao najefikasnije rešenje za poslovne primene. Kombinuje dva pristupa:

Keyword search (pretraga po ključnim rečima):
Klasična BM25 pretraga – efikasna za precizne termine poput naziva proizvoda, SKU kodova, konkretnih cena. Ako korisnik pita „Laptop Model X Pro cena“, keyword search će direktno naći chunk koji sadrži te reči.

Semantic search (semantička pretraga):
Vektorska pretraga – efikasna za konceptualne upite. Ako korisnik pita „najjeftiniji laptop za poslovnu upotrebu“, keyword search neće naći ništa korisno, ali semantic search će pronaći relevantne opisne chunkove.

python
# Pseudokod za hybrid retrieval
def hybrid_retrieve(query, knowledge_base, alpha=0.5):
# alpha kontroliše balans: 0 = čisto semantic, 1 = čisto keyword
keyword_results = bm25_search(query, knowledge_base)
semantic_results = vector_search(query, knowledge_base)
# RRF (Reciprocal Rank Fusion) za kombinovanje rezultata
combined = reciprocal_rank_fusion(
keyword_results,
semantic_results,
alpha=alpha
)return combined[:5] # Top 5 najrelevantnijih chunks

Re-ranking za prioritizaciju tačnih podataka

Čak i dobar retrieval može doneti mešavinu relevantnih i irelevantnih chunks. Re-ranking je dodatni sloj koji sortira preuzete rezultate po relevantnosti pre nego što se pošalju modelu.

AWS dokumentacija za RAG sisteme preporučuje cross-encoder re-ranking koji direktno poredi svaki chunk sa upitom i daje mu ocenu relevantnosti. Chunks sa niskom ocenom se odbacuju pre generisanja – što direktno smanjuje halucinacije jer model ne dobija konfuzan ili kontradiktoran kontekst.

Freshness scoring – prioritet svežih podataka

Za poslovne primene gde se podaci menjaju (cene, dostupnost, osoblje), freshness scoring je kritičan. Daje veće težine chunks koji potiču iz nedavno ažuriranih dokumenata:

python
def score_chunk(chunk, query_relevance_score):
days_old = (today - chunk.last_modified).days
freshness_score = max(0, 1 - (days_old / 365))
# Kombinovani skor: 70% relevantnost, 30% svežina
final_score = (0.7 * query_relevance_score) + (0.3 * freshness_score)
return final_score

Ovo znači da chunk sa cenom koji je star godinu dana dobija niži skor od identično relevantnog chunka koji je ažuriran prošlog meseca. Halucinacije uzrokovane zastarelim podacima su drastično manje verovatne.

Napredne RAG tehnikeČesta pitanja i praktična rešenja

Šta da radim ako AI sistemi daju netačne cene o mojoj firmi?
Odmah implementirajte tri stvari: (1) Service ili Product schema sa eksplicitnim offers blokom koji uključuje priceValidUntil, (2) vidljivu FAQ stranicu sa odgovorom na pitanje o cenama i odgovarajućom FAQ schema, (3) ažurirajte llms.txt sa linkom ka stranici cenovnika i napomenom kada je poslednji put ažuriran.

Da li schema markup odmah menja odgovore AI sistema?
Ne odmah. AI crawleri posećuju vaš sajt periodično, ne u realnom vremenu. GPTBot može imati cache od nekoliko nedelja. Promena će se odraziti u narednih 2-8 nedelja od implementacije, zavisno od frekvencije crawlanja.

Koliko često treba ažurirati schema markup?
Svaki put kada se promene podaci koje schema opisuje – cene, usluge, osoblje, adresa. Ažuriranje dateModified polja u schema markup-u bez promene sadržaja ne pomaže. Crawleri prate stvarne promene sadržaja, ne metapodatke.

Postoji li test za proveru da li je schema ispravno implementirana?
Da – Google Rich Results Test provera ispravnost schema syntax-e. Za AI-specifično testiranje, Schema Markup Validator na schema.org pruža detaljniju validaciju. Pored toga, korisno je ručno testirati: upitajte ChatGPT ili Claude direktno o vašoj firmi i proverite da li odgovori odgovaraju onome što ste definisali u schema-i.

Koje schema type-ove treba kombinovati za maksimalnu zaštitu od halucinacija?
Za tipičnu firmu sa uslugama: Organization (osnova), Service + Offer (za svaku uslugu), FAQPage (za česta pitanja), LocalBusiness ako imate fizičku lokaciju, Person za ključne ljude u firmi (posebno osnivača i direktora). Svaki od ovih type-ova popunjava drugu „prazninu“ u AI-jevom razumevanju vaše firme.

Napredne RAG tehnikeBudućnost RAG-a i verifikacije podataka

Ono što smo do sada opisali – semantički HTML, JSON-LD schema, llms.txt, Markdown fajlovi – to je stanje igre u 2026. godini. Ali polje se brzo razvija i vredi pogledati kuda idemo.

Verified AI feeds – sledeći korak

Trend koji se već nazire u enterprise svetu je „verified AI feed“ – direktan, autentifikovan kanal između vašeg sistema i AI platformi. Umesto da AI crawluje vaš sajt i izvlači podatke, vi punoopunomoćeno šaljete ažurirane podatke direktno u indeks AI sistema.

Ovo bi funkcionisalo slično kao što Google Merchant Center prima podatke o e-commerce artiklima direktno od prodavaca, bez crawlanja. Shopify seller šalje feed, Google Merchant Center ga prima, Google Shopping prikazuje tačne podatke.

Analogno tome, budući „AI Merchant Center“ bi primao verifikovane podatke o firmama – cene, usluge, dostupnost, kontakte – direktno od zvaničnih izvora. Model ne bi morao da crawluje ni da zaključuje. Dobijao bi potvrđene podatke iz prvog izvora.

Anthropic, OpenAI i Google već eksperimentišu sa oblicima ove arhitekture kroz MCP (Model Context Protocol) integracije i verified publisher programe. Za sada, to je dostupno samo enterprise klijentima, ali demokratizacija tog pristupa je pitanje vremena.

Hallucination detection kao servis

Paralelno sa prevencijom halucinacija na nivou izvora podataka, razvijaju se i alati za detekciju halucinacija u realnom vremenu. Prema AWS istraživanju, faktičnost odgovora RAG sistema može se meriti kroz automatske evaluacione pipeline-ove koji porede generisani odgovor sa izvornim dokumentima.

Konkretno, alati poput Galileo AI, Ragas i TruLens omogućavaju metrike kao što su:

  • Faithfulness (vernost): Da li je svaka tvrdnja u odgovoru potkrepljena izvornim dokumentom?

  • Answer relevance (relevantnost odgovora): Da li odgovor zapravo odgovara na postavljeno pitanje?

  • Context precision (preciznost konteksta): Da li su preuzeti chunks bili relevantni ili je sistem „pokupio“ pogrešne dokumente?

Prema Galileo analizi, firme koje implementiraju evaluacione pipeline-ove u produkciji beleže 60-80% manje faktičkih grešaka u AI odgovorima u poređenju sa sistemima bez evaluacije.

Šta to znači za vlasnike sajtova?

U budućnosti, verovatno ćete moći da „prijavite“ svoju firmu kao verifikovani entitet kod glavnih AI platformi – slično kao što se danas verifikuje Google My Business nalog. Taj verifikovani entitet će imati prioritet nad crawlanim podacima.

Do tada, strategija opisana u ovom tekstu je najrobustniji dostupni pristup: strukturirani podaci koje vi kontrolišete, u formatima koje AI sistemi razumeju, ažurirani redovno i konzistentni kroz sve kanale.

Budućnost RAG-aNe možete kontrolisati AI – ali možete kontrolisati šta AI čita

Ovo je suštinski zaključak celokupne diskusije. AI halucinacije o vašoj firmi nisu slučajne. One su direktna posledica vakuuma – praznine između onog što AI „zna“ (ili pre, što može da zaključi) i onog što vi niste eksplicitno definisali.

Svaki JSON-LD blok koji napišete, svaki semantički HTML element koji dodate, svaki llms.txt link koji opišete – to su zidovi koji sužavaju prostor u kome AI može da izmišlja. Ne eliminišete halucinacije u potpunosti, ali ih drastično smanjujete i kanališete model ka tačnim odgovorima.

Klijenti sve češće postavljaju pitanja AI sistemima pre nego što uopšte posete vaš sajt. Partneri koriste AI za due diligence. Kandidati za posao pitaju ChatGPT o firmi pre intervjua. Ako ono što AI kaže o vama nije tačno, šteta je realna – čak i ako vaš sajt ima savršen dizajn i odlično SEO rangiranje.

Strukturirani podaci nisu opcija. Oni su osnovna higijena digitalnog prisustva u eri AI pretrage.

Česta pitanja o RAG optimizaciji i prevenciji halucinacijaČesta pitanja o RAG optimizaciji i prevenciji halucinacija

Šta je RAG i zašto smanjuje halucinacije?
RAG (Retrieval-Augmented Generation) je arhitektura gde AI model pre generisanja odgovora pretraži eksternu bazu dokumenata i priloži pronađeni kontekst kao deo upita. Model tada odgovara na osnovu konkretnog dokumenta, a ne isključivo iz sopstvenog „sećanja“ stečenog tokom treninga. Prema istraživanjima, RAG smanjuje halucinacije za do 71% u poređenju sa čistim LLM odgovorima.

Koji je najbrži korak za smanjenje halucinacija o mojoj firmi?
Implementacija Organization schema markup-a sa popunjenim sameAs poljem (LinkedIn, Facebook, Crunchbase) i eksplicitnim opisom delatnosti. Ovo je posao od 30 minuta koji odmah daje AI sistemima autoritativan izvor informacija o vašoj firmi.

Da li semantički HTML stvarno utiče na RAG sisteme?
Da. Semantički HTML (<article><section><h2><main>) direktno poboljšava chunking proces – deljenje teksta na logičke celine za RAG bazu znanja. Stranica bez semantičkih tagova generiše loše chunks koji krnu kontekst i povećavaju verovatnoću halucinacije.

Koliko često treba ažurirati schema markup i llms.txt?
Svaki put kada se promene podaci koje ti fajlovi opisuju: cene, usluge, kontakti, osoblje, radno vreme. Ažuriranje dateModified polja bez promene sadržaja ne pomaže. Crawleri prate stvarne promene, ne metapodatke.

Šta je „source of truth“ arhitektura?
Pristup u kome jedna, eksplicitno definisana stranica ili fajl na vašem sajtu nosi autoritativne informacije o određenom aspektu firme (cene, usluge, kontakti), a sve ostale stranice i fajlovi linkuju ka tom izvoru. Onemogućava konflikt između izvora koji RAG sistem može interpretirati kao nedoslednost.

Banner

Banner

Možda će vam se svideti i