Kako smo rekonstruisali proces kreiranja sadržaja za školsku platformu
Gradim obrazovnu platformu za svoju ćerku. Srpski školski program od prvog do osmog razreda — matematika, jezik, priroda i društvo, sve što ulazi u osnovnu školu. Počela sam sa matematikom četvrtog razreda. Stek — Next.js 15, Supabase, Tailwind, KaTeX za formule. Claude je saautor sadržaja: teorija, vežbe, testovi, saveti, prevodi na ruski.
Za tri dana početkom marta napravili smo sedamnaest veština iz tri teme — jednačine, množenje, deljenje. Svaka veština sadrži teorijske sekcije, nekoliko testova i više od dvadeset vežbi. Sve to čuva se u Supabase i dospeva tamo kroz SQL seed-fajlove. Izgledalo je sasvim funkcionalno — sve dok nisam počela pažljivije da gledam u rezultate.
Šta je pošlo naopako
Problemi su bili dve vrste: tehnički i pedagoški.
Tehnički su bili ujednačeni. U seed-fajlovima su se koristili E-stringovi sa literalnim \n umesto chr(10) — radilo je, ali je kršilo format koji smo do tada već utvrdili kao etalon. Polja media sadržala su NULL umesto praznog JSON-niza '[]'. Za brojeve veće od hiljadu nismo upisali varijante odgovora sa tačkom kao separatorom (u srpskom zapisu 1.000 umesto 1000) — dete je moglo da unese tačan odgovor i dobije grešku.
Pedagoški problemi bili su ozbiljniji. Teorija svake veštine počinjala je apstraktnom definicijom: Једначина је… Četvrtaš ne počinje od definicija — počinje od situacije: na polici su stajale knjige, neke su uzete, koliko je ostalo? Saveti uz vežbe bili su rutinski — Размисли поново umesto konkretnog upućivanja na grešku. Vežbe nisu bile povezane sa teorijom: u teoriji su figurisali jedni brojevi i primeri, a u vežbama potpuno drugi.
Svaka od šesnaest veština sadržala je istu kombinaciju ovih problema. I postalo je jasno da to nisu slučajne greške, već sistemski rezultat odsustva procesa.
Zašto model nije kriv
Claude sasvim može da generiše kvalitetan nastavni sadržaj na srpskom jeziku. Ali pri svakoj novoj veštini počinjao je od nule: nije pamtio terminologiju, nije znao koje formulacije su prirodne za srpski udžbenik, nije imao pristup izvorima. Svaki put je trebalo ponovo objašnjavati, i svaki put rezultat je zavisio od toga koliko potpuno sam objasnila kontekst u toj konkretnoj sesiji.
A ispred nas su još sedam razreda i nekoliko predmeta. Ako proces ne funkcioniše na pet tema iz matematike, neće izdržati obim celog programa.
Pitanje nije bilo kako pronaći bolji model, nego kako dati postojećem modelu radno okruženje — priručnike, izvore, algoritam i kontrolu kvaliteta.
Šta smo rekonstruisali
Rekonstrukcija je trajala jedan dan i obuhvatila je tri stvari.
Biblioteka izvora. Projektovali smo sistem od dva fajla. Prvi — reference.md — sadrži terminologiju (oko osamdeset matematičkih termina na srpskom sa prevodom na ruski), pravila i svojstva iz udžbenika u tačnim srpskim formulacijama, i frazeološki blok: šablone tipičnih fraza za uslove zadataka, uputstva, teoriju i savete. Drugi — index.md — mapa svih tema iz udžbenika sa vezom ka izvornim fajlovima i statusom pokrivenosti.
Svi izvori (PDF udžbenici, dokumenti sa zadacima) konvertuju se u Markdown i smeštaju u folder converted/. Claude ih čita direktno — bez međukoraka, bez gubitka konteksta na raspakivanje PDF-a svaki put.
Patern je projektovan tako da se prenosi na druge predmete: svaki će imati sopstveni reference.md sa terminologijom i sopstveni index.md sa izvorima.
Ovo rešenje smo razvili tokom brainstorming sesije. Postavljala sam pitanje za pitanjem: ko je primarni korisnik fajla — ti ili ja? jedan fajl ili više? šta beležiti o svakom izvoru? Claude je predlagao varijante, ja sam ga tražila da svaku proveri, i on sam je pronalazio slabe tačke u sopstvenim predlozima. Na primer, prvobitno je pretpostavljao da se stranice u knjizi rešenja poklapaju sa udžbenikom — a kad smo proverili PDF, ispostavilo se da numeracija ima potpuno svoje.
Specijalizovani skill. Umesto generisanja sadržaja “u hodu”, napravili smo school-create-math — formalizovani algoritam od pet koraka. Nulti korak — učitavanje konteksta: terminološki priručnik, etalon SQL-formata, trenutno stanje platforme. Prvi — pronalaženje izvora po temi i analiza pojmova. Drugi — pisanje teorije po logici od 5 koraka: kuka iz svakodnevnog života, razrađen primer, pravilo, kontraprimer, provera razumevanja. Treći — generisanje SQL-a (odvojeno od teksta, da se ne mešaju). Četvrti — samoprovera po čeklisti.
Između koraka postoje stroge blokade: ne može se preći na SQL dok teorijski tekst ne prođe proveru na AI-obrasce. Ne može se mešati pisanje teksta i generisanje koda u jednom koraku. Ova ograničenja nastala su iz konkretnog iskustva: kada Claude piše teoriju i SQL istovremeno, kvalitet teksta opada.
Lanac kontrole kvaliteta. Dva dodatna skila: school-reviewer za regresijsku proveru i akumulaciju obrazaca, i school-qa — obavezna čeklista pre svakog komita. Nijedna veština ne ulazi u bazu podataka bez prolaska kroz oba.
Rezultat
Sedamnaesta veština — “Deljenje sa ostatkom” — nastala je već po novom procesu. Teorija počinje situacijom: deca dele jabuke, i jedna ostaje. Svaka vežba povezana je sa teorijom po primerima. Saveti su konkretni: Podeli 47 na 8. Koliko celih osmica staje? Pomnoži unazad i nađi ostatak. Terminologija je ujednačena, jer Claude čita priručnik na početku rada, a ne pokušava da se seti napamet.
Razlika između starih veština i nove vidljiva je i bez detaljnog poređenja. I sada sistematski prepisujemo svih šesnaest prethodnih — istim procesom, po dve-tri po sesiji.
Šta iz ovoga sledi
Tri stvari koje se prenose na svaki projekat gde AI generiše sadržaj.
Prvo, problem skaliranja nije u modelu, nego u procesu. Jedna dobra generacija ništa ne garantuje — deset generacija bez priručnika i čekliste neizbežno akumulira tehnički dug. A kada je ispred vas stotine veština iz više predmeta i razreda, tehnički dug se pretvara u slepu ulicu.
Drugo, modelu je potreban radni kontekst, a ne prompt. Terminologija, etalon primeri, pravila formatiranja — sve to mora biti u fajlovima koji se učitavaju na početku svake sesije. Prompt se zaboravlja do sledeće sesije, a fajl se učitava svaki put i daje isti rezultat.
Treće, kontrola kvaliteta mora biti ugrađena u proces, a ne dodana naknadno. Ako provera nastupa tek pri pregledu gotovog rezultata, greške su već sistemske i lakše je prepisati od nule nego ih ispravljati jednu po jednu.
Odlučili smo da upravo tako i postupimo — da prepišemo sve. Ćerka još ne koristi platformu, rizik je nulti, a delimične ispravke stvorile bi dvostruki posao. Ponekad je najefikasnije rešenje prihvatiti da je brže početi iznova sa ispravnim procesom nego krpiti rezultate pogrešnog.