Kodiranje: ClawTeam “roj agenata” orkestracija uz OpenAI pozivanje funkcija
U ovom (tutorijalu prikazana je osnovna arhitektura ClawTeama, open-source okvira za “agent swarm” inteligenciju (HKUDS). Ideja je da jedan leader agent razloži cilj na podzadatke, zatim više specijalizovanih worker agenata paralelno izvršava te zadatke, dok zajedničke komponente koordinacije (tabla zadataka, poruke i evidencija agenata) obezbeđuju pregled i usklađenost rada.
Šta se implementira (suština)
- Leader agent: prima “visok nivo” cilja od čoveka, razlaže ga u 3–5 konkretnih zadataka, dodeljuje ih worker agentima i kasnije sintetizuje konačan izveštaj.
- Worker agenti: svaki ima ulogu/specijalizaciju, preuzima zadatke sa table, menja status (npr.
in_progress→completed) i šalje kratke poruke leaderu. - TaskBoard (tabla zadataka): čuva zadatke, statuse i rezultate; podržava zavisnosti (npr. zadatak može biti blokiran dok se drugi ne završi).
- Inbox (sistem poruka): agenti šalju poruke jedni drugima (posebno leaderu), kao jednostavna komunikaciona magistrala.
- TeamRegistry: evidencija agenata (uloga, status, broj završenih zadataka).
Instalacija i inicijalizacija (skraćeno)
Tutorijal kreće tako što instalira potrebne biblioteke (openai i rich), učita API ključ (npr. iz Colab Secrets ili kroz unos), i zatim inicijalizuje OpenAI klijent i Rich konzolu za “lepu” terminal tablu.
pip install -q openai rich
# zatim postavite OPENAI_API_KEY i inicijalizujte OpenAI klijent
Model podataka i koordinacija
Implementiraju se osnovne klase koje imitiraju “CLI” ponašanje ClawTeam-a, ali u memoriji (bez tmux/worktrees/filesystem queue):
- Task: ID, subject/description, owner, status, lista zavisnosti (
blocked_by), rezultat, vreme kreiranja i završetka. - TaskBoard: kreiranje zadatka, promena statusa, automatsko “odblokiranje” zavisnih zadataka, filtriranje po vlasniku i statusu, JSON sažetak.
- InboxSystem: slanje poruka agentu ili broadcast; prijem/peek poruka.
- TeamRegistry: registracija agenata i praćenje metrika (status, broj završenih zadataka).
Bitna ideja: kada se zadatak označi kao completed, tabla zadataka automatski proverava da li su drugi zadaci bili blokirani tom zavisnošću i, ako jesu, prebacuje ih u stanje pending.
Function calling alati (tooling) za agente
Definišu se 4 “alata” koje model može da pozove (function calling), kao ekvivalent komandama u ClawTeam-u:
task_list: listanje zadataka (po vlasniku/agentu).task_update: promena statusa zadatka nain_progress/completed/failedi čuvanje rezultata.inbox_send: slanje poruke drugom agentu (npr. leaderu).inbox_receive: čitanje i “pražnjenje” inbox-a.
Worker agent dobija sistemski prompt sa jasnim protokolom: prvo proveri zadatke, označi kao in_progress, uradi posao, završi kao completed uz rezultat, pa pošalji sažetak leaderu.
Leader planiranje (JSON plan)
Leader agent dobija instrukciju da generiše validan JSON plan sa listom zadataka, gde svaki zadatak sadrži:
- subject (kratak naslov),
- description (uputstvo),
- worker_role i worker_name,
- blocked_by_indices (zavisnosti preko indeksa).
Na osnovu toga sistem kreira zadatke na tabli i “spawnuje” workere.
Pokretanje “swarm” toka (faze)
Pipeline je organizovan u nekoliko faza:
- Faza 1: leader razlaže cilj u zadatke.
- Faza 2: inicijalizacija table zadataka, inbox-a i registra tima.
- Faza 3: kreiranje worker agenata prema planu.
- Faza 4: izvršavanje u rundama — svaki worker uzima svoje zadatke (pending), radi ih i upisuje rezultate.
- Faza 5: leader sakuplja rezultate i poruke, pa pravi jedinstven završni izveštaj.
- Faza 6: prikaz “dashboard”-a (kanban + roster agenata) uz Rich.
Šabloni timova (templates) i interaktivni meni
Tutorijal dodaje tri gotova šablona (templates) za brzi start:
- AI Hedge Fund: analiza akcije iz više uglova (fundamentals, growth, technicals, sentiment) uz preporuku buy/hold/sell.
- Research Swarm: dubinsko istraživanje teme (pozadina, izazovi, inovacije, budući trendovi, primene).
- Engineering Team: dizajn arhitekture sistema (zahtevi, komponente, API/modeli podataka, bezbednost, deployment/skaliranje).
Postoji interaktivni meni koji korisniku omogućava izbor šablona ili unos sopstvenog cilja.
Zaključak (poenta tutorijala)
Autor pokazuje da se ključni obrasci ClawTeam “swarm” pristupa mogu verno reprodukovati u Python-u uz OpenAI function calling: razlaganje ciljeva, dodela poslova specijalizovanim agentima, razmena poruka, rešavanje zavisnosti i završna sinteza u jedan izveštaj — čak i bez originalne infrastrukture (tmux, worktrees, fajl-kjuovi).
Napomena o skraćivanju: Izostavljeni su dugi blokovi koda (stotine linija) koje možete naći u izvoru. Zadržana je struktura i smisao, uz kratke isječke i opis funkcionalnosti.
Komentari
Nema komentara. Šta vi mislite o ovome?