कंटेंट पर जाएं

ElevenLabs एजेंट्स की वॉइस ऑर्केस्ट्रेशन के साथ बाहरी एजेंट्स का इंटीग्रेशन

लेखक
Nicolas Bernier
प्रकाशित
आखिरी बार अपडेट किया गया

सुनेंइस आर्टिकल को सुनें

फ्रंटियर एजेंट ऑर्केस्ट्रेटर अब जटिल काम संभालने और एंटरप्राइज़ टूलिंग के पूरे सेट में काम करने में लगातार सक्षम हो रहे हैं। इसके लिए एप्लिकेशन, बातचीत और सिस्टम स्टेट को सावधानी से मैनेज करना ज़रूरी है। वॉइस के अलावा अन्य मोडैलिटी के लिए, कॉन्टेक्स्ट इंजीनियरिंग, के नाम से आम पैटर्न उभरे हैं, जिनका उद्देश्य किसी एजेंट के सिस्टम प्रॉम्प्ट के आसपास इंटरैक्शन बढ़ने के साथ एक जैसी प्रथाएं बनाना है। वॉइस जोड़ने से न सिर्फ़ वॉइस इंटरैक्शन के हिस्सों को मैनेज करने के लिए स्टेट की एक अतिरिक्त परत आती है, बल्कि आदर्श रूप से दूसरी मोडैलिटी पर पहले किए गए काम के आर्टिफ़ैक्ट्स दोबारा इस्तेमाल करने की सुविधा भी मिलती है। 

इस पोस्ट में, हम बताते हैं कि ElevenLabs Agents बाहरी एजेंट को कैसे सपोर्ट करते हैं और कौन से पैटर्न उनके इंटीग्रेशन पर बारीक नियंत्रण देते हैं। इन तरीकों से ग्राहक अपने व्यापक ऑर्केस्ट्रेशन का पूरा मालिकाना बनाए रखते हुए ElevenLabs के बेहतरीन वॉइस ऑर्केस्ट्रेशन का लाभ ले सकते हैं।

मुख्य कॉम्पोनेंट

ElevenLabs Agents

अपने सबसे सरल रूप में, ElevenLabs Agent को Websocket क्लाइंट के ज़रिए एक्सेस किया जा सकता है। बातचीत में सर्वर और क्लाइंट इवेंट्स को दर्शाने वाली जानकारी JSON ऑब्जेक्ट्स के रूप में एजेंट तक और एजेंट से जाती है। जब एजेंट यूज़र की आवाज़ को ट्रांसक्राइब करता है, तो वह तुरंत जनरेशन रिक्वेस्ट ट्रिगर करता है। हम ज़्यादातर प्रमुख मॉडल प्रोवाइडर को सपोर्ट करते हैं और ग्राहकों को अपना Custom LLM लाने की सुविधा देते हैं। जनरेशन रिक्वेस्ट का जवाब देने के लिए Custom LLM के पीछे कोई अधिक जटिल ऑर्केस्ट्रेटर (एजेंट) लाते समय, ग्राहकों को यह सुनिश्चित करना चाहिए कि वह OpenAI के Chat Completions या Responses API में से किसी एक को सपोर्ट करता हो। अच्छी बात यह है कि ज़्यादातर प्रमुख एजेंट-बिल्डिंग फ़्रेमवर्क (CrewAI, LangChain, LangGraph, HayStack, LlamaIndex, ...) इस API फ़ॉर्मैटिंग स्पेसिफ़िकेशन को आसानी से सपोर्ट करते हैं। 

इंटीग्रेशन के बाद, इन एजेंट को अक्सर अपने पीछे मौजूद वॉइस ऑर्केस्ट्रेटर की परवाह किए बिना किसी भी समय अपनी आंतरिक और बाहरी स्टेट को पढ़ने और अपडेट करने की क्षमता चाहिए होती है। इसे प्रभावी ढंग से मैनेज करने से मौजूदा टेक्स्ट-ओनली एजेंट के साथ एकरूपता बनी रहती है। 

स्टेट मैनेजमेंट

परिभाषा के अनुसार, अपने परिवेश में कुशलता से काम करने के लिए एजेंट को जिस डेटा को ट्रैक करना होता है, वह काम के हिसाब से अलग होता है। बाहरी एजेंट से चलने वाले ElevenLabs Agents के लिए, कुछ स्पष्ट रूप से तय श्रेणियों में स्टेट बनाए रखना उपयोगी है।

आंतरिक स्टेट बातचीत की गतिशीलता को नियंत्रित करती है। एजेंट की आंतरिक स्टेट के हिस्से के रूप में ट्रैक किए जाने वाले एलिमेंट्स के उदाहरण:

  • मौजूदा बातचीत का प्रवाह, जिसमें वॉइस ऐक्टिविटी, रुकावटें और सक्रिय वक्ता की पहचान शामिल हैं।
  • रियल-टाइम ट्रांसक्रिप्ट विश्लेषण से मिली एप्लिकेशन-विशिष्ट जानकारी, जैसे पहचाने गए इंटेंट, एंटिटी या सेंटिमेंट।
  • रीज़निंग ट्रेस, जिसमें बीच के विचार, परिकल्पनाएं और समाधान बनाने के पिछले प्रयास शामिल हैं।
  • कॉन्फ़िगरेशन और ऑपरेशनल पैरामीटर, जैसे उसके सक्रिय लक्ष्य, ऑपरेशन का मोड और इंटरैक्शन के दौरान उसके व्यवहार को निर्देशित करने वाली अस्थायी सीमाएं।

इसके विपरीत, बाहरी स्टेट मुख्य रूप से उन प्रासंगिक सिस्टम और व्यक्तियों पर केंद्रित होती है, जिनसे एजेंट इंटरैक्ट करता है या जिन्हें प्रभावित करता है। एजेंट की बाहरी स्टेट के हिस्से के रूप में ट्रैक किए जाने वाले एलिमेंट्स के उदाहरण:

  • उन अन्य यूज़र या सिस्टम की स्थिति जिनसे यह इंटरैक्ट करता है, जैसे उनके मौजूदा लक्ष्य, उपलब्धता या अनुमतियां।
  • टूल और नॉलेज बेस, जैसे API, डेटाबेस या इंटीग्रेशन, जो एजेंट की काम करने की क्षमता को प्रभावित कर सकते हैं।
  • बाहरी एक्टर्स या सिस्टम से जुड़े चल रहे काम और डिपेंडेंसी, जो एजेंट के अगले कदमों को प्रभावित करते हैं।

हम यूज़र के साथ एजेंट के संबंध के पूरे लाइफ़साइकल में इस जानकारी को भरोसेमंद तरीके से बनाए रखने का एक सामान्य पैटर्न बताते हैं।

सॉल्यूशन कॉम्पोनेंट

ओवरव्यू 

इस सेक्शन में, हम जटिल बाहरी एजेंट को सफलतापूर्वक इंटीग्रेट करने के लिए ज़रूरी आर्किटेक्चर कॉम्पोनेंट और इम्प्लीमेंटेशन विवरण कवर करते हैं। इस तरीके का केंद्र सभी सर्विस में किसी सेशन को दर्शाने वाले मनमाने लेकिन यूनिक आइडेंटिफ़ायर को प्रॉक्सी करने की क्षमता है। कस्टम LLM इस्तेमाल करने वाले ElevenLabs Agents के लिए, कॉल शुरू करते समय extra body ऑब्जेक्ट में LLM पैरामीटर के रूप में ज़रूरी आइडेंटिफ़ायर पास करके यह आसानी से किया जा सकता है, जिसे कन्वर्सेशन ओवरराइड्स के हिस्से के रूप में भेजा जाता है। ऐसा करने से आइडेंटिफ़ायर यूज़र से होते हुए ElevenLabs Agent के माध्यम से बाहरी एजेंट तक पहुंचता है। 

diagram describing the flow from user to elevenlabs websocket to custom llm to stateful proxy to external agent

कस्टम LLM के पीछे मौजूद स्टेटफुल प्रॉक्सी पर ध्यान दें। आम तौर पर मौजूद न रहने वाली यह सर्विस, हमें अलग-अलग जनरेशन रिक्वेस्ट को बाहरी एजेंट से कनेक्शन दर्शाने वाले मनमाने आइडेंटिफ़ायर से मैप करने देती है। इस सर्विस के इम्प्लीमेंटेशन का मालिकाना बाहरी एजेंट डेवलपर के पास होता है। अपने सबसे सरल रूप में, प्रॉक्सी यूनिक आइडेंटिफ़ायर से दर्शाए गए ऐसे कनेक्शन मैनेज करती है, जो ElevenLabs बातचीत या कॉल SID (टेलीफ़ोनी के लिए) से मैप होते हैं। वहीं, अधिक उन्नत वर्ज़न बातचीत की मैपिंग में एक हायरार्की जोड़ सकते हैं, जो कई इंटरैक्शन तक फैले अधिक जटिल ग्राहक संबंधों को दर्शाती है।

Comparison of mapping ids for one to one versus one to many cases. In the case of one to many, there is a hierarchy grouping multiple conversations ids together.

इन अधिक उन्नत कॉन्फ़िगरेशन में, प्रॉक्सी ऐसे अतिरिक्त आइडेंटिफ़ायर बनाए रखती है जो एक डाउनस्ट्रीम सेशन से जुड़ी एक रिक्वेस्ट से आगे जाते हैं। हर आइडेंटिफ़ायर केवल एक बातचीत या कॉल SID को दर्शाने के बजाय, प्रॉक्सी एक आइडेंटिफ़ायर को कई संबंधित इंटरैक्शन से जोड़ सकती है। इससे सिस्टम अलग-अलग चैनल में चलने वाली ग्राहक यात्राओं को फ़ॉलो कर सकता है, पुराने कॉन्टेक्स्ट का दोबारा इस्तेमाल कर सकता है और एक साथ कई इंटरैक्शन को कोऑर्डिनेट कर सकता है। उदाहरण के लिए, एक मैपिंग कई वेब चैट सेशन, फ़ॉलो-अप वॉइस कॉल और आंतरिक सपोर्ट वर्कफ़्लो को एक ही लॉजिकल ग्राहक आइडेंटिफ़ायर के तहत समूहित कर सकती है। फिर प्रॉक्सी कस्टम LLM के पीछे एक यूनिफ़ाइड स्टेट बनाए रखते हुए, आसान नियमों के आधार पर रिक्वेस्ट को सही आइडेंटिफ़ायर तक रूट कर सकती है। इससे बाहरी एजेंट द्वारा मैनेज किए जाने वाले अधिक लचीले और स्थायी मल्टी-स्टेप इंटरैक्शन संभव होते हैं।

मैसेज पासिंग

जनरेशन रिक्वेस्ट को उच्च-स्तरीय एंटिटी से सफलतापूर्वक मैप करने के अलावा, स्टेटफुल प्रॉक्सी API रिक्वेस्ट के ज़रिए एप्लिकेशन फ़्रंटएंड या अलग राउटर सर्विस जैसे बाहरी स्रोतों के साथ द्विदिश मैसेज पासिंग को सपोर्ट कर सकती है। जिन एप्लिकेशन में इसकी ज़रूरत होती है, वहां ElevenLabs Agents को यह जानने की ज़रूरत नहीं होती कि मैसेज अन्य सर्विस को भेजे जा रहे हैं।  

मिसाल के तौर पर, बाहरी एजेंट के लिए चल रही वॉइस ऐक्टिविटी की जानकारी होना अक्सर उपयोगी होता है, ताकि वह तय कर सके कि यूज़र बोल रहा है या नहीं, कितनी देर से बोल रहा है और उसे पहले से कोई कार्रवाई करनी चाहिए या नहीं। ये इनसाइट्स सीधे निकाली और उन पर कार्रवाई की जा सकती है, अगर ElevenLabs Agents द्वारा दिए गए प्रोसेस्ड वॉइस ऐक्टिविटी डिटेक्शन (VAD) स्कोर को क्लाइंट इवेंट्स के रूप में पास किया जाए, जो बातचीत के websocket से मिलते हैं। ElevenLabs से स्कोर मिलने पर, क्लाइंट एप्लिकेशन एप्लिकेशन की ज़रूरतों के अनुसार VAD क्लाइंट इवेंट्स को स्टेटफुल प्रॉक्सी तक फ़ॉरवर्ड कर सकता है और यह सुनिश्चित कर सकता है कि मैसेज में मनमाना सेशन आइडेंटिफ़ायर शामिल हो। स्टेटफुल प्रॉक्सी के लिए ऐसी रिक्वेस्ट मैपिंग लॉजिक लागू करना ज़रूरी है, जो सेशन के मौजूदा कनेक्शन की सबसे सटीक पहचान करे। 

इस पैटर्न को क्लाइंट के किसी भी इवेंट के लिए बढ़ाया जा सकता है, बशर्ते उसे JSON ब्लॉक के रूप में व्यक्त किया जा सके। हालांकि, एजेंट से शुरू होने वाले इवेंट्स को एक्सपोज़ करना भी उपयोगी है। इसका एक आम उदाहरण टूल कॉल या नॉलेज बेस क्वेरी के लाइफ़साइकल से जुड़ा है, जो बाहरी सिस्टम पर ऑपरेशन दर्शाते हैं। आज एंटरप्राइज़ जो एजेंट बना रहे हैं, उनके लिए ये तरीके बुनियादी हैं।

कस्टम LLM के ज़रिए बाहरी एजेंट को इंटीग्रेट करते समय, ElevenLabs की टूल कॉलिंग और रिट्रीवल ऑगमेंटेड जनरेशन (RAG) सुविधाओं को अक्सर बाहरी एजेंट के अपने इम्प्लीमेंटेशन के पक्ष में बायपास किया जाता है। नतीजतन, इन कॉम्पोनेंट का मालिकाना पूरी तरह बाहरी एजेंट प्रोवाइडर के पास होता है। एप्लिकेशन को फिर भी टूल ऐक्टिविटी की विज़िबिलिटी का फ़ायदा मिलता है, क्योंकि इससे वे एजेंट की प्रगति दिखा सकते हैं और उसके अनुसार एंड यूज़र अनुभव अपडेट कर सकते हैं।

यह विज़िबिलिटी देने के लिए, जब भी टूल इनवोक किए जाते हैं, बाहरी एजेंट रिक्वेस्ट और रिस्पॉन्स—दोनों के लिए मैसेज भेजता है। स्टेटफुल प्रॉक्सी इन मैसेज को क्लाइंट एप्लिकेशन तक फ़ॉरवर्ड करती है, जो उन्हें एक डेडिकेटेड मैसेज क्यू के ज़रिए हैंडल करते हैं। यह ElevenLabs Agents के क्लाइंट इवेंट्स में इस्तेमाल होने वाले तरीकों जैसा है और सुनिश्चित करता है कि एप्लिकेशन ट्रैक कर सकें कि एजेंट कब किसी बाहरी सिस्टम से पढ़ता है या उसे बदलता है।

Diagram showing the message passing flow between some frontend application and the stateful proxy bypassing the elevenlabs agent.

इस तरह, इन मुख्य कॉम्पोनेंट का इस्तेमाल और प्रॉक्सी व क्लाइंट एप्लिकेशन के बीच द्विदिश मैसेज पासिंग सक्षम करने से ग्राहक ElevenLabs Agents में बाहरी एजेंट को इंटीग्रेट कर सकते हैं, ताकि वे केवल उसके दिए वॉइस ऑर्केस्ट्रेशन का इस्तेमाल करें और LLM ऑर्केस्ट्रेशन के सभी हिस्सों का मालिकाना बनाए रखें। 

इसे स्टेट से जोड़ना

जटिल बाहरी एजेंट को प्रभावी ढंग से सपोर्ट करने के लिए प्रॉक्सी और एजेंट के बीच ज़िम्मेदारियों का स्पष्ट बंटवारा ज़रूरी है, खासकर स्टेट मैनेजमेंट के मामले में। इस मॉडल में, प्रॉक्सी की ज़िम्मेदारी एप्लिकेशन की ज़रूरतों के अनुसार समूहित प्रासंगिक इंटरैक्शन की टेबल बनाए रखना और स्टेटलेस रहने वाली लॉजिक के ज़रिए अपने और एजेंट के बीच मैसेज रूट करना है। वहीं, बाहरी एजेंट को उन सभी महत्वपूर्ण आंतरिक और बाहरी जानकारी को हैंडल और स्टोर करना चाहिए, जो कुल स्टेट में योगदान देती है।

हालांकि इस अलगाव को कम करने से मौजूदा सॉल्यूशन पर दोबारा काम और घट सकता है, लेकिन एजेंट के कार्यों का दायरा बढ़ने पर सख्त सीमा बनाए रखने से आम तौर पर अधिक मज़बूत और स्केलेबल नतीजे मिलते हैं।

आगे की ओर

जैसे-जैसे संगठन वॉइस और नॉन-वॉइस एजेंट को अपनाने में परिपक्व होंगे, हमें उम्मीद है कि इन एजेंट के लिए ज़रूरी जानकारी के पैटर्न स्पष्ट होंगे। इससे हम इस पोस्ट में बताई गई सर्विस के डेवलपमेंट और मालिकाना को सरल बना सकेंगे। तब तक, हम उन ज़रूरतों के लिए काम करते रहेंगे जो पहले ही सामने आ चुकी हैं। हमारी Forward Deployed Engineering टीम इन उभरती ज़रूरतों को ठोस प्रोडक्ट क्षमताओं में बदलने के लिए ग्राहकों के साथ मिलकर काम कर रही है और यह सुनिश्चित कर रही है कि हमारे सॉल्यूशन वास्तविक दुनिया के डिप्लॉयमेंट के साथ कदम से कदम मिलाकर विकसित हों।

अगर आप पहले से किसी एजेंट के साथ काम कर रहे हैं और अपने LLM ऑर्केस्ट्रेशन का मालिकाना बनाए रखते हुए ElevenLabs Agents के साथ वॉइस सक्षम करना चाहते हैं, तो इस तरीके को आज़माएं और हमें बताएं कि आपको कैसा लगा! 

संबंधित लेख

उच्चतम गुणवत्ता वाले AI ऑडियो के साथ बनाएं