Muundo wa PRG kwa Ajenti za AI

Ajenti za AI zinakumbana na tatizo la zamani. Ni hitilafu ileile iliyoharibu fomu za wavuti katika miaka ya 90.

Katika siku za zamani za wavuti, mtumiaji angepitisha fomu. Ikiwa angebonyeza refresh, kivinjari kingetuma data hiyo tena. Hii ilimaanisha oda mbili, malipo mawili, au barua pepe mbili.

Suluhisho lilikuwa ni muundo wa Post/Redirect/Get (PRG).

Mantiki ni rahisi:

  • Mtumiaji anatuma ombi la POST.
  • Seva inashughulikia kazi hiyo.
  • Seva inatuma 302 Redirect kwenye URL mpya.
  • Kivinjari kinafuata redirect hiyo kwa ombi la GET.

Sasa, kubonyeza refresh kunapakia upya ukurasa wa matokeo pekee. Haikariri kitendo hicho.

Ajenti za AI zimeleta hitilafu hii katika ngazi mpya.

Wakati ajenti anapoita kifaa (tool) ili kutoza kadi au kutengeneza rekodi, mambo yanaenda mrama. Mtandao unaweza kukatika. Kontena (container) linaweza kuanza upya. Kikomo cha kasi (rate limit) kinaweza kuingilia kati. Ajenti hajui ikiwa ombi la mwisho lilifanya kazi. Kwa hivyo, anajaribu tena.

Bila suluhisho, ajenti hutengeneza oda zinazojirudia na kutoza malipo kwa wateja wenye hasira.

Lazima utumie muundo wa PRG kwenye mifumo yako ya ajenti (agentic pipelines) kwa kutumia funguo za idempotency (idempotency keys).

Funguo ya idempotency ndiyo redirect yako. Inatenganisha kitendo na matokeo.

Jinsi ya kuitekeleza:

  • Kila kifaa kinachobadilisha data (mutating tool) lazima kipokee funguo ya idempotency.
  • Tengeneza funguo hiyo kabla ya jaribio la kwanza.
  • Chota funguo hiyo kutoka kwenye nia ya mtumiaji, siyo kutoka kwenye muda (timestamp).
  • Seva lazima ikague ikiwa ilishawahi kuiona funguo hiyo hapo awali.
  • Ikiwa funguo hiyo ipo, rudisha matokeo yaliyohifadhiwa badala ya kuendesha kazi hiyo tena.

Kwa kazi ndefu, unahitaji zaidi ya funguo tu. Unahitaji checkpointing.

Checkpointing huhifadhi hali (state) katika kila hatua. Ikiwa ajenti atafeli katikati ya kazi ya dakika ishirini, ataendelea pale alipoishia. Haianzi upya.

Ikiwa unaweza kufanya jambo moja tu, hakikisha kila wito wa kifaa (tool call) ni salama kuendeshwa mara mbili.

Jenga ajenti zako kwa ukaguzi huu mitano:

  • Je, kila kifaa kinapokea funguo ya idempotency?
  • Je, funguo hiyo inategemea nia badala ya muda?
  • Je, funguo hiyo inatumiwa tena katika kila jaribio la marudio?
  • Je, seva inarudisha matokeo yaliyohifadhiwa kwa funguo zinazojirudia?
  • Je, hatua za kati zinahifadhiwa kwa kazi ndefu?

Muundo ni ule ule. Ni ngazi tu iliyobadilika.

Chanzo: https://dev.to/ravikiran438/the-prg-pattern-for-ai-agents-a-25-year-old-fix-coming-of-age-in-a-new-era-23fh