107 വൈവിധ്യമാർന്ന ടാസ്ക്കുകൾ ഉപയോഗിച്ചുള്ള ഒരു ബെഞ്ച്മാർക്ക് പരിശോധനയിൽ, സക്സസ് റേറ്റ് (success rate), ലേറ്റൻസി (latency), ടോക്കൺ ചിലവ് (token cost) എന്നിവയിൽ AutoGen, LangGraph, CrewAI എന്നിവയെക്കാൾ മികച്ച പ്രകടനം കാഴ്ചവെക്കുന്നു. ഒരു റണ്ണിന് ശരാശരി 10.2 സെക്കൻഡുകൾ കൊണ്ട് 90% ടാസ്ക്കുകളും പൂർത്തിയാക്കാൻ ഇതിന് സാധിക്കുന്നു, കൂടാതെ വെറും 10,700 ടോക്കണുകൾ മാത്രമാണ് ഇതിന് ഉപയോഗിക്കേണ്ടി വരുന്നത്. പ്രൊഡക്ഷൻ-ഗ്രേഡ് AI പൈപ്പ്‌ലൈനുകൾ നിർമ്മിക്കുന്ന ഡെവലപ്പർമാർക്ക് ഈ കണക്കുകൾ വളരെ പ്രധാനമാണ്, കാരണം സാധാരണ ഡെമോകളിൽ കാണാത്ത മറഞ്ഞിരിക്കുന്ന ചിലവുകളെ ഇവ വെളിപ്പെടുത്തുന്നു.

എന്തുകൊണ്ടാണ് യഥാർത്ഥ ലോക പരിശോധനകൾ (real-world tests) പ്രധാനമാകുന്നത്

ഏജന്റ് ഫ്രെയിംവർക്കുകളുടെ ഭൂരിഭാഗം പബ്ലിക് ഡെമോകളും ഒരു സ്റ്റെപ്പ് മാത്രമുള്ള ഉപയോഗങ്ങളിൽ മാത്രം ഒതുങ്ങിനിൽക്കുന്നു – ഉദാഹരണത്തിന് ഒരു PDF ചാറ്റ്, ലളിതമായ ഒരു സെയിൽസ് ബോട്ട്, അല്ലെങ്കിൽ അടിസ്ഥാനപരമായ ഡാറ്റാ ഫെച്ച് (data fetch). വർക്ക് ലോഡ് ഡസൻ കണക്കിന് സ്റ്റെപ്പുകളിലേക്കും, കണ്ടിഷണൽ ബ്രാഞ്ചുകളിലേക്കും (conditional branches), വലിയ പ്രോംപ്റ്റ് കോൺടെക്സ്റ്റുകളിലേക്കും (large prompt contexts) വികസിക്കുമ്പോൾ സിസ്റ്റങ്ങൾ എങ്ങനെ പ്രവർത്തിക്കുന്നു എന്നത് ഇത്തരം ഉദാഹരണങ്ങളിൽ വ്യക്തമാകുന്നില്ല. പുതിയ ബെഞ്ച്മാർക്ക്, സ്റ്റേറ്റ് ഷെയറിംഗ് (state sharing), പാരലൽ എക്സിക്യൂഷൻ (parallel execution), ടോക്കൺ എഫിഷ്യൻസി (token efficiency) എന്നിവ പരിശോധിക്കുന്ന വൈവിധ്യമാർന്ന സാഹചര്യങ്ങളിലൂടെ ഓരോ ഫ്രെയിംവർക്കിനെയും കടത്തിവിടുമ്പോൾ, പ്രൊഡക്ഷൻ വെല്ലുവിളികളെക്കുറിച്ച് ഡെവലപ്പർമാർക്ക് ഒരു ധാരണ ലഭിക്കുന്നു.

നേരിട്ടുള്ള താരതമ്യം

ഫ്രെയിംവർക്ക് (Framework) സക്സസ് റേറ്റ് (Success rate) ശരാശരി ലേറ്റൻസി (Avg. latency) ശരാശരി ടോക്കൺ ഉപയോഗം (Avg. token use)
AutoGen 90 % 10.2 s 10,700
LangGraph 85 % 12.9 s 11,900
CrewAI 78 % 19.1 s 14,350

ടാസ്കിന്റെ കൃത്യത പരിശോധിക്കുന്നതിനായി ഫൈനൽ ഔട്ട്‌പുട്ട് എത്രത്തോളം ശരിയാണെന്ന് സക്സസ് റേറ്റ് അളക്കുന്നു. ലേറ്റൻസി എന്നത് ഒരു ടാസ്ക് തുടങ്ങുന്നത് മുതൽ അവസാനിക്കുന്നത് വരെയുള്ള സമയമാണ്, ടോക്കൺ ഉപയോഗം എന്നത് മോഡൽ പ്രോസസ്സ് ചെയ്യുന്ന ആകെ പ്രോംപ്റ്റ് ദൈർഘ്യത്തെ സൂചിപ്പിക്കുന്നു (ഇത് ചിലവിന്റെ ഒരു സൂചകമാണ്).

ഫ്രെയിംവർക്കുകളെക്കുറിച്ചുള്ള ആഴത്തിലുള്ള വിശകലനം

AutoGen – വേഗതയും കാര്യക്ഷമതയും, എന്നാൽ ഡീബഗ്ഗിംഗ് പ്രയാസകരമാണ്

AutoGen-ന്റെ ആർക്കിടെക്ചർ മുഴുവൻ പൈപ്പ്‌ലൈനിലും സ്റ്റേറ്റ് പങ്കിടുന്നു, അതിനാൽ ഓരോ സ്റ്റെപ്പിലേക്കും ഒരേ കോൺടെക്സ്റ്റ് വീണ്ടും അയക്കേണ്ടതില്ല. ഇതിലെ ഇൻ-ബിൽറ്റ് അസിൻക്രണസ് എക്സിക്യൂഷൻ (asynchronous execution) സ്വതന്ത്രമായ ബ്രാഞ്ചുകളെ പാരലൽ ആയി പ്രവർത്തിപ്പിക്കാൻ അനുവദിക്കുന്നു, ഇത് ഏറ്റവും കുറഞ്ഞ ലേറ്റൻസിയും ടോക്കൺ ഉപയോഗവും ഉറപ്പാക്കുന്നു. ഇതിന്റെ പോരായ്മ വിസിബിലിറ്റി (visibility) ആണ്: വർക്ക്ഫ്ലോ ഒരു സിംഗിൾ മോണോലിത്തിക് ചെയിൻ (monolithic chain) ആയതുകൊണ്ട്, ഒരു പിഴവ് കണ്ടെത്തുന്നതിന് ഒരു പ്രത്യേക നോഡ് മാത്രം പരിശോധിക്കുന്നതിന് പകരം മുഴുവൻ റണ്ണും പരിശോധിക്കേണ്ടി വരുന്നു.

LangGraph – കൃത്യമായ നിയന്ത്രണം, എന്നാൽ കണ്ടിഷണലുകൾക്കായി കൂടുതൽ കോഡ് ആവശ്യമാണ്

LangGraph-ൽ ഡെവലപ്പർമാർ വർക്ക്ഫ്ലോയെ നോഡുകളുടെ ഒരു ഗ്രാഫ് ആയി പ്രഖ്യാപിക്കേണ്ടതുണ്ട്, ഇത് എക്സിക്യൂഷൻ ഓർഡറിനും സ്റ്റേറ്റ് ട്രാൻസിഷനുകൾക്കും (state transitions) കൃത്യമായ നിയന്ത്രണം നൽകുന്നു. ഇത് CrewAI-യേക്കാൾ നന്നായി സ്റ്റേറ്റ് കൈകാര്യം ചെയ്യുന്നു, അതുവഴി കോൺടെക്സ്റ്റ് ആവർത്തിക്കുന്ന പ്രശ്നം ഒഴിവാക്കുന്നു. എന്നിരുന്നാലും, ഒരു LLM-ന്റെ ഔട്ട്‌പുട്ടിന്റെ അടിസ്ഥാനത്തിൽ ഒരു ബ്രാഞ്ച് മാറേണ്ടി വരുമ്പോൾ, ഡെവലപ്പർമാർക്ക് കൂടുതൽ പ്ലംബിംഗ് കോഡ് (plumbing code) എഴുതേണ്ടി വരുന്നു, ഇത് സിസ്റ്റത്തിന്റെ വ്യക്തത കുറയ്ക്കാനും മെയിന്റനൻസ് ഭാരം കൂട്ടാനും കാരണമാകും.

CrewAI – ഐസൊലേറ്റഡ് ഏജന്റുകൾ, ടോക്കൺ ഉപയോഗം കൂടുന്നു

CrewAI ഒരു ഏജന്റ്-റോൾ മെറ്റാഫോർ (agent-role metaphor) ആണ് സ്വീകരിക്കുന്നത്: ഓരോ റോളും സ്വന്തം പ്രോംപ്റ്റും നിർദ്ദേശങ്ങളുമുള്ള ഒരു സ്വതന്ത്ര യൂണിറ്റായി പ്രവർത്തിക്കുന്നു. ഈ ഐസൊലേഷൻ പ്രത്യേകതയുള്ള ചെറിയ ബോട്ട് ടീമുകൾക്ക് ഉപകാരപ്പെട്ടേക്കാം, എന്നാൽ വലിയ തോതിൽ ഉപയോഗിക്കുമ്പോൾ ഓരോ ഏജന്റിനും ഒരേ കോൺടെക്സ്റ്റ് വീണ്ടും നൽകേണ്ടി വരുന്നത് സിസ്റ്റത്തിന് വലിയ ഭാരമാകുന്നു. ഇതിന്റെ ഫലമായി ഏറ്റവും ഉയർന്ന ടോക്കൺ ഉപയോഗവും ഏറ്റവും കുറഞ്ഞ വേഗതയുമാണ് ലഭിക്കുന്നത്. സ്റ്റേറ്റ് ഷെയറിംഗും ഇതിൽ ദുർബലമാണ്, അതിനാൽ ഒരു ഏജന്റിന്റെ ഔട്ട്‌പുട്ട് മറ്റൊന്നിന് ആവശ്യമായി വരുമ്പോൾ ഡാറ്റാ മിസ്സിംഗ് എററുകൾ (missing-data errors) സംഭവിക്കാം.

ചുരുക്കത്തിൽ: കൂടുതൽ സ്റ്റെപ്പുകൾ ഉൾക്കൊള്ളുന്ന വേഗതയേറിയതും ടോക്കൺ കാര്യക്ഷമതയുള്ളതുമായ ഒരു പൈപ്പ്‌ലൈൻ ആണ് നിങ്ങൾ ആഗ്രഹിക്കുന്നതെങ്കിൽ, ഡീബഗ്ഗിംഗ് പ്രയാസമാണെങ്കിലും AutoGen ആണ് പ്രായോഗികമായ തിരഞ്ഞെടുപ്പ്. കൃത്യമായ എക്സിക്യൂഷൻ ഗ്രാഫ് ആവശ്യമാണെങ്കിൽ കുറച്ചുകൂടി ഗ്ലൂ കോഡ് (glue code) എഴുതാൻ തയ്യാറാണെങ്കിൽ LangGraph തിരഞ്ഞെടുക്കാം. ഐസൊലേഷൻ ഒരു ഗുണമായി കണക്കാക്കുന്ന, പരിമിതമായ ഏജന്റുകൾ മാത്രമുള്ള സാഹചര്യങ്ങളിൽ മാത്രം CrewAI ഉപയോഗിക്കുക.

Source: https://dev.to/priyesh_dave_cb8759cdeca4/agent-frameworks-in-the-real-world-107-task-bakeoff-of-langgraph-crewai-and-autogen-445g Community discussion: https://t.me/GyaanSetuAi