Nilikuwa nafikiri kuwa kujenga wakala wa AI (AI agent) ni sawa kabisa na kutoa maelekezo (prompting) kwa chatbot. Unatengeneza swali vizuri, modeli inajibu, na unamaliza kazi. Kisha nilizindua programu kadhaa. Ukweli ulinikuta kwa kishindo. LLM si wakala. LLM inatabiri neno linalofuata (next token). Mzunguko (loop) ndio unaounda wakala.

Fikiria kuhusu kutengeneza chai. Huitoi amri moja inayoitwa make_tea() na kisha unaondoka. Unajaza birika, unatambua shinikizo la bomba ni chini, unasubiri, unawasha, unabaini swichi imeharibika, unahamia kwenye jiko lingine, unakagua mvuke, unamimina, unakunywa, na labda unaongeza asali kwa sababu majani yalikaa muda mrefu sana. Lengo halibadiliki, lakini hatua hubadilika. Unachunguza, unarekebisha, na unajaribu tena. Wakala wa AI hufanya kazi kwa namna hiyo hiyo.

Mzunguko Unaounda Uwezo wa Kujiongoza (Agency)

Mzunguko huu si nadharia isiyoonekana. Ni mapigo ya kiutendaji ya mfumo wowote unaofanya kazi kwa niaba yako. Hivi ndivyo unavyoonekana katika vitendo:

  • Fikiria: Modeli inafikiria kuhusu lengo na kuamua kinachohitajika. Mtumiaji anauliza, "Je, nipe mwavuli kesho kule Portland?" Modeli inatambua kuwa inahitaji utabiri wa hali ya hewa na eneo.
  • Tekeleza: Modeli inatumia zana (tool). Inaweza kuitia API ya geocoding ili kutambua "Portland," kisha ikatumia endpoint ya hali ya hewa kwa kutumia uratibu (coordinates).
  • Chunguza: Modeli inasoma matokeo ya zana hiyo. Je, API ilirudisha utabiri wa JSON, kosa la 403, au ukurasa wa HTML wa matengenezo?
  • Sasisha: Kulingana na kile inachokiona, modeli inarekebisha mpango wake. Ikiwa geocoder ilirudisha Portland, Maine badala ya Portland, Oregon, modeli inahitaji kufafanua. Ikiwa API haifanyi kazi, inaweza kubadilisha na kutumia chanzo mbadala au kumuuliza mtumiaji.
  • Fikiria Tena: Mzunguko unaanza upya na muktadha mpya.

Hizi si kazi tano tofauti unazoandika mara moja na kuzisahau. Ni injini endelevu inayofanya kazi hadi lengo lifikiwe au mpaka kituo cha kusimama kiamriwe. Modeli haitekelezi kodi kama skripti. Inafikiria kuhusu hali ya ulimwengu, inachagua kitendo, inasoma matokeo, na kuamua nini kitafuata. Hiyo ndiyo tofauti kati ya mfumo wa kukamilisha sentensi (autocomplete) uliopambwa na wakala anayemaliza kazi.

Kwa Nini Mifumo (Frameworks) Yote Inaonekana Kufanana

Ikiwa umetumia muda na LangGraph, CrewAI, au AutoGen, pengine umeona kwamba zinaanza kufanana. LangGraph inaiga mtiririko kama grafu endelevu ya nodi (nodes) na kingo (edges). CrewAI inaandaa wakala katika majukumu na vikosi (crews). AutoGen inaongoza mazungumzo ya wakala wengi. Ufungashaji tofauti, lakini mifupa ni ile ile.

Zinaonekana kufanana kwa sababu zote zimeundwa kulingana na kanuni hii ile ile ya mzunguko. LangGraph inaweka mzunguko wazi kama mabadiliko ya hali kati ya wito wa zana na uamuzi wa modeli. CrewAI inafunika mzunguko ndani ya wakala wanaozingatia majukumu, lakini kila mwanachama wa kikosi bado hupitia mipango, vitendo, na uchunguzi. AutoGen inasimamia ujumbe kati ya wahusika, lakini kila awamu bado ni mabadiliko ya kutengeneza, kutekeleza, kutafakari, na kuelekeza.

Mifumo hii inazingatia mzunguko kwa sababu hapo ndipo uwezo wa kujiongoza (agency) ulipo. Modeli inayotumika inaweza kuwa GPT-4, Claude, au modeli ya open-weight iliyofanyiwa marekebisho (fine-tuned). Bila mzunguko, unakuwa na kifaa cha kukamilisha sentensi chenye gharama kubwa sana. Ukiwa na mzunguko, unakuwa na mfumo unaoweza kudumu kuelekea lengo kupitia majaribio mengi.

Wakati Kazi Halisi Inapoanza

Maonyesho ya ndani (local demos) yanaonekana kama uchawi. Uzalishaji (production) ndipo uchawi unapokutana na vurugu. Mara tu unapovuka hatua ya kutengeneza mifano (prototyping), unaacha kutatua matatizo ya AI na kuanza kutatua matatizo ya uhandisi wa mifumo (systems engineering).

Kushindwa kwa zana (Tool failures) ni lazima. API hukatika (time out). Hurudisha JSON iliyoharibika. Hurudisha makosa ya 500 yaliyofungwa ndani ya HTML. Ikiwa mzunguko wako utaamini kila matokeo ya zana bila kufikiri, wakala wako utatengeneza mafanikio ya uongo (hallucinate success) au utajikuta katika mkanganyiko. Unahitaji mantiki ya kujaribu tena (retry logic), vizuizi vya mzunguko (circuit breakers), na uhakiki wa muundo (schema validation) kwenye kila matokeo yanayorudishwa.

Kumbukumbu hupitwa na wakati (Memory goes stale). Wakala wako anakumbuka kuwa kanzidata inayopendelewa na mtumiaji ni PostgreSQL, lakini timu ya miundombinu ilihamia kwenye kundi (cluster) jipya jana usiku. Bila utaratibu wa kuhuisha au kufuta muktadha, wakala atatoa amri kwa ujasiri dhidi ya vituo (endpoints) vilivyokufa. Kumbukumbu inahitaji alama za muda (timestamps), alama za ujasiri (confidence scores), na uwezo wa kujifuta yenyewe.

Mizunguko isiyo na mwisho ni wauaji wa kimya (Infinite loops are silent killers). Wakala anatafuta mtandaoni, hapati kitu chenye manufaa, anaboresha utafutaji kidogo, anatafuta tena, hapati kitu, na anarudia. Bila kikomo cha marudio ya juu au utambuzi wa nakala zinazofanana kimaana, utatumia tokeni na pesa nyingi wakati mtumiaji anasubiri. Lazima ujenge vizuizi (guardrails): kikomo cha juu cha majaribio, ukaguzi wa mwelekeo, na njia za kuwasilisha kwa binadamu.

Data isiyo na umuhimu huzamisha mantiki. Mifumo ya Retrieval-Augmented Generation mara nyingi huingiza aya hamsini za nyaraka zinazohusiana kidogo kwenye dirisha la muktadha (context window). Wakala (agent) hujikwaa kwenye kelele na kuchagua kifaa kisichofaa au kuleta parameter za kufikirika (hallucinate). Unahitaji kuchuja, kupanga vipaumbele, na kufanya muhtasari mfupi kabla ya modeli kuona maandishi yaliyopatikana.

Wakala anahitaji zaidi ya akili. Anahitaji mfumo: kumbukumbu iliyodhibitiwa, ufuatiliaji wa hali wa wazi, mipaka madhubuti, na telemetri inayoweza kuonekana. Kadiri modeli inavyokuwa bora, ndivyo mfumo huo wa mazingira unavyopaswa kuwa bora zaidi. Modeli yenye nguvu ndani ya mzunguko dhaifu huzalisha tu kushindwa kuelezeka kwa ufasaha zaidi.

Kukamilisha Kazi

Akili ya kweli katika wakala si kuhusu kupata jibu la kwanza kwa usahihi. Ni kuhusu kuvuka pengo kati ya nia na matokeo wakati hakuna kinachoenda kulingana na mpango. Jaribio la kwanza ni rahisi. Mtu yeyote anaweza kuandika msimbo (script) kwa ajili ya njia rahisi (happy path). Sehemu ngumu ni marudio ya nne, wakati API kuu imezimika, dirisha la muktadha linapopungua, mtumiaji anapopoteza subira, na wakala bado anahitaji kutoa kitu chenye manufaa.

Uvumilivu huo ndio unaotofautisha demo na bidhaa. Ni uwezo wa kujifunza kutoka kila hatua, si kwa kusasisha uzito wa modeli (model weights) kwa wakati halisi, bali kwa kusasisha mpango. Wakala anashikilia lengo bila kuyumba wakati mbinu zinapobadilika. Hiyo ndiyo kanuni ya mzunguko (looping principle) inavyofanya kazi.

Kwa hivyo, je, mustakabali ni wa modeli kubwa zaidi au mizunguko bora ya utekelezaji? Ukubwa (scale) bila shaka husaidia. Modeli yenye uwezo zaidi hufanya mantiki vizuri zaidi ndani ya kila mzunguko. Lakini modeli ndogo inayojiendesha ndani ya mzunguko thabiti, unaoweza kuonekana, na wenye ustahimilivu mara nyingi itafanya vizuri zaidi kuliko modeli kubwa inayopewa kazi ya kutatua kila kitu kwa mara moja. Mzunguko ndio unaobadilisha utabiri kuwa kitendo. Wekeza hapo.

Chanzo: Kanuni ya Mzunguko: Mfano Rahisi wa Kiakili wa Kuelewa Wakala wa AI

Kwa majadiliano zaidi kama haya, jiunge na jamii ya kujifunza ya GyaanSetu kwenye Telegram.