107 ਵੱਖ-ਵੱਖ ਕੰਮਾਂ ਦੇ ਇੱਕ ਬੈਂਚਮਾਰਕ ਤੋਂ ਪਤਾ ਲੱਗਦਾ ਹੈ ਕਿ AutoGen ਸਫਲਤਾ ਦਰ (success rate), ਲੇਟੈਂਸੀ (latency) ਅਤੇ ਟੋਕਨ ਲਾਗਤ ਦੇ ਮਾਮਲੇ ਵਿੱਚ LangGraph ਅਤੇ CrewAI ਨੂੰ ਪਛਾੜ ਦਿੰਦਾ ਹੈ, ਜੋ ਕਿ ਸਿਰਫ਼ 10,700 ਟੋਕਨਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਔਸਤ 10.2 ਸਕਿੰਟਾਂ ਵਿੱਚ 90% ਮੁਕੰਮਲਤਾ ਦਰ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਪ੍ਰੋਡਕਸ਼ਨ-ਗ੍ਰੇਡ AI ਪਾਈਪਲਾਈਨ ਬਣਾਉਣ ਵਾਲੇ ਡਿਵੈਲਪਰਾਂ ਲਈ ਇਹ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿਉਂਕਿ ਇਹ ਅੰਕ ਅਜਿਹੀਆਂ ਲੁਕੀਆਂ ਹੋਈਆਂ ਲਾਗਤਾਂ ਨੂੰ ਸਾਹਮਣੇ ਲਿਆਉਂਦੇ ਹਨ ਜੋ ਆਮ ਡੈਮੋ ਵਿੱਚ ਕਦੇ ਨਹੀਂ ਦਿਖਾਈ ਦਿੰਦੀਆਂ।
ਅਸਲ ਦੁਨੀਆ ਦਾ ਟੈਸਟ ਕਿਉਂ ਮਹੱਤਵਪੂਰਨ ਹੈ
ਏਜੰਟ ਫਰੇਮਵਰਕਾਂ ਲਈ ਜ਼ਿਆਦਾਤਰ ਜਨਤਕ ਡੈਮੋ ਸਿਰਫ਼ ਇੱਕ-ਪੜਾਅ ਵਾਲੇ ਮਾਮਲਿਆਂ ਤੱਕ ਸੀਮਤ ਹੁੰਦੇ ਹਨ – ਜਿਵੇਂ ਕਿ PDF ਚੈਟ, ਇੱਕ ਸਧਾਰਨ ਸੇਲਜ਼ ਬੋਟ, ਜਾਂ ਬੇਸਿਕ ਡੇਟਾ ਫੈਚ ਕਰਨਾ। ਇਹ ਉਦਾਹਰਣਾਂ ਇਹ ਨਹੀਂ ਦੱਸਦੀਆਂ ਕਿ ਜਦੋਂ ਕੰਮ ਦਾ ਬੋਝ ਦਰਜਨਾਂ ਪੜਾਵਾਂ, ਕੰਡੀਸ਼ਨਲ ਬ੍ਰਾਂਚਾਂ (conditional branches), ਅਤੇ ਵੱਡੇ ਪ੍ਰੋਂਪਟ ਕੰਟੈਕਸਟਾਂ ਤੱਕ ਵਧ ਜਾਂਦਾ ਹੈ ਤਾਂ ਸਿਸਟਮ ਕਿਵੇਂ ਕੰਮ ਕਰਦੇ ਹਨ। ਨਵਾਂ ਬੈਂਚਮਾਰਕ ਹਰੇਕ ਫਰੇਮਵਰਕ ਨੂੰ ਅਜਿਹੇ ਕਈ ਸਥਿਤੀਆਂ (scenarios) ਵਿੱਚੋਂ ਲੰਘਾਉਂਦਾ ਹੈ ਜੋ ਸਟੇਟ ਸ਼ੇਅਰਿੰਗ (state sharing), ਪੈਰਲਲ ਐਗਜ਼ੀਕਿਊਸ਼ਨ (parallel execution), ਅਤੇ ਟੋਕਨ ਕੁਸ਼ਲਤਾ ਦੀ ਪਰਖ ਕਰਦੇ ਹਨ, ਜਿਸ ਨਾਲ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਪ੍ਰੋਡਕਸ਼ਨ ਦੀਆਂ ਚੁਣੌਤੀਆਂ ਦੀ ਝਲਕ ਮਿਲਦੀ ਹੈ।
ਆਹਮੋ-ਸਾਹਮਣੇ ਦੇ ਅੰਕੜੇ
| ਫਰੇਮਵਰਕ | ਸਫਲਤਾ ਦਰ | ਔਸਤ ਲੇਟੈਂਸੀ | ਔਸਤ ਟੋਕਨ ਵਰਤੋਂ |
|---|---|---|---|
| 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) ਹੈ: ਕਿਉਂਕਿ ਵਰਕਫਲੋ ਇੱਕ ਸਿੰਗਲ, ਮੋਨੋਲਿਥਿਕ ਚੇਨ ਵਿੱਚ ਹੁੰਦਾ ਹੈ, ਇਸ ਲਈ ਕਿਸੇ ਗਲਤੀ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ ਅਕਸਰ ਕਿਸੇ ਇੱਕ ਨੋਡ ਨੂੰ ਵੱਖ ਕਰਨ ਦੀ ਬਜਾਏ ਪੂਰੇ ਰਨ ਦੀ ਜਾਂਚ ਕਰਨੀ ਪੈਂਦੀ ਹੈ।
LangGraph – ਸਪੱਸ਼ਟ ਕੰਟਰੋਲ, ਕੰਡੀਸ਼ਨਲਜ਼ ਲਈ ਵਾਧੂ ਕੋਡ
LangGraph ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਵਰਕਫਲੋ ਨੂੰ ਨੋਡਾਂ ਦੇ ਗ੍ਰਾਫ ਵਜੋਂ ਘੋਸ਼ਿਤ ਕਰਨ ਲਈ ਮਜਬੂਰ ਕਰਦਾ ਹੈ, ਜੋ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਦੇ ਕ੍ਰਮ ਅਤੇ ਸਟੇਟ ਟ੍ਰਾਂਜ਼ੀਸ਼ਨਾਂ 'ਤੇ ਬਾਰੀਕ ਕੰਟਰੋਲ ਦਿੰਦਾ ਹੈ। ਇਹ CrewAI ਨਾਲੋਂ ਬਿਹਤਰ ਤਰੀਕੇ ਨਾਲ ਸਟੇਟ ਨੂੰ ਸੰਭਾਲਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਵਾਰ-ਵਾਰ ਕੰਟੈਕਸਟ ਭੇਜਣ ਦੀ ਸਮੱਸਿਆ ਤੋਂ ਬਚਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਹਾਲਾਂਕਿ, ਜਦੋਂ ਕਿਸੇ ਬ੍ਰਾਂਚ ਨੂੰ LLM ਦੇ ਆਉਟਪੁੱਟ ਦੇ ਅਧਾਰ 'ਤੇ ਬਦਲਣਾ ਪੈਂਦਾ ਹੈ, ਤਾਂ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਵਾਧੂ ਕੋਡ (plumbing code) ਲਿਖਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਜੋ ਕਿ ਸਪੱਸ਼ਟਤਾ ਦੇ ਫਾਇਦੇ ਨੂੰ ਘਟਾ ਸਕਦਾ ਹੈ ਅਤੇ ਰੱਖ-ਰਖਾਅ ਦਾ ਬੋਝ ਵਧਾ ਸਕਦਾ ਹੈ।
CrewAI – ਵੱਖਰੇ ਏਜੰਟ, ਟੋਕਨਾਂ ਦੀ ਵਾਧੂ ਵਰਤੋਂ
CrewAI ਇੱਕ ਏਜੰਟ-ਰੋਲ ਮੈਟਾਫੋਰ (metaphor) ਅਪਣਾਉਂਦਾ ਹੈ: ਹਰ ਭੂਮਿਕਾ ਆਪਣੇ ਪ੍ਰੋਂਪਟ ਅਤੇ ਨਿਰਦੇਸ਼ਾਂ ਦੇ ਨਾਲ ਇੱਕ ਸੁਤੰਤਰ ਇਕਾਈ ਵਜੋਂ ਕੰਮ ਕਰਦੀ ਹੈ। ਇਹ ਅਲਗਥਲ ਰਹਿਣਾ ਵਿਸ਼ੇਸ਼ ਬੋਟਾਂ ਦੀਆਂ ਛੋਟੀਆਂ ਟੀਮਾਂ ਲਈ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦਾ ਹੈ, ਪਰ ਵੱਡੇ ਪੱਧਰ 'ਤੇ ਇਹ ਸਿਸਟਮ ਨੂੰ ਹਰ ਏਜੰਟ ਲਈ ਇੱਕੋ ਜਿਹਾ ਕੰਟੈਕਸਟ ਦੁਹਰਾਉਣ ਲਈ ਮਜਬੂਰ ਕਰਦਾ ਹੈ। ਨਤੀਜੇ ਵਜੋਂ ਟੋਕਨ ਦੀ ਵਰਤੋਂ ਸਭ ਤੋਂ ਵੱਧ ਹੁੰਦੀ ਹੈ ਅਤੇ ਰਨ ਸਭ ਤੋਂ ਹੌਲੀ ਹੁੰਦੇ ਹਨ। ਸਟੇਟ ਸ਼ੇਅਰਿੰਗ ਵੀ ਕਮਜ਼ੋਰ ਹੈ, ਜਿਸ ਕਾਰਨ ਕਦੇ-ਕਦੇ ਡੇਟਾ ਗੁੰਮ ਹੋਣ ਦੀਆਂ ਗਲਤੀਆਂ ਆ ਸਕਦੀਆਂ ਹਨ ਜਦੋਂ ਕਿਸੇ ਇੱਕ ਏਜੰਟ ਦੇ ਆਉਟਪੁੱਟ ਦੀ ਲੋੜ ਅਗਲੇ ਪੜਾਅ ਵਿੱਚ ਪੈਂਦੀ ਹੈ।
ਸਿੱਖਿਆ (Takeaway): ਜੇਕਰ ਤੁਹਾਨੂੰ ਇੱਕ ਤੇਜ਼, ਟੋਕਨ-ਕੁਸ਼ਲ ਪਾਈਪਲਾਈਨ ਦੀ ਲੋੜ ਹੈ ਜੋ ਕਈ ਪੜਾਵਾਂ ਨੂੰ ਜੋੜਦੀ ਹੈ, ਤਾਂ ਡੀਬੱਗ ਕਰਨ ਵਿੱਚ ਮੁਸ਼ਕਲ ਹੋਣ ਦੇ ਬਾਵਜੂਦ AutoGen ਇੱਕ ਵਿਹਾਰਕ ਚੋਣ ਹੈ। 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
