एक जटिल वर्कफ़्लो के लिए एक एजेंट और मल्टी-एजेंट स्वार्म के बीच चयन करना।
→एक सिंगल एजेंट + टूल्स के साथ शुरू करें। मल्टीपल एजेंटों में तभी विभाजित करें जब कार्य सीमाएँ स्पष्ट हों, संदर्भ विंडो ओवरफ्लो हो जाएँ, या प्रति उप-कार्य अलग-अलग मॉडल टियर की आवश्यकता हो।
क्यों: मल्टी-एजेंट विलंबता, त्रुटि सतह और ऑर्केस्ट्रेशन लागत बढ़ाता है। अधिकांश प्रोडक्शन वर्कलोड एक अच्छी तरह से सुसज्जित एजेंट के साथ सफल होते हैं।
एजेंट को फिर से कार्य करने से पहले अवलोकनों के बारे में तर्क करना चाहिए।
→एक ReAct (रीज़न + एक्ट) लूप लागू करें: मॉडल एक विचार उत्पन्न करता है, एक टूल का चयन करता है, परिणाम प्राप्त करता है, और तब तक दोहराता है जब तक कि एक स्टॉप कंडीशन पूरी नहीं हो जाती।
क्यों: ReAct मध्यवर्ती तर्क को दृश्यमान बनाता है, डीबगेबिलिटी में सुधार करता है और आपको विचार श्रृंखला का ऑडिट करने देता है।
एजेंट को बाहरी सिस्टम (APIs, डेटाबेस, फाइल सिस्टम) के साथ इंटरैक्ट करने की आवश्यकता है।
→tool_use API के माध्यम से टूल को परिभाषित करें। मॉडल एक tool_use ब्लॉक उत्सर्जित करता है; आपका कोड इसे निष्पादित करता है और एक tool_result लौटाता है। फिर मॉडल जारी रखता है।
संदर्भ↗
ऑर्केस्ट्रेटर को विषम उप-कार्यों (कोड समीक्षा, वेब खोज, डेटा विश्लेषण) को भेजना चाहिए।
→एक सुपरवाइजर एजेंट का उपयोग करें जो लक्ष्य को विघटित करता है, विशेषज्ञ उप-एजेंटों को प्रतिनिधिमंडल करता है, और परिणामों को एकत्रित करता है। प्रत्येक उप-एजेंट का अपना सिस्टम प्रॉम्प्ट और टूल सेट होता है।
कई उप-एजेंटों को सीधे पीयर-टू-पीयर संचार के बिना समन्वय करना चाहिए।
→सभी इंटर-एजेंट संदेशों को एक सुपरवाइजर के माध्यम से रूट करें। सुपरवाइजर तय करता है कि अगला उप-एजेंट कौन सा चलेगा, संदर्भ पास करता है, और ऑर्डरिंग बाधाओं को लागू करता है।
क्यों: प्रत्यक्ष पीयर मैसेजिंग चक्र बनाता है और स्थिति को ट्रैक करना मुश्किल बनाता है। एक केंद्रीय सुपरवाइजर निष्पादन DAG को स्पष्ट रखता है।
एजेंट को एक मल्टी-टर्न सत्र में संदर्भ याद रखना चाहिए।
→संदेश सरणी में पूरी बातचीत का इतिहास (सिस्टम + पिछले उपयोगकर्ता/सहायक टर्न) पास करें। लंबे सत्रों के लिए, संदर्भ विंडो के भीतर रहने के लिए पुराने टर्न को सारांशित करें।
एजेंट को सत्रों या उपयोगकर्ताओं के बीच निरंतरता की आवश्यकता है।
→तथ्यों को एक बाहरी मेमोरी लेयर (वेक्टर DB, की-वैल्यू स्टोर, फाइल) में स्टोर करें। RAG के माध्यम से प्रासंगिक यादें पुनर्प्राप्त करें और प्रत्येक टर्न में सिस्टम प्रॉम्प्ट में इंजेक्ट करें।
टीम हर LLM फीचर के लिए एजेंटिक आर्किटेक्चर को डिफ़ॉल्ट मानती है।
→एजेंटों का उपयोग न करें जब एक सिंगल प्रॉम्प्ट + संरचित आउटपुट पर्याप्त हो। एजेंट विलंबता, लागत और विफलता मोड जोड़ते हैं। एजेंटिक लूप्स को उन कार्यों के लिए आरक्षित रखें जिनके लिए पुनरावृति या टूल के उपयोग की आवश्यकता होती है।
जटिल तर्क कार्य के लिए उत्तर से पहले अधिक आंतरिक विचार-विमर्श की आवश्यकता होती है।
→budget_tokens पैरामीटर के साथ विस्तारित सोच को सक्षम करें। मॉडल प्रतिक्रिया देने से पहले एक थिंकिंग ब्लॉक का उपयोग करता है, जिससे मल्टी-स्टेप समस्याओं पर सटीकता में सुधार होता है।
क्यों: विस्तारित सोच गुणवत्ता के लिए विलंबता का व्यापार करती है। budget_tokens को कार्य जटिलता के अनुपात में सेट करें; लागत को नियंत्रित करने के लिए इसे सीमित करें।
संदर्भ↗
टूल कॉल एक त्रुटि लौटाता है; एजेंट को शालीनता से ठीक होना चाहिए।
→त्रुटि को is_error: true के साथ tool_result के रूप में लौटाएँ। मॉडल विफलता को देखता है और सुधारे गए मापदंडों के साथ फिर से प्रयास कर सकता है, एक वैकल्पिक टूल आज़मा सकता है, या उपयोगकर्ता को विफलता समझा सकता है।
संदर्भ↗
एक एजेंटिक लूप के दौरान क्षणिक API विफलताएँ (429, 529)।
→जिटर के साथ एक्सपोनेंशियल बैकऑफ लागू करें। 429 (दर सीमा) पर, retry-after हेडर का सम्मान करें। 529 (ओवरलोड) पर, अधिक देर तक बैक ऑफ करें। 400-क्लास त्रुटियों को कभी भी आँख बंद करके दोबारा प्रयास न करें।
यह मापना कि क्या एक एजेंटिक सिस्टम वास्तव में समय के साथ बेहतर होता है।
→एक इवैल सूट बनाएँ: इनपुट-आउटपुट जोड़े को परिभाषित करें, एजेंट चलाएँ, आउटपुट को स्कोर करें (सटीक मिलान, LLM-as-a-judge, मानव समीक्षा)। प्रति रिलीज़ पास दर को ट्रैक करें।
क्यों: इवैल के बिना, प्रॉम्प्ट ट्वीक अनुमान हैं। रिग्रेशन डिटेक्शन के लिए स्वचालित, दोहराने योग्य स्कोरिंग की आवश्यकता होती है।
एजेंट पहले पास में निम्न-गुणवत्ता वाला आउटपुट उत्पन्न करता है।
→एक रिफ्लेक्शन स्टेप जोड़ें: उत्तर उत्पन्न करने के बाद, मॉडल को अपने स्वयं के आउटपुट की आलोचना करने और उसे संशोधित करने के लिए प्रॉम्प्ट करें। एक अलग संदेश टर्न या विस्तारित सोच का उपयोग करें।
एजेंटिक वर्कफ़्लो अपरिवर्तनीय क्रियाएँ (संसाधन हटाना, ईमेल भेजना) करता है।
→विनाशकारी संचालन से पहले एक चेकपॉइंट डालें। उपयोगकर्ता को नियोजित कार्रवाई प्रस्तुत करें, अनुमोदन की प्रतीक्षा करें, फिर निष्पादित करें। ऑडिट के लिए निर्णय लॉग करें।