ઇન્ટરનેટે નક્કી કર્યું છે કે આ એજન્ટનું વર્ષ છે. LangGraph, CrewAI, અને AutoGen એ દરેક એન્જિનિયરિંગ રોડમેપ પરના નામ છે. ટીમો ઓર્કેસ્ટ્રેશન લેયર્સનું સ્ટ્રેસ-ટેસ્ટિંગ કરી રહી છે, સ્ટેટ મશીન્સ વિરુદ્ધ રોલ-પ્લે પર ચર્ચા કરી રહી છે, અને વિચારી રહી છે કે કઈ લાઇબ્રેરી આખરે લાર્જ લેંગ્વેજ મોડલ્સને સ્વાયત્ત (autonomous) બનાવશે.

અહીં એક અસુવિધાજનક સત્ય છે: તેમાંથી મોટાભાગની સરખામણીઓ અકાળે છે. ફ્રેમવર્ક અઘરો ભાગ નથી. અઘરો ભાગ એ છે કે આપણે આપણી પરિભાષાઓ વ્યાખ્યાયિત કરવાનું બંધ કરી દીધું છે. લોકો હવે બધું જ 'એજન્ટ' કહે છે. ટૂલ કોલ એ એજન્ટ નથી. ચેટબોટ એ એજન્ટ નથી. આ અસ્પષ્ટ વ્યાખ્યા સીધી ખરાબ એન્જિનિયરિંગ, વધુ પડતા જટિલ સિસ્ટમ્સ અને પ્રોડક્શન આઉટેજ તરફ દોરી જાય છે જેને એક સાદા સ્ક્રિપ્ટથી ટાળી શકાયું હોત.

તમે ફ્રેમવર્ક પસંદ કરો તે પહેલાં, તમે ખરેખર શું બનાવી રહ્યા છો તેની વ્યાખ્યા નક્કી કરો.

એજન્ટ ખરેખર શું છે

એજન્ટ તેના પર ચાલતા મોડલ અથવા તે કરેલા API કોલ્સની સંખ્યા દ્વારા વ્યાખ્યાયિત થતો નથી. એજન્ટ તેના વર્તન દ્વારા વ્યાખ્યાયિત થાય છે. તેની પાસે સ્પષ્ટ ઉદ્દેશ્ય હોવો જોઈએ. માનવી અગાઉથી માર્ગ નક્કી ન કરે તો પણ તેણે નક્કી કરવું જોઈએ કે આગળ કયું પગલું લેવું. જ્યારે તે પગલું નિષ્ફળ જાય ત્યારે તેણે તેને સંભાળવું જોઈએ. અને તેણે ક્યારે અટકવું તે જાણવું જોઈએ.

એક સપોર્ટ સિસ્ટમ વિશે વિચારો જે આવતા ઈમેલને વાંચે છે, તેને રિફંડ વિનંતી તરીકે વર્ગીકૃત કરે છે, ઓર્ડર નંબર કાઢે છે, શિપિંગ ડેટાબેઝમાં ક્વેરી કરે છે, રિટર્ન પોલિસી વિન્ડો તપાસે છે, પ્રતિસાદનો ડ્રાફ્ટ તૈયાર કરે છે અને ટિકિટ રિઝોલ્વ તરીકે માર્ક કરે છે. જો ડેટાબેઝ ટાઈમ આઉટ થાય, તો તે રાહ જુએ છે અને ફરી પ્રયાસ કરે છે. જો પોલિસી વિન્ડો અસ્પષ્ટ હોય, તો તે માનવીને જાણ કરે છે. જ્યારે પ્રતિસાદ મોકલવામાં આવે છે, ત્યારે તે અટકી જાય છે. તે એજન્ટ છે. JSON રિટર્ન કરેલા સિંગલ LLM કોલની આસપાસનું વ્રેપર (wrapper) એજન્ટ નથી, ભલે માર્કેટિંગ ટીમ તેના પર ગમે તેટલા "એજન્ટ" સ્ટીકરો લગાવે.

આ તફાવત મહત્વનો છે કારણ કે જટિલતાની એક કિંમત હોય છે. જે સિસ્ટમને સ્વાયત્તતાની જરૂર નથી તેણે તેની કિંમત ચૂકવવી જોઈએ નહીં.

પ્રોડક્શન AI નું વાસ્તવિક સ્વરૂપ

અત્યારે પ્રોડક્શનમાં ચાલતી મોટાભાગની AI સિસ્ટમ્સ નેરો (narrow) છે. તેઓ એક કામ સારી રીતે કરે છે. તેઓ સપોર્ટ ટિકિટોને ક્યુ (queues) માં વર્ગીકૃત કરે છે. તેઓ સ્કેન કરેલા દસ્તાવેજોમાંથી એક્સપાયરી તારીખો કાઢે છે. તેઓ ગ્રાહકોના પ્રશ્નોને હાલના નોલેજ બેઝ આર્ટિકલ્સ સાથે મેચ કરે છે. તેઓ જનરલ રીઝનિંગ એન્જિન્સ નથી, અને તેઓ એવા હોવાનો ડોળ કરવો એ ખરાબ પ્રકારના ઓવર-એન્જિનિયરિંગ તરફ દોરી જાય છે.

તે મોડલ રિલીઝ પ્રત્યેના વિનાશક આસક્તિ તરફ પણ દોરી જાય છે. ટીમો નવા ફાઉન્ડેશન મોડલ પાછળ એવી રીતે દોડે છે જાણે કે તે ખરાબ આર્કિટેક્ચરની ભરપાઈ કરશે. તે નહીં કરે. એરર હેન્ડલિંગ વગરના બરડ લૂપમાં ચાલતું વધુ સક્ષમ મોડલ ફક્ત વધુ આત્મવિશ્વાસ અને વધુ સર્જનાત્મક હેલ્યુસિનેશન (hallucinations) સાથે નિષ્ફળ જશે. બેન્ચમાર્ક પાછળ દોડવાનું બંધ કરો. સ્ટ્રક્ચર પાછળ દોડવાનું શરૂ કરો.

ફ્રેમવર્ક એ પ્રોડક્ટ નથી

LangGraph તમને સ્પષ્ટ સ્ટેટ મશીન્સ અને સાયકલ આપે છે. CrewAI રોલ-આધારિત ઓર્કેસ્ટ્રેશન પર ધ્યાન કેન્દ્રિત કરે છે જ્યાં એજન્ટો પર્સના (personas) અપનાવે છે. AutoGen વાતચીત કરતા એજન્ટો પર કેન્દ્રિત છે જે સમસ્યાઓ ઉકેલવા માટે એકબીજા સાથે ચેટ કરે છે. તેઓ બધા સક્ષમ સાધનો છે. તેઓ કંટ્રોલ ફ્લો માટે મૂળભૂત રીતે અલગ અભિગમો પણ છે.

પરંતુ તમે જે ફ્રેમવર્ક પસંદ કરો છો તેના કરતા તમે તેની અંદર કયા પેટર્ન લાગુ કરો છો તે વધુ મહત્વનું છે. મેં ટીમોને માત્ર Python અને Redis નો ઉપયોગ કરીને રોક-સોલિડ ઓટોમેશન મોકલતા જોયા છે કારણ કે તેઓએ સીમાઓનું સન્માન કર્યું હતું. મેં અન્ય ટીમોને ફેન્સી ઓર્કેસ્ટ્રેશનના ભાર હેઠળ તૂટી પડતા જોયા છે કારણ કે તેઓએ ફ્રેમવર્કને ડિઝાઇનના વિકલ્પ તરીકે જોયું હતું.

જો તમારા હેન્ડઓફ અસ્પષ્ટ હોય, તમારા ટૂલ્સ બરડ હોય અને તમારું રિટ્રાય લોજિક અસ્તિત્વમાં ન હોય, તો તમારા requirements.txt પરનો લોગો તમને બચાવી શકશે નહીં.

ત્રણ વસ્તુઓ જે ખરેખર તમારા સમયને લાયક છે

જો તમે એજન્ટિક સિસ્ટમ્સ બનાવી રહ્યા હોવ, તો તમારો પ્રયાસ આ ત્રણ ક્ષેત્રોમાં લગાવો.

ટૂલ ડિઝાઇન. તમારો એજન્ટ જે દરેક ફંક્શન કોલ કરી શકે છે તે ઇન્ટરફેસમાં લપેટાયેલું એક જોખમ (liability) છે. તેને ટાઈટલી ડિઝાઇન કરો. ઇનપુટ્સને આક્રમક રીતે વેલિડેટ કરો. એરર્સ એવા રિટર્ન કરો જે ખરેખર વાંચી શકાય તેવા હોય, 500 ડમ્પ નહીં. સારું ટૂલ એ છે જેના વિશે એજન્ટ કંઈક ખોટું થાય ત્યારે તર્ક કરી શકે.

ફેઈલ્યોર હેન્ડલિંગ. માની લો કે દરેક LLM