मल्टी-एजेंट वर्कफ़्लो इस समय GitHub पर छाए हुए हैं। डेवलपर्स लार्ज लैंग्वेज मॉडल्स को एक साथ जोड़ रहे हैं, प्रत्येक एजेंट को एक विशिष्ट विशेषज्ञता सौंप रहे हैं, और ऐसे कार्यों को पूरा करने के लिए उनके आउटपुट को ऑर्केस्ट्रेट कर रहे हैं जिन्हें कोई भी अकेला मॉडल अकेले नहीं संभाल सकता। परिणाम प्रभावशाली हो सकते हैं। एक एजेंट रिसर्च करता है, दूसरा ड्राफ्ट तैयार करता है, तीसरा तथ्यों की जांच करता है, और चौथा अंतिम आउटपुट को फॉर्मेट करता है। लेकिन इस पूरे समन्वय के नीचे एक नाजुक निर्भरता छिपी हुई है। यदि पहला कदम, यानी मानवीय इनपुट को मशीन-पठनीय निर्देशों में बदलना, धीमा या गलत है, तो पूरी चेन बिखर जाती है। एक डाउनस्ट्रीम एजेंट कचरे (garbage) को ठीक नहीं कर सकता। वह केवल उसे आगे बढ़ा सकता है।
यह बॉटलनेक (bottleneck) वह जगह है जहाँ Iflytek/domux काम आता है। यह एक ओपन-सोर्स मॉडल है जिसे विशेष रूप से एक उच्च-जोखिम वाले कार्य के लिए बनाया गया है: तेज़ कमांड समझना। निबंध लिखने या खुली बातचीत करने के बजाय, domux प्राकृतिक भाषा को पार्स करता है और कठोर, संरचित डेटा (structured data) एक्सपोर्ट करता है जिसे अन्य एजेंट तुरंत उपयोग कर सकते हैं। स्मार्ट होम हब से लेकर औद्योगिक नियंत्रण पैनलों तक, किसी भी सिस्टम को जिसे रीयल-टाइम स्ट्रक्चर्ड इनपुट की आवश्यकता है, वह इसे एक परसेप्शन लेयर (perception layer) के रूप में उपयोग कर सकता है।
चेन की सबसे कमजोर कड़ी
विचार करें कि क्या होता है जब कोई उपयोगकर्ता "यहाँ रोशनी बढ़ा दो" जैसा सरल कमांड देता है। मल्टी-एजेंट सेटअप में, उस कथन को लाइटिंग कंट्रोलर, एनर्जी मॉनिटर और सिक्योरिटी लॉगर से गुजरना पड़ सकता है। यदि प्रारंभिक पार्सर "यूज़र को अधिक रोशनी चाहिए" जैसा अस्पष्ट वाक्य लौटाता है, तो प्रत्येक आगामी एजेंट को अर्थ की पुनर्व्याख्या करनी पड़ती है। कुछ सटीक पैरामीटर की प्रतीक्षा में रुक सकते हैं। अन्य कमरे या ब्राइटनेस लेवल का अनुमान लगा सकते हैं और गलत हो सकते हैं। वर्कफ़्लो थम जाता है।
लेटेंसी (Latency) समस्या को और खराब कर देती है। एंट्री पॉइंट पर पार्सिंग में कुछ सौ मिलीसेकंड की देरी जोड़ दें, और जब तक जानकारी तीसरे एजेंट तक पहुँचती है, सिस्टम पहले ही टूटा हुआ महसूस होने लगता है। रीयल-टाइम वातावरण धीमी शुरुआत को माफ नहीं करते। डेवलपर्स यह देख रहे हैं कि ऑर्केस्ट्रेशन फ्रेमवर्क आर्किटेक्चर डायग्राम पर तो सुंदर दिखते हैं, लेकिन अस्पष्ट या सुस्त इनपुट मिलने पर ढह जाते हैं। आपको एक समर्पित लेयर की आवश्यकता है जो बाकी वर्कफ़्लो के सोचने शुरू करने से पहले ही कमांड्स को मानकीकृत (standardize) कर दे।
Domux को उसी लेयर के रूप में डिज़ाइन किया गया है। यह अव्यवस्थित मानवीय भाषा को स्वीकार करता है और इसे एक साफ स्कीमा (schema) में बदल देता है जिसे डाउनस्ट्रीम एजेंट 'ग्राउंड ट्रुथ' के रूप में मान सकते हैं।
गति, संरचना और सटीकता
यह प्रोजेक्ट तीन विशेषताओं का विज्ञापन करता है जो सीधे प्रोडक्शन व्यवहार को प्रभावित करती हैं।
पहला, यह 150 मिलीसेकंड से कम में जवाब देता है। यह सीमा महत्वपूर्ण है। इंटरैक्टिव सेटिंग्स में, एक सेकंड के चौथाई हिस्से से कम का रिस्पॉन्स तात्कालिक महसूस होता है, जबकि एक पूर्ण सेकंड के करीब कुछ भी उपयोगकर्ताओं को टूल छोड़ने के लिए प्रशिक्षित करता है। चाहे इनपुट वॉयस से आए या चैट इंटरफ़ेस से, domux पाइपलाइन को गतिशील रखता है।
दूसरा, यह इनपुट को एक सख्त सात-फील्ड स्कीमा (seven-field schema) में मैप करता है। डाउनस्ट्रीम सिस्टम के डिकोड करने के लिए कोई फ्री-फॉर्म टेक्स्ट नहीं होता है। प्रत्येक कमांड को अनुमानित कॉलम में डाला जाता है।
तीसरा, यह 100 प्रतिशत फॉर्मेट अनुपालन (format compliance) के साथ 98.37 प्रतिशत सटीकता का दावा करता है। सटीकता का अर्थ है कि मॉडल आमतौर पर उपयोगकर्ता को सही ढंग से समझता है। फॉर्मेट अनुपालन का अर्थ है कि आउटपुट हर बार संरचनात्मक रूप से मान्य होता है। एक पार्सर जो 99 प्रतिशत सटीक है लेकिन कभी-कभी कोई फ़ील्ड छोड़ देता है या नया बना देता है, वह एक ऑटोमेटेड चेन में एक लायबिलिटी (liability) है। एक गलत तरीके से बना हुआ रो (row) कंज्यूमर एजेंट को क्रैश कर सकता है।
यहाँ आउटपुट वास्तव में ऐसा दिखता है। जब मॉडल एक कमांड को प्रोसेस करता है, तो यह एक पाइप-डेलिमिटेड रिकॉर्ड (pipe-delimited record) लौटाता है:
action|device|attribute|value|unit|room|floorturnOn|light|brightness|80|percent|living room|ground floor
यह फॉर्मेट जानबूझकर चुना गया है। पाइप-डेलिमिटेड टेक्स्ट को भारी डिपेंडेंसी के बिना किसी भी प्रोग्रामिंग भाषा में पार्स करना बहुत आसान है। यह JSON ब्लोट और नेस्टेड सीरियलाइजेशन की लेटेंसी से बचाता है। एक लाइटिंग एजेंट एक्शन और डिवाइस कॉलम को पढ़ सकता है और तुरंत कार्य कर सकता है। एक लॉगिंग एजेंट बिना किसी अन्य इन्फरेंस पास (inference pass) के कमरे और फ्लोर को निकाल सकता है। यह संरचना डिज़ाइन द्वारा अस्पष्टता को दूर करती है।
अव्यवस्थित मानवीय इरादे (intent) को संभालना
वास्तविक लोग API डॉक्यूमेंटेशन की तरह बात नहीं करते हैं। वे "रोशनी बढ़ा दो" या "इस जगह को थोड़ा गर्म कर दो" जैसी बातें कहते हैं। एक नाजुक पार्सर इसमें विफल हो जाएगा। Domux इरादे (intent) को एक एडजस्टमेंट एक्शन में मैप करके और डाउनस्ट्रीम सिस्टम को सटीक वैल्यू हल करने देकर अस्पष्टता को संभालता है। यदि कोई कहता है "रोशनी बढ़ा दो," तो मॉडल एक्शन को ब्राइटनेस बढ़ाने के रूप में पहचानता है। विशिष्ट संख्यात्मक स्तर को लाइटिंग एजेंट के लिए वर्तमान रीडिंग, दिन के समय, या
