ADK-Rust ब्लॉग
रिलीज़ यात्राADK-Rust v2आर्किटेक्चर

ADK-Rust v2: एजेंट फ्रेमवर्क से प्रोडक्शन रनटाइम तक।

यह कहानी कि कैसे टूल, वर्कफ़्लो, स्टेट, रीयलटाइम मीडिया, कोडिंग एजेंट, ओपन प्रोटोकॉल और ऑपरेटिंग कंट्रोल एक कंपोज़ेबल Rust सिस्टम बन गए।

14 मिनट का पठन

मार्च में, हमने ADK-Rust v0.5 की कहानी प्रकाशित की थी। उस रिलीज़ ने फ्रेमवर्क को और अधिक सक्षम बनाया: रिट्रीवल, कोड एग्ज़िक्यूशन, अतिरिक्त मॉडल प्रोवाइडर, ड्यूरेबल ग्राफ़, एन्क्रिप्टेड सेशन, और एक CLI जो एक उपयोगी शुरुआती प्रोजेक्ट बना सकता था।

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

पिछला अध्याय पढ़ें: ADK-Rust v0.5

v2 तक का रास्ता

एजेंट सुविधाओं को एक सिस्टम में बदलने के छह महीने।

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

v0.5मार्च 2026

फ्रेमवर्क ने ज़्यादा तरह के काम सीखे

RAG, कोड एग्ज़िक्यूशन, प्रोवाइडर सुधार, ड्यूरेबल ग्राफ़, एन्क्रिप्टेड सेशन, और cargo-adk ने एक Rust एजेंट क्या कर सकता था, इसका विस्तार किया।

v0.6–0.7अप्रैल 2026

एजेंटों ने वास्तविक सिस्टम सीमाओं को पार किया

A2A पूर्ण रिमोट-टास्क फ़्लो तक पहुँच गया। AWP ने वेबसाइटों को एक एजेंट इंटरफ़ेस दिया। MCP सर्वर ने प्रबंधित जीवनचक्र प्राप्त किए, जबकि मेमोरी और साझा स्टेट बड़े उत्पादों के लिए सुरक्षित हो गए।

v0.8–0.9मई 2026

कंपोज़िशन एक डेवलपर अनुभव बन गया

फ़ीचर टियर ने डिफ़ॉल्ट डिपेंडेंसी सतह को कम कर दिया। ACP आ गया, स्कीमा प्रत्येक मॉडल प्रोवाइडर के अनुकूल हो गए, और टेम्प्लेट के साथ-साथ ऐड-ऑन ने आर्किटेक्चर को कॉपी करने के बजाय एक विकल्प बना दिया।

v1.0जून 2026

नींव स्थिर हो गई

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

v2.0जून–जुलाई 2026

रनटाइम उत्पाद की रीढ़ बन गया

CodingAgent और CodeAct एजेंट परिवार में शामिल हो गए। टूल कॉल, प्रगति, परिणाम, रद्दीकरण, रीयलटाइम मीडिया, नॉलेज-ग्राफ़ मेमोरी और ओपन प्रोटोकॉल अब स्पष्ट रनटाइम कॉन्ट्रैक्ट्स के माध्यम से यात्रा करते हैं।

निर्णायक मोड़

एक प्रोडक्शन एजेंट मॉडल कॉल से कहीं ज़्यादा है।

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

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

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

v2 आर्किटेक्चर

पूरे उत्पाद के माध्यम से काम के एक हिस्से का पालन करें।

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

लोग और सिस्टम

उत्पाद सतहें

वेब और मोबाइल
वॉइस और वीडियो
REST · SSE · WebSocket
A2A · ACP · AWP

एक एग्ज़िक्यूशन कॉन्ट्रैक्ट

Runner और टाइप किया गया इवेंट स्ट्रीम

इनवोकेशन संदर्भ
टूल कॉल और परिणाम
लाइव प्रगति
पुनः प्रयास · रद्द करें · फिर से शुरू करें

काम का आकार चुनें

कंपोज़ेबल एजेंट

LLM और कस्टम
अनुक्रमिक · समानांतर · लूप
ग्राफ़ और कंडीशनल
रीयलटाइम · कोडिंग · CodeAct

एजेंटों को उपयोगी पहुँच दें

टूल, ज्ञान और स्टेट

टाइप किए गए Rust टूल और MCP
RAG और ब्राउज़र
सेशन और आर्टिफैक्ट
सिमेंटिक और ग्राफ़ मेमोरी

उत्पादन को समझने योग्य बनाए रखें

परिचालन नियंत्रण

प्रमाणीकरण और प्राधिकरण
गार्डरेल्स और अनुमोदन
टेलीमेट्री और मूल्यांकन
चेकपॉइंट्स और ऑडिट साक्ष्य
आगे का मार्ग: इरादा कार्य, घटनाओं और परिणामों में बदल जाता है।वापसी का मार्ग: प्रगति, परिणाम, कलाकृतियाँ और साक्ष्य कॉलर तक पहुँचते हैं।

प्रक्रिया के भीतर

एजेंट, उपकरण, सत्र, कॉलबैक, इवेंट और रद्दीकरण Rust ट्रेड्स और प्रकार साझा करते हैं।

एक सीमा के पार

MCP, A2A, ACP, AWP, HTTP, और रीयलटाइम ट्रांसपोर्ट विभिन्न मालिकों वाले सिस्टम को जोड़ते हैं।

उत्पाद के लिए दृश्यमान

एक ही इवेंट स्ट्रीम एक CLI, वेब UI, API क्लाइंट, ट्रेस व्यूअर, या रिमोट एजेंट को चला सकती है।

देखें कि यह कैसे काम करता है

निष्पादन ट्रेल एक उत्पाद इंटरफ़ेस है।

एक उपयोगी एजेंट को अपने अंतिम वाक्य से अधिक दिखाने की आवश्यकता होती है। v2 हर सार्थक चरण को इवेंट स्ट्रीम में एक स्थान देता है, ताकि डेवलपर्स काम के होते ही उसके चारों ओर इंटरफ़ेस बना सकें।

01

अनुरोध

एक व्यक्ति, सेवा, या एजेंट काम शुरू करता है।

02

निर्णय लें

एक एजेंट या वर्कफ़्लो अगला सार्थक कार्य चुनता है।

03

कार्य करें

एक उपकरण, विशेषज्ञ, मॉडल, या रिमोट सिस्टम चरण को निष्पादित करता है।

04

स्ट्रीम करें

टाइप्ड इवेंट कॉल, प्रगति, परिणाम और स्थिति परिवर्तन ले जाते हैं।

05

जारी रखें

रनटाइम प्रतिक्रिया देता है, इनपुट के लिए रुकता है, पुनः प्रयास करता है, या बाद में फिर से शुरू होता है।

कल्पना कीजिए कि एक CodingAgent एक टेस्ट सूट चला रहा है। UI को टूल कॉल, लाइन-बाय-लाइन stdout और stderr, टाइप्ड परिणाम, कोई भी स्थिति या कलाकृति परिवर्तन, और एजेंट का अगला निर्णय एक सहसंबद्ध स्ट्रीम के माध्यम से प्राप्त होता है। यदि कार्य को अनुमोदन की आवश्यकता है या प्रक्रिया बाधित होती है, तो सत्र और चेकपॉइंट जारी रखने के लिए एक स्पष्ट स्थान प्रदान करते हैं।

v2 एक डेवलपर को क्या देता है

एजेंट जीवनचक्र के लिए एक ढाँचा।

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

01

एजेंट विभिन्न तरीकों से काम कर सकते हैं

लचीले तर्क के लिए एक LLM एजेंट का उपयोग करें, ज्ञात अनुक्रमों के लिए नियतात्मक वर्कफ़्लो एजेंटों का, ब्रांचिंग और टिकाऊ काम के लिए ग्राफ़ का, आवाज और वीडियो के लिए रीयलटाइम एजेंटों का, रिपॉजिटरी काम के लिए CodingAgent का, या CodeAct का उपयोग करें जब एक मॉडल को मल्टी-स्टेप एक्शन को निष्पादन योग्य कोड के रूप में व्यक्त करना चाहिए।

02

प्रगति API का हिस्सा है

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

03

स्थिति एक मॉडल टर्न से अधिक समय तक रह सकती है

सत्र वार्तालाप को संरक्षित करते हैं, कलाकृतियाँ जेनरेट की गई फ़ाइलों को रखती हैं, ग्राफ़ चेकपॉइंट वर्कफ़्लो को फिर से शुरू करते हैं, और सिमेंटिक या द्वि-कालिक ज्ञान-ग्राफ़ मेमोरी एजेंटों को ऐसा संदर्भ देती है जो बाद के सत्रों में उपयोगी रहता है।

04

ओपन प्रोटोकॉल के स्पष्ट कार्य हैं

MCP उपकरण और संसाधनों को जोड़ता है, A2A स्वतंत्र रूप से तैनात एजेंटों को जोड़ता है, ACP CodingAgent क्लाइंट और सर्वर को जोड़ता है, और AWP एक वेबसाइट को उसके मानव इंटरफ़ेस के साथ एजेंटों के लिए एक संरचित इंटरफ़ेस देता है।

05

स्वायत्तता की परिचालन सीमाएँ हैं

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

06

आप अपनी आवश्यकतानुसार उत्पाद संकलित करते हैं

न्यूनतम टियर पहले एजेंट को छोटा रखता है। स्टैंडर्ड सामान्य उत्पादन स्टैक जोड़ता है; एंटरप्राइज़ रीयलटाइम, ब्राउज़र, RAG, भुगतान और AWP जोड़ता है; पूर्ण सबसे भारी ऑडियो और निष्पादन क्षमताएं जोड़ता है। व्यक्तिगत सुविधाएँ तब भी उपलब्ध रहती हैं जब एक प्रीसेट बहुत व्यापक होता है।

शुरुआती अनुभव

एक कार्यशील आकार चुनें, फिर उसे अपना बनाएं।

v2 CLI निष्पादन आकार को स्केफोल्ड कर सकता है और आसपास की क्षमताओं को जोड़ सकता है। जेनरेट किया गया प्रोजेक्ट अभी भी Rust जैसा दिखता है जिसे आप स्वयं लिखेंगे और समीक्षा करेंगे।

बनाएँ और सत्यापित करें

cargo install cargo-adk

cargo adk new support-agent \
  --template tools \
  --addon sessions \
  --addon telemetry \
  --addon guardrails

cd support-agent
cargo adk build
cargo run

एजेंट को संयोजित करें

let agent = LlmAgentBuilder::new("support")
    .description("Resolves customer issues")
    .instruction("Use the reviewed tools and cite evidence.")
    .model(Arc::new(model))
    .tool(Arc::new(LookUpOrder))
    .before_tool(approval_gate)
    .build()?;

Launcher::new(Arc::new(agent))
    .run()
    .await?;

बारह टेम्पलेट सामान्य शुरुआती आर्किटेक्चर को कवर करते हैं। नौ ऐड-ऑन सत्र, टेलीमेट्री, MCP, प्रमाणीकरण, ब्राउज़र टूल और गार्डरेल्स जैसी क्षमताओं को संयोजित करते हैं। पांच एंटरप्राइज़ पैटर्न बड़े परिनियोजन आकार प्रदान करते हैं। cargo adk build परिनियोजन से पहले जेनरेट किए गए प्रोजेक्ट की जाँच करता है।

v2 स्रोत के विरुद्ध सत्यापित

कहानी के पीछे के विवरण।

वर्कस्पेस संस्करण 2.0.0, Rust 2024 संस्करण, Rust 1.95 MSRV
cargo-adk में 12 प्रोजेक्ट टेम्पलेट, 9 ऐड-ऑन और 5 एंटरप्राइज़ पैटर्न
फर्स्ट-क्लास स्ट्रीमिंग टूल-कॉल, प्रगति और परिणाम इवेंट
LLM, वर्कफ़्लो, ग्राफ़, रीयलटाइम, कोडिंग, CodeAct, और कस्टम एजेंट
MCP, A2A v1, ACP v1, AWP, REST, SSE, और WebSocket सीमाएँ
छह वेक्टर-स्टोर बैकएंड प्लस सिमेंटिक और नॉलेज-ग्राफ़ मेमोरी
15 जुलाई, 2026 को रिलीज़ स्थिति: रिपॉजिटरी वर्कस्पेस और दस्तावेज़ 2.0.0 को लक्षित करते हैं। सार्वजनिक crates.io पैकेज 1.0.0 पर बना हुआ है जबकि v2 प्रकाशन पूरा हो गया है, इसलिए वर्तमान v2 API का मूल्यांकन करने वाले डेवलपर्स को स्रोत चेकआउट का उपयोग करना चाहिए और रिपॉजिटरी रिलीज़ नोट्स का पालन करना चाहिए।

अगला अध्याय एक वास्तविक एजेंट से शुरू होता है

पहला वर्कफ़्लो बनाएँ। उत्पादन का मार्ग खुला रखें।

एक अनुरोध, एक दृश्यमान टूल कॉल, और एक सत्र जिसे आप समझते हैं, से शुरू करें। ADK-Rust v2 उस छोटे एजेंट को वर्कफ़्लो, मेमोरी, ओपन प्रोटोकॉल, रीयलटाइम इंटरफ़ेस, सुरक्षा और परिनियोजन का सीधा मार्ग देता है जब उत्पाद उनके लिए तैयार होता है।