ReAct Prompting (HI)

From Systems analysis wiki
Jump to navigation Jump to search

ReAct (संक्षेप Reason + Act से, अर्थात — «सोचो और करो») — बड़े भाषा मॉडलों (LLM) के लिए prompt डिज़ाइन की एक paradigm है, जो उन्हें मौखिक तर्क (विचारों) और बाहरी वातावरण के साथ अंतःक्रिया करने वाले कार्यों को बारी-बारी से करते हुए जटिल समस्याओं को हल करने में सक्षम बनाती है[1]। यह विधि 2022 में Google Research और प्रिंसटन विश्वविद्यालय के शोधकर्ताओं द्वारा प्रस्तावित की गई थी और बौद्धिक एजेंटों के विकास में एक मूलभूत दृष्टिकोण बन गई।

ReAct की प्रमुख नवाचार Chain-of-Thought (CoT) जैसी तकनीकों की तार्किक विशेषताओं को बाहरी क्रियाओं के निष्पादन — जैसे सूचना खोज या software interfaces (API) के साथ अंतःक्रिया — के साथ एकीकृत करने में निहित है। इससे मॉडल अपनी योजना को गतिशील रूप से समायोजित कर सकता है, तथ्यों की जांच कर सकता है और अपने स्वयं के प्रायः पुराने या अपूर्ण ज्ञान की सीमाओं को पार कर सकता है[2]

पृष्ठभूमि और निर्माण का इतिहास

ReAct के आगमन से पहले, जटिल समस्याओं को हल करने के लिए LLM के उपयोग में दो मुख्य, किंतु अलग-अलग दृष्टिकोण मौजूद थे:

  • तर्क-शृंखला (Chain-of-Thought, CoT): मॉडल किसी समस्या को हल करने के लिए चरण-दर-चरण तार्किक तर्क उत्पन्न करता है, किंतु यह «सूचना शून्य» में करता है — केवल अपने आंतरिक ज्ञान पर निर्भर रहते हुए। इससे अक्सर तथ्यात्मक त्रुटियाँ और «hallucination» उत्पन्न होती हैं[1]
  • क्रिया-नियोजन (Act-Only): मॉडल बाहरी वातावरण के साथ अंतःक्रिया के लिए क्रियाओं की एक शृंखला उत्पन्न करता है (उदाहरण के लिए, text games में), किंतु स्पष्ट उच्च-स्तरीय नियोजन के बिना। ऐसी प्रणालियाँ त्रुटियों से ठीक से नहीं निपटतीं और अप्रत्याशित परिस्थितियों का सामना करने पर अपनी रणनीति अनुकूलित नहीं कर सकतीं।

ReAct को दोनों दृष्टिकोणों की शक्तियों के相乘 एकीकरण के लिए बनाया गया था। यह मॉडल को न केवल तर्क करने, बल्कि अपने तर्क को बाहरी दुनिया के तथ्यों पर आधारित करने और प्राप्त feedback के आधार पर अपनी क्रियाओं को अनुकूलित करने में सक्षम बनाता है।

कार्य-प्रणाली: «विचार — क्रिया — अवलोकन» चक्र

ReAct एक पुनरावृत्त चक्र के ढांचे में काम करता है, जिसमें तीन प्रमुख घटक शामिल हैं। मॉडल क्रमिक रूप से एक trajectory उत्पन्न करता है जिसमें Thought, Action और Observation के चरण होते हैं।

Prompt संरचना का उदाहरण:

प्रश्न: वह शहर जिसमें प्रत्यावर्ती धारा के लिए प्रसिद्ध आविष्कारक का जन्म हुआ, वह किस देश की राजधानी है?

Thought 1: मुझे यह जानना होगा कि प्रत्यावर्ती धारा का आविष्कार किसने किया। फिर उनका जन्म स्थान खोजना होगा और यह जांचना होगा कि वह शहर किसी देश की राजधानी है या नहीं।

Action 1: Search[प्रत्यावर्ती धारा के आविष्कारक]

Observation 1: प्रत्यावर्ती धारा (AC) को Nikola Tesla द्वारा विकसित और प्रचारित किया गया था।

Thought 2: अब मुझे यह जानना है कि Nikola Tesla का जन्म कहाँ हुआ था।

Action 2: Search[Nikola Tesla का जन्म स्थान]

Observation 2: Nikola Tesla का जन्म Smiljan गाँव, ऑस्ट्रियाई साम्राज्य (आधुनिक क्रोएशिया) में हुआ था।

Thought 3: Smiljan कोई राजधानी नहीं है। इस प्रकार, प्रश्न का इस रूप में कोई स्पष्ट उत्तर नहीं है। हालाँकि Tesla लंबे समय तक अमेरिका में रहे और काम किया। संभवतः उस देश की राजधानी का संदर्भ है जहाँ उन्होंने अपनी प्रमुख खोजें कीं। यह अधिक जटिल प्रश्न है। मुझे जन्म स्थान पर आधारित तथ्य बताना चाहिए। उनके जन्म का शहर किसी देश की राजधानी नहीं है।

Final Answer: प्रत्यावर्ती धारा से जुड़े आविष्कारक Nikola Tesla का जन्म Smiljan (क्रोएशिया) में हुआ था, जो किसी देश की राजधानी नहीं है।

विचार (Thought)

मॉडल एक आंतरिक तर्क उत्पन्न करता है जिसमें वह कार्य का विश्लेषण करता है, उसे उप-कार्यों में विभाजित करता है, क्रिया-योजना बनाता या संशोधित करता है और वर्तमान स्थिति का मूल्यांकन करता है। यह चरण बाहरी वातावरण को प्रभावित नहीं करता, किंतु आंतरिक नियोजन के लिए कार्य करता है।

क्रिया (Action)

अपने तर्क के आधार पर मॉडल उपलब्ध उपकरणों में से किसी एक का उपयोग करते हुए एक बाहरी क्रिया करता है। क्रियाओं के उदाहरण:

  • Search [अनुरोध] — ज्ञान आधार (उदाहरण के लिए, Wikipedia) में जानकारी खोजने के लिए।
  • Click [तत्व] — वेब-पृष्ठ पर नेविगेशन के लिए।
  • API_call [पैरामीटर] — बाहरी API को कॉल करने के लिए।

अवलोकन (Observation)

प्रणाली या बाहरी उपकरण क्रिया निष्पादित करता है और परिणाम (अवलोकन) लौटाता है। यह पाठ का एक अंश, API का उत्तर या त्रुटि संदेश हो सकता है। मॉडल इस अवलोकन का उपयोग अगले विचार को आकार देने के लिए करता है, जिससे feedback चक्र पूरा होता है[2]

प्रयोगात्मक परिणाम और प्रभावशीलता

ReAct के लेखकों ने विभिन्न कार्यों की एक विस्तृत श्रृंखला पर विधि का परीक्षण किया और CoT तथा Act-Only दृष्टिकोणों पर इसकी श्रेष्ठता प्रदर्शित की।

प्रमुख benchmarks पर आधारभूत विधियों की तुलना में ReAct के परिणाम[1]
Benchmark कार्य ReAct (सफलता/सटीकता) Chain-of-Thought (सफलता/सटीकता) Act-Only (सफलता/सटीकता)
FEVER तथ्य-जांच 87.6% 82.8% 70.1%
HotpotQA बहु-चरणीय प्रश्न 31.8% 36.3% 17.0%
ALFWorld Text game (नियोजन) 71% 10% 13%
WebShop वेब-नेविगेशन 40% - 30.1%
  • तथ्य-जांच (FEVER) की आवश्यकता वाले कार्यों में, ReAct CoT से काफी बेहतर प्रदर्शन करता है, क्योंकि यह जानकारी को सत्यापित कर सकता है।
  • इंटरैक्टिव नियोजन (ALFWorld, WebShop) के कार्यों में, ReAct एक बड़ी बढ़त दर्शाता है, क्योंकि यह बदलते परिवेश के अनुकूल हो सकता है।
  • शुद्ध तर्क (HotpotQA) के कार्यों में, CoT तुलनीय या बेहतर परिणाम दिखा सकता है। हालाँकि हाइब्रिड दृष्टिकोण ReAct+CoT ने सर्वोत्तम प्रदर्शन दिखाया, HotpotQA में 35% तक पहुँचा[1]

आलोचना और सीमाएँ

अपनी प्रभावशीलता के बावजूद, ReAct में कई सीमाएँ और कमज़ोरियाँ हैं।

  • «भंगुरता» (Brittleness): बाद के शोधों से पता चला कि ReAct की सफलता वास्तविक तर्क-क्रिया तालमेल की बजाय prompt में उदाहरणों और वर्तमान कार्य के बीच वाक्य-रचनात्मक समानता से अधिक जुड़ी हो सकती है। मॉडल `Thought-Action-Observation` पैटर्न का अनुसरण कर सकता है बिना तर्क की semantics को पूरी तरह समझे[3]
  • कम्प्यूटेशनल लागत: ReAct के प्रत्येक चक्र में कम से कम एक LLM कॉल और एक बाहरी उपकरण कॉल की आवश्यकता होती है, जो इसे मानक prompting की तुलना में धीमा और महँगा बनाता है।
  • उपकरण-निर्भरता: एजेंट की प्रभावशीलता उपलब्ध उपकरणों की गुणवत्ता और विश्वसनीयता पर सीधे निर्भर करती है। API से एक गलत या शोरपूर्ण उत्तर मॉडल के तर्क को गलत दिशा में ले जा सकता है।

महत्व और आगे का विकास

ReAct AI के विकास में एक महत्वपूर्ण मील का पत्थर बन गया, जो जनरेटिव सिस्टम से एजेंट सिस्टम की ओर संक्रमण का प्रतीक है। इसने अधिकांश आधुनिक agent-निर्माण frameworks के लिए वैचारिक और व्यावहारिक आधार तैयार किया, जैसे:

  • LangChain
  • LlamaIndex
  • AutoGen

ReAct के विचारों ने अधिक जटिल तर्क architectures के लिए प्रारंभिक बिंदु के रूप में काम किया, जैसे Reflexion (विफलताओं के बाद आत्म-चिंतन का चक्र जोड़ता है) और Tree of Thoughts (ToT) (समानांतर में कई तर्क-पथों की जांच करता है)।

संदर्भ

  • ReAct परियोजना का आधिकारिक पृष्ठ
  • Learn Prompting मार्गदर्शिका में ReAct का विवरण
  • Google Research (2022). ReAct: Synergizing Reasoning and Acting in Language Models (blog post). Google Research Blog.

साहित्य

  • Yao, S. et al. (2022). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv:2210.03629.
  • Yao, S. et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601.
  • Shinn, N. et al. (2023). Reflexion: Language Agents with Verbal Reinforcement Learning. arXiv:2303.11366.
  • Verma, V. et al. (2024). On the Brittle Foundations of ReAct Prompting for Agentic Large Language Models. arXiv:2405.13966.
  • Yao, S. et al. (2022). WebShop: Towards Scalable Real-World Web Interaction with Grounded Language Agents. arXiv:2207.01206.
  • Shridhar, M. et al. (2020). ALFWorld: Aligning Text and Embodied Environments for Interactive Learning. arXiv:2010.03768.
  • Qin, L. et al. (2023). AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Collaboration. arXiv:2308.08155.
  • Thorne, J. et al. (2018). FEVER: A Large-Scale Dataset for Fact Extraction and Verification. arXiv:1803.05355.
  • Yang, Z. et al. (2018). HotpotQA: A Dataset for Diverse, Explainable Multi-hop Question Answering. arXiv:1809.09600.

टिप्पणियाँ

  1. 1.0 1.1 1.2 1.3 Yao, S., Zhao, J., Yu, D., et al. (2022). «ReAct: Synergizing Reasoning and Acting in Language Models». arXiv preprint arXiv:2210.03629. [१]
  2. 2.0 2.1 «ReAct: Synergizing Reasoning and Acting in Language Models». Google Research Blog. [२]
  3. Verma, V., et al. (2024). «On the Brittle Foundations of ReAct Prompting for Agentic Large Language Models». arXiv preprint arXiv:2405.13966. [३]