A rögzített megbeszélésekben rejlő tudást ritkán aknázzuk ki. Nehezen kereshetők, időigényes újrahallgatni őket, és a csapatok különálló meghajtóin vannak szétszórva, így az értékes felismerések gyakran rejtve maradnak.
Egy egynapos hackathon során egy háromfős csapat megalkotta a Callombiát. Ez egy belső platform, amely automatikusan átírja, címkézi, összefoglalja és klipekre bontja a rögzített hívásokat, majd egy YouTube-szerű, kereshető adattárba rendezi őket, amely világszerte minden irodából elérhető.
A teljes egészében a Codex segítségével készült megoldás az OpenAI beágyazásaira és koszinusz-hasonlóságra épülő szemantikus kereséssel akkor is megtalálja a releváns pillanatokat, ha nem szerepelnek bennük pontos kulcsszavak; ezt RAG-alapú chatbot és értesítési rendszer egészíti ki.
Ami korábban hetekig tartott volna, hét óra alatt elkészült. Ez jól mutatja, hogy a Codexhez hasonló kódoló ügynökökre épülő, AI-natív fejlesztés drámaian lerövidítheti a termékfejlesztési ciklust, és valódi üzleti értéket teremthet a belső hackathonokból.
Ha hozzám hasonlóan önnek sincs ideje – vagy türelme – visszahallgatni a rögzített megbeszéléseket, nincs egyedül. Ennek gyakran az az oka, hogy rendezetlen csapatmeghajtókon kell keresgélni, átugrálni a gyengécske csevegéseket, és e-mailek meg üzenetek küldése közben megpróbálni ténylegesen odafigyelni.
De talán ennek nem kell így lennie. Mi lenne, ha készítenénk valamit, ami teljesen új alapokra helyezi a rögzített megbeszéléseket? Ez az elképzelés állt legutóbbi hackathonprojektünk mögött.
Mindössze egy nap alatt mérnöki, megvalósítási és üzemeltetési csapatunk 50 tagja dolgozott a vállalat különböző területeiről érkező problémákon: a toborzási műveletek bővítésétől és a munkaleírások elkészítésének egyszerűsítésétől kezdve a projektek állapotának megértésén és az élő prototípus-generáláson át a rögzített megbeszélésekben rejlő felismerések feltárásáig.
Ezen a Codex-alapú hackathonon alkottuk meg a Callombiát. A Callombia vállalatunk YouTube-ja: minden hívást folyamatosan bővülő, kereshető tudásanyaggá alakít. Minden hívás automatikusan átírásra, címkézésre és összefoglalásra kerül, majd tematikus klipekre bontva bekerül egy csatornák – ügyfelek – és témák – AI-szakterületek – szerint csoportosított adattárba. Így a londoni, edinburgh-i, szingapúri és ausztráliai csapat bármely tagja azonnal elérheti a hívások számára fontos pillanatait.
Az ismerős, márkánkhoz illő felhasználói felület intuitívvá teszi a tartalmak felfedezését, a szemantikus keresés – és természetesen a RAG-alapú AI-chatbot – pedig segít pontosan megtalálni, amit valaki keres. Az értesítési rendszerrel kollégáink feliratkozhatnak bizonyos témákra, és értesítést kaphatnak, ha számukra releváns új klipek jelennek meg.
A Callombiában azonban nem maga a termék a legmenőbb, és nem is a hackathon megnyeréséért járó 2000 fontos díj – bár büszkék vagyunk rá –, hanem az, hogy mindezt két mérnökkel és egy megvalósítási vezetővel, mindössze hét óra alatt építettük meg. Egy éve ez még nem lett volna lehetséges. A kódoló ügynökök fejlődése jelentősen felgyorsította a teljes termékfejlesztési folyamatot, ez a hackathon pedig kiváló tesztkörnyezetet adott képességeik egyenetlen határainak feltérképezéséhez. Hogyan használtuk tehát a Codexet?
Ahelyett, hogy egyszerűen összeírtunk volna egy halom követelményt, először utasításként megosztottuk a problémakörről és a Callombia jövőképéről alkotott közös elképzelésünket. Szándékosan nem fogalmaztunk túl konkrétan: hagytuk dolgozni és kreatívan gondolkodni a modellt.
Tíz perc egyeztetés után bekapcsoltuk a Plan Mode-ot, hogy pontosítsuk a követelményeket és megalapozzuk a megvalósítás műszaki részét. A Plan Mode használata olyan, mintha annak az idegesítő barátnak a kérdéseire válaszolnánk, aki – szerencsére – minden lehetséges forgatókönyvet végiggondolt. Miután megegyeztünk többek között a videók számáról, a szemantikus vagy kulcsszavas keresésről és a használandó architektúráról, létrehozott egy Markdown-fájlt, amely ettől kezdve a projekt alapjául szolgált.


Miután elkészült a terv, következhetett a Callombia működéséhez szükséges alapvető komponensek megépítése. Ehhez olyan folyamatot kellett létrehoznunk, amely a rögzített hívásokat kereshető tartalommá alakítja:
videók és átiratok betöltése,
tartalmas részletekre bontásuk,
összefoglalókkal és címkékkel való gazdagításuk,
elérhetővé tételük a frontend által használható API-kon keresztül.
Ed elsősorban azon dolgozott, hogy a nyers felvételeket és átiratokat használható formátumba hozza, Nico pedig a visszakeresési rétegre összpontosított, amely megtalálhatóvá tette ezeket a pillanatokat. A Codex segítségével mindketten sokkal gyorsabban felépítették az adatmodelleket, a kinyerési szkripteket és a backend alapvető infrastruktúráját, mint ahogyan kézi munkával tehettük volna. Így jóval többet kaptunk egy videóhoz csatolt átiratnál. Konkrét pillanatokat kaptunk: a Tescóról szóló részt, a stratégiai helyzetjelentést, a felvételről szóló beszélgetést vagy éppen azt a másfél percet egy hívásból, amelyet valaki valóban meg akar nézni.
A visszakeresési rétegnél váltak igazán érdekessé a dolgok. Azt szerettük volna, hogy valaki beírhasson például olyasmit, mint “financial performance,” “Tesco roadmap,” vagy “conversation evals,” és akkor is a legrelevánsabb klipekhez jusson, ha ezek a pontos kifejezések sosem hangzottak el. Ehhez időbélyegeket, összefoglalókat, átiratszöveget és metaadatokat tartalmazó részleteket hoztunk létre. A világos architektúrára és a Codex jelentős segítségére támaszkodva egyetlen bemenetben egyesítettük a témát, az összefoglalót és az átiratot, majd az OpenAI text-embedding-3-small modelljével minden részlethez beágyazásokat generáltunk. A beágyazásokat adatbázisunkban tároltuk, majd koszinusz-hasonlósággal vetettük össze a felhasználói lekérdezéseket az összes részlettel. Így egyszerű kulcsszavas keresés helyett szemantikus visszakeresési réteget kaptunk.
Ez rendkívül pontosan működött, és a hackathondemó során ettől tűnt igazán „varázslatosnak” a termék. Ugyanakkor tudtuk, hogy a videók számának folyamatos növekedésével ez a megközelítés nem skálázható korlátlanul, mert idővel túl költségessé válna minden lekérdezést minden részlettel összevetni. A következő kézenfekvő lépés hatékonyabb visszakeresési stratégiák – például a Hierarchical Navigable Small World – bevezetése lenne, hogy kevesebb összehasonlításra legyen szükség, és az állomány bővülésével is alacsony maradjon a késleltetés. Amikor ez a funkció működni kezdett, a Callombia már kevésbé tűnt médiatárnak, inkább tudásrendszernek.
Mint minden jó hackathonon, ezt a részt is többször finomítani kellett: az első részlethatárok túl pontatlanok voltak, néhány időbélyeget szűkíteni kellett, egyes címkék túl általánosak voltak, az átiratok és a felvételek pedig nem mindig illeszkedtek pontosan egymáshoz. Ugyanakkor éppen itt mutatkozott meg az érték. A Codex segítségével gyorsan finomíthattuk a rendszert, ahelyett hogy a beállításokkal és az ismételt munkával vesztegettük volna az időt. A végére olyan backendünk lett, amely klipeket, részleteket és valóban hasznos szemantikus keresést tudott kiszolgálni. Ekkor kezdett a Callombia egyszerű hackathondemó helyett valódi terméknek érződni.
Miközben Ed és Nico az adatbetöltési és intelligens réteget építette, én a frontenden dolgoztam. A full-stack sablonunkkal gyorsan elkészítettem a webhely első verzióját anélkül, hogy egyetlen sor kódot is írtam volna. Miután megkértem, hogy nyissa meg helyben a webhelyet a böngészőmben, egyszerű, felsorolásszerű visszajelzésekkel finomítottam a dizájnt, amíg el nem értem a kívánt eredményt.
Nagyjából egyórányi egyeztetés után már egészen elégedett voltam az eredménnyel, pedig sem felhasználói felületek, sem dizájn terén nem volt tapasztalatom. A végeredmény természetesen nem tökéletes, de első verziónak kifejezetten jó, és segít az embereknek megérteni a terméket.


Hogy a nap végére biztosan elkészüljön valami, felosztottuk egymás között a munkát. Néhány órányi, többé-kevésbé önálló munka után természetesen mindannyiunk helyi ágában rengeteg ütközés volt.
Ahelyett, hogy a nem létező időnkből áldoztunk volna az ütközések gondos átvizsgálására és feloldására, szabadjára engedtük a Codexet az adattárakban, hogy önállóan javítsa ki őket. Vállalati szintű szoftverfejlesztéshez egyelőre nem ajánlanánk ezt, de alacsony kockázatú környezetben lenyűgöző volt látni a hatékonyságát, ráadásul sok órát megtakarított nekünk.
A hackathon utolsó feladata a Callombia zsűrinek szánt demójának rögzítése volt. Ösztönösen a Loomot nyitottuk volna meg a felvételhez, de úgy gondoltuk, ez valódi próbatétel lehet a Codex számára, ráadásul kissé kívül esik a jelenlegi képességein. Így hát… Írtunk egy utasítást, megadtuk a Callombia webhelyének hivatkozását, csatoltuk a hangom felvételét az OpenAI fejlesztői platformján, majd megkértük, hogy végezze el a többit.
Az első próbálkozás lenyűgöző volt: megírta a demó forgatókönyvét, rögzítette a képernyőt, hozzáadta a narrációmat, és szinte teljesen teljesítette a feladatot. Egyedül a narráció és a demófelvétel szinkronizálásával nem voltunk azonnal elégedettek, ezért ezt kértük tőle: “MANDATORY: align the voiceover exactly with what is being shown in the demo. There was misalignment (e.g. on the chat page). Triple check alignment of voiceover and the screen-recorded demo at the end. Match it up through whichever means possible.”
A kérésre válaszul a Codex kisebb részekre bontotta a narrációt és a felvételt, majd szinte hibátlanul végrehajtotta a feladatot – éppen időben, fél hatra, hogy sörrel és pizzával ünnepelhessünk.
Tudjuk, hogy a Callombia a legtöbb vállalatnál jelen lévő problémát old meg. Egy gyorsan növekvő vállalat minden hívásán nehéz részt venni, pedig az ott elhangzó értékes felismerések felbecsülhetetlenek. Már csak éles környezetbe kell állítanunk.
A fontosabb tanulság azonban az AI-natív működésről szól, valamint arról, milyen előnyökkel jár, ha mérnöki és termékfejlesztési szakértelmünket közös problémák megoldására fordítjuk. A megszokott munkarendből kilépve, csapatokon átívelően és enyhén versengő környezetben dolgozva számos olyan megoldást hoztunk létre, amely némi finomhangolással éles környezetbe állítható. Ha ezt rendszeresen megtesszük, belső működésünk is ugyanolyan gördülékeny lehet, mint az ügyfeleinknek készített megoldások.