5 पॉइंट द्वारा sleeplesshan 7 시간 전 | 2 टिप्पणियां | WhatsApp पर शेयर करें

नमस्ते,

जो लोग आमतौर पर Claude Code या Codex जैसे AI agents का उपयोग करके बड़े logs का विश्लेषण करते हैं या legacy code में बदलाव करते हैं, उनके लिए मैंने यह स्किल साझा की है—क्योंकि ऐसे कामों में token लागत और latency बहुत तेजी से बढ़ जाती है।

यह बड़े files को संभालते समय "खोज लोकल पर मुफ्त में, और reasoning क्लाउड पर high-performance के साथ" प्रोसेस करने वाला एक hybrid context router token-router है।


🛑 यह किस समस्या का समाधान करता है?

अगर 2,000 से अधिक लाइनों वाले infra deployment logs या बहुत बड़े source code files को पूरा का पूरा cloud LLM में डाल दिया जाए, तो input tokens बहुत ज़्यादा बर्बाद होते हैं और प्रतीक्षा समय भी बढ़ जाता है।

इसे बचाने के लिए कभी-कभी छोटे model से code का पहले से summary बनवाई जाती है, लेकिन यह तरीका जोखिम भरा है। जैसे ही कोई एक error line या variable definition छूट जाती है, cloud AI context खो देता है और गलत जवाब दे सकता है।

और नवीनतम version में, हर turn पर बार-बार जुड़ने वाली लंबी static agent instruction files जैसे CLAUDE.md, AGENTS.md, .cursorrules को भी routing target तक विस्तारित किया गया है। लेकिन जो लंबे root files पहले से अपने-आप inject हो चुके हैं, उनकी token लागत बाद में कम करना संभव नहीं है। इसलिए सलाह यह है कि root instruction files को छोटा रखा जाए, और लंबे task-specific rules को अलग reference files में बाँटकर रखा जाए, ताकि ज़रूरत पड़ने पर ही उन्हें route किया जा सके।


🧠 यह कैसे हल करता है? (उपयोगकर्ता के नज़रिए से काम करने का तरीका)

यह tool text का summary नहीं बनाता, बल्कि मूल पाठ से केवल ज़रूरत भर का हिस्सा सटीक रूप से काटकर निकालने की विधि अपनाता है।

  1. लोकल खोज (Local Triage): यह आपके कंप्यूटर पर Ollama के जरिए हल्के Gemma 4 2B model के साथ चलता है। यह local model उपयोगकर्ता के सवाल के अनुसार केवल सटीक line numbers (coordinates) बहुत तेज़ी से ढूँढता है।
  2. मूल पाठ निष्कर्षण (Raw Slicing): Python script उन्हीं line numbers के आधार पर disk से मूल text के साफ़ हिस्से ज्यों-का-त्यों काटकर निकालती है।
  3. क्लाउड reasoning (Reasoning): मुख्य cloud model को केवल अनावश्यक noise हटाए गए high-density original text chunks और file structure map ही दिए जाते हैं, ताकि वह debugging और code writing पर ध्यान केंद्रित कर सके।

क्योंकि इसमें बिना प्रोसेस किया हुआ मूल पाठ ही भेजा जाता है, इसलिए cloud model की reasoning क्षमता का 100% उपयोग करते हुए लागत को बहुत कम किया जा सकता है।

फिलहाल यह error_log, heavy_code, agent_context—इन तीन modes को support करता है। agent_context एक ऐसा mode है जो लंबे agent instruction reference documents जैसे CLAUDE.md, AGENTS.md, GEMINI.md, .cursorrules, agent-context/*.md में से मौजूदा काम से संबंधित मूल lines को ढूँढकर लाता है।


📊 मेरे PC पर किए गए वास्तविक परीक्षण के परिणाम

  • बड़ा infra log (2,000 lines): input context को 41,711 tokens से घटाकर 131 tokens किया गया (99.69% बचत, processing time 5.37 सेकंड)।
  • legacy bug source code (2,155 lines): मूल 7,520 tokens के payload को सिर्फ 70 tokens में compress करके भेजा गया (99.06% बचत, processing time 4.46 सेकंड)।

🛠️ वास्तविक काम में उपयोग करते समय सुविधाजनक बातें

  • PC lag रोकना: local AI इस्तेमाल करने पर कंप्यूटर धीमा पड़ने की चिंता हो सकती है। यह tool routing coordinates निकालने का काम पूरा होते ही उसी क्षण local model को VRAM memory से तुरंत मुक्त कर देता है.
  • स्मार्ट reverse context expansion: अगर काटकर लाया गया code बहुत संकरा हो और आगे-पीछे की dependencies समझना मुश्किल हो, तो cloud AI अनुमान लगाकर जवाब नहीं देता; उसके लिए script में ऐसा prompt safeguard डाला गया है कि वह "थोड़ा बड़ा range फिर से काटकर लाओ" जैसी reverse request कर सके।
  • बड़े files की streaming: अगर file इतनी बड़ी हो कि local model की memory capacity से बाहर चली जाए, तब भी backend में keyword और file के अंत वाले हिस्से को पहले scan करने वाली streaming logic अपने-आप काम करती है, इसलिए यह सुरक्षित है।
  • Claude Code support: नवीनतम version में Claude Code के लिए compact CLAUDE.md bootstrap भी शामिल है। लंबे Claude-specific instructions को अलग reference files में रखकर agent_context के जरिए route करने के तरीके से इसका उपयोग किया जा सकता है।

यह MIT license के तहत पूरी तरह मुफ्त जारी किया गया है, और इसे standalone script या OpenAI Codex के skill के रूप में सीधे register करके इस्तेमाल किया जा सकता है। Claude Code में भी CLAUDE.md bootstrap को देखकर वही router script कॉल की जा सकती है। उम्मीद है कि बड़े logs की debugging या भारी codebase के साथ अक्सर काम करने वाले लोगों की development productivity में यह मददगार होगा।

आर्किटेक्चर या prompt optimization पर आप सबकी विभिन्न feedback और राय का स्वागत है!

2 टिप्पणियां

 
hshim 5 시간 전

अच्छा skill है, मैंने हल्के तौर पर इस्तेमाल करके देखा।
Python में भेजने के लिए json बनाते समय कभी-कभी json syntax टूट जाने से error आने वाले cases होते थे, लेकिन 4b या qwen2.5-coder:7b में बदलकर इस्तेमाल करने पर error rate काफ़ी कम हो गया।

 
sleeplesshan 5 시간 전

ओह, आपने पोस्ट होते ही तुरंत इसे टेस्ट किया और अलग-अलग मॉडल साइज़ के हिसाब से इतनी ठोस तुलना-आधारित फ़ीडबैक भी छोड़ी, इसके लिए बहुत-बहुत धन्यवाद!
जैसा आपने कहा, 2B श्रेणी के बहुत छोटे मॉडल कभी-कभी जटिल लॉग या special characters मिले-जुले माहौल में system prompt की पाबंदियों को तोड़कर JSON आउटपुट देते समय syntax तोड़ सकते हैं। अगर VRAM संसाधनों में थोड़ी गुंजाइश हो, तो निश्चित रूप से Qwen 2.5 Coder 7B या Gemma 4B जैसे मॉडल routing coordinates को कहीं ज़्यादा स्थिर तरीके से निकालते दिखते हैं.
अगर दूसरे लोग भी टेस्ट करते समय JSON syntax error का सामना करें, तो environment variable सेट करके नीचे की तरह बड़े मॉडल पर स्विच करके चलाना ज़्यादा उपयोगी हो सकता है.
OLLAMA_MODEL=qwen2.5-coder:7b python3 scripts/router.py ...
अपनी मूल्यवान real-world benchmark राय साझा करने के लिए धन्यवाद.