- ओपन सोर्स मॉडल और टूल्स (Milvus, LangChain आदि) का उपयोग करके Deep Research शैली का एक research agent इम्प्लीमेंट किया गया है
- वेब·दस्तावेज़ खोज के ज़रिए किसी विषय या प्रश्न पर अपने-आप गहन रिसर्च करने और हर मध्य चरण में कौन-सा action लेना है (खोज, व्यवस्थित करना आदि) यह चुनने वाली agent संरचनाओं के उदाहरण बढ़े हैं
- इस लेख में इन विचारों का विस्तार करने वाले DeepSearcher ओपन सोर्स प्रोजेक्ट का परिचय दिया गया है। इसमें query routing, conditional execution flow, web crawling tools का उपयोग आदि शामिल हैं
- DeepSearcher Python library·CLI के रूप में उपलब्ध है, इसलिए कई source documents इनपुट लेकर embedding model और vector DB settings को फ़ाइल के ज़रिए आसानी से समायोजित किया जा सकता है
- यह सरल होने के बावजूद agent-based RAG का डेमो दिखाने वाला उदाहरण है, जो वास्तविक AI application development तक जाने की बुनियाद बन सकता है
- खास तौर पर reasoning models की speed और efficiency की समस्या पर ज़ोर दिया गया है, क्योंकि query और search प्रक्रिया में बहुत अधिक token generation की ज़रूरत होती है, जिससे inference resources bottleneck बन जाते हैं
- SambaNova के कस्टम हार्डवेयर पर चलने वाले DeepSeek-R1 reasoning model का उपयोग करने पर token generation speed प्रतिस्पर्धी सेवाओं की तुलना में अधिक तेज़ मिलती है
- ऐसी cloud inference services के ज़रिए Llama 3.x, Qwen2.5, QwQ जैसे विभिन्न मॉडलों पर भी efficient inference संभव हो जाता है
प्रश्न की परिभाषा और विभाजन
- शुरुआती user query को विस्तृत sub-queries में तोड़ा जाता है
- पिछले लेख की तरह, "How has The Simpsons changed over time?" जैसी query को नीचे की तरह कई sub-queries में बाँटा जाता है
- उदाहरण: कृति का सांस्कृतिक·सामाजिक प्रभाव, season के अनुसार character·humor·narrative style में बदलाव, animation·production technology में बदलाव, दर्शकों की प्रतिक्रिया में बदलाव आदि
- बाद के चरणों में ज़रूरत होने पर प्रश्न को फिर से परिभाषित या विस्तारित भी किया जाता है
रिसर्च और विश्लेषण
- sub-queries के आधार पर query routing, vector search, reflection, और conditional iteration के चरणों से गुज़रा जाता है
- query routing
- कई database collections में से किसका उपयोग करना है, यह LLM तय करे, इसके लिए prompt तैयार किया जाता है
- JSON फ़ॉर्मेट में response लेकर collection के हिसाब से search queries जनरेट कराई जाती हैं
- vector search
- Milvus में संग्रहीत embeddings का उपयोग करके similarity search चलाया जाता है
- पिछले लेख की तरह source data को पहले से विभाजित और vectorize करके रखा जाता है
- reflection
- LLM पिछले चरण में मिली query·answer के आधार पर यह जाँचता है कि क्या अतिरिक्त जानकारी की ज़रूरत है
- यदि कुछ कमी हो, तो नई sub-queries बनाकर फिर से search की जाती है
- conditional iteration
- यदि reflection के नतीजे में अतिरिक्त queries की ज़रूरत हो, तो ऊपर की प्रक्रिया दोहराई जाती है
- यदि यह तय हो जाए कि अब और जानकारी जुटाने की ज़रूरत नहीं है, तो final report जनरेट करने के चरण में चला जाता है
अंतिम रिपोर्ट तैयार करना
- सभी sub-queries और search results को मिलाकर एक prompt से रिपोर्ट तैयार की जाती है
- पहले के डेमो की तुलना में consistency और cohesion अधिक वाली रिपोर्ट मिलती है
- उदाहरण के लिए, “How has The Simpsons changed over time?” पर अंतिम रिपोर्ट नीचे जैसी संरचना में विस्तृत सामग्री देती है
-
- सांस्कृतिक प्रभाव और सामाजिक प्रासंगिकता
-
- character·humor·storyline का विकास
-
- animation·technical बदलाव
-
- viewer base, प्रतिक्रिया, और ratings में बदलाव
- निष्कर्ष: शुरुआती विद्रोही satire से एक लोकप्रिय icon में बदलने की प्रक्रिया आदि
- DeepSeek-R1 मॉडल से बनी रिपोर्ट और GPT-4o mini मॉडल से बनी रिपोर्ट की तुलना की जा सकती है
आगे की दिशा
- DeepSearcher अभी भी अपेक्षाकृत सरल स्तर पर है, लेकिन अतिरिक्त agent संरचना, report structuring, conditional iteration का विस्तार आदि से इसे और विकसित किया जा सकता है
- बड़े reasoning models में बहुत भारी computation शामिल होता है, इसलिए inference speed और cost सेवा के मुख्य मुद्दे बन जाते हैं
- SambaNova के DeepSeek-R1 मॉडल का उपयोग करके 65 inference calls, लगभग 25k input tokens और 22k output tokens का इस्तेमाल किया गया, और लगभग 0.30 डॉलर की लागत पर पर्याप्त तेज़ response मिला
- DeepSearcher repository में प्रोजेक्ट को सीधे आज़माया जा सकता है, और आगे भी अतिरिक्त features और use cases लगातार साझा करने की योजना है
1 टिप्पणियां
Hacker News राय
यह सिस्टम local LLM का उपयोग नहीं करता, इसलिए यह सच में local सिस्टम नहीं है
HuggingFace के open source वर्ज़न से तुलना जानने की जिज्ञासा है
Grok के implementation का जादू यह है कि यह ज़्यादातर websites को cache करता है, इसलिए यह बहुत तेज़ महसूस होता है
Deep Research के लिए अलग-अलग approaches पसंद हैं
इससे संबंधित दो blog posts हैं
चूँकि प्रमुख AI कंपनियाँ एक ही तरह का Deep Research product बना चुकी हैं, इसलिए shared open source platform पर ध्यान देना समझदारी होगी
web crawling integration का व्यावहारिक मतलब क्या है, यह जानने की जिज्ञासा है
मैं ऐसा Deep Research tool ढूँढ रहा था जो personal notes (Obsidian) और web से जुड़ सके
मैंने इसे वास्तव में इस्तेमाल किया और कुछ समस्याओं का सामना किया, इसलिए openAI text embeddings को MilvusEmbedding से बदलना पड़ा
असली magic bullet lib-gen और sci-hub को search करना है