तून सीएलआई में महारत हासिल करना

सीएलआई
तून

यदि आप बड़े भाषा मॉडल (एलएलएम) के साथ काम कर रहे हैं, तो आप जानते हैं कि JSON डेटा एक्सचेंज की भाषा है। हालाँकि, आप यह भी जानते हैं कि JSON कुख्यात "बातूनी" है। वे सभी ब्रेसिज़, उद्धरण और दोहराई गई कुंजियाँ आपकी संदर्भ विंडो को ख़त्म कर देती हैं, विलंबता बढ़ाती हैं, और एपीआई लागत बढ़ा देती हैं।

यहीं पर TOON (ऑब्जेक्ट-ओरिएंटेड नोटेशन) चमकता है। जबकि टाइपस्क्रिप्ट लाइब्रेरी एप्लिकेशन कोड के लिए बहुत अच्छी है, कभी-कभी आपको टर्मिनल में काम जल्दी से पूरा करने की आवश्यकता होती है। चाहे आप किसी प्रॉम्प्ट को डीबग कर रहे हों, डेटासेट तैयार कर रहे हों, या बस यह जानना चाहते हों कि आप टोकन पर कितना पैसा बचा सकते हैं, @टून-फॉर्मेट/टून सीएलआई आपका नया सबसे अच्छा दोस्त है।

इस गाइड में, हम देखेंगे कि डेटा ऑप्टिमाइज़ेशन को सीधे आपके शेल वर्कफ़्लो में एकीकृत करने के लिए TOON कमांड लाइन इंटरफ़ेस का लाभ कैसे उठाया जाए।

स्थापित होना

आधुनिक जावास्क्रिप्ट टूलिंग के बारे में सबसे अच्छी चीजों में से एक यह है कि आरंभ करने के लिए आपको अक्सर कुछ भी "इंस्टॉल" करने की आवश्यकता नहीं होती है। यदि आप केवल एक फ़ाइल पर TOON आज़माना चाहते हैं, तो आप बाइनरी को सीधे चलाने के लिए npx का उपयोग कर सकते हैं:

एनपीएक्स @टून-फॉर्मेट/सीएलआई इनपुट.जेसन -ओ आउटपुट.टून 

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

एनपीएम इंस्टाल -जी @टून-फॉर्मेट/सीएलआई 
#या 
पीएनपीएम ऐड -जी @टून-फॉर्मेट/सीएलआई 

एक बार इंस्टॉल हो जाने पर, आप अपना डेटा कम करना शुरू करने के लिए तैयार हैं।

ऑटो-डिटेक्शन का जादू

आप जो करने का प्रयास कर रहे हैं उसके बारे में स्मार्ट होने के लिए TOON CLI को डिज़ाइन किया गया है। आपको इसे एन्कोड या डिकोड करने के लिए स्पष्ट रूप से बताने की शायद ही कभी आवश्यकता हो; यह निर्णय लेने के लिए आपके फ़ाइल एक्सटेंशन को देखता है।

यदि आप इसे .json फ़ाइल खिलाते हैं, तो यह मान लिया जाता है कि आप इसे TOON में एन्कोड करना चाहते हैं। यदि आप .toon फ़ाइल प्रदान करते हैं, तो यह आपको JSON वापस देने के लिए डिकोडिंग मोड में स्विच हो जाती है।

# स्वचालित रूप से TOON को एनकोड करता है 
टून डेटा.जेसन -ओ कंप्रेस्ड.टून 

# स्वचालित रूप से JSON में डिकोड हो जाता है 
टून कंप्रेस्ड.टून -ओ रिस्टोर.जेसन 

लेकिन जहां सीएलआई वास्तव में अपना महत्व साबित करता है वह "यूनिक्स दर्शन" में है - छोटे उपकरण शिथिल रूप से जुड़े हुए हैं। क्योंकि TOON CLI मानक इनपुट (stdin) से पढ़ता है और मानक आउटपुट (stdout) पर लिखता है, आप इसके माध्यम से सीधे डेटा पाइप कर सकते हैं।

# पाइप JSON को सीधे TOON में 
कैट लार्ज-डेटासेट.जेसन | तून > डेटा.टून 

# किसी त्वरित वस्तु को प्रतिध्वनि करके देखें कि वह TOON में कैसी दिखती है 
इको '{"नाम": "एडीए", "भूमिका": "एडमिन"}' | तून 

जब आप stdin के माध्यम से डेटा पाइप कर रहे होते हैं, तो CLI डिफ़ॉल्ट रूप से एनकोड मोड पर आ जाता है। यदि आपको किसी अन्य प्रक्रिया से आने वाले TOON डेटा की स्ट्रीम को डीकोड करने की आवश्यकता है, तो बस --decode (या -d) ध्वज जोड़ें।

टोकन बचत का विश्लेषण करना

डेटा प्रारूपों को अनुकूलित करना अक्सर गेम का अनुमान लगाने के बारे में होता है। "अगर मैं रिक्त स्थान हटा दूं, तो मैं कितना बचाऊंगा?" "अगर मैं YAML पर स्विच करूँ तो क्या होगा?"

TOON CLI --stats ध्वज के साथ अनुमान को समाप्त कर देता है। एन्कोडिंग करते समय, यह विकल्प अनुमानित टोकन संख्या की गणना करता है और आपको तुरंत बचत दिखाता है। जब आप उच्च-मात्रा वाले एलएलएम कॉल के लिए बजट बना रहे हों तो यह अमूल्य है।

तून context.json -- आँकड़े 

आप आकार में 30% या 40% कमी का संकेत देने वाला आउटपुट देख सकते हैं। वह सिर्फ डिस्क स्थान नहीं है; यानी 40% कम विलंबता और इनपुट टोकन पर 40% कम लागत।

उन्नत ट्यूनिंग: सीमांकक और फ़ॉर्मेटिंग

डिफ़ॉल्ट रूप से, TOON JSON के समान, सरणी आइटम को अलग करने के लिए अल्पविराम का उपयोग करता है। हालाँकि, विभिन्न एलएलएम टोकनाइज़र विराम चिह्न के साथ अलग-अलग व्यवहार करते हैं। कभी-कभी, एक टैब वर्ण या पाइप (|) अल्पविराम की तुलना में अधिक टोकन-कुशल होता है।

सीएलआई आपको तुरंत सीमांकक स्वैप करने की अनुमति देता है। यदि आप सारणीबद्ध डेटा के साथ काम कर रहे हैं, तो टैब डिलीमीटर पर स्विच करने से आउटपुट साफ-सुथरा दिख सकता है और प्रक्रिया अधिक कुशलता से हो सकती है।

उत्पादों की सूची के लिए, यह आउटपुट को अल्पविराम से अलग की गई सूची से एक साफ, टैब से अलग की गई संरचना में बदल देता है जो लगभग एक स्प्रेडशीट की तरह दिखता है, जिसे कई मॉडल असाधारण रूप से अच्छी तरह से पार्स करते हैं।

# सरणी आइटम के लिए टैब का उपयोग करें 
तून आइटम.जेसन--डिलीमिटर "\t" -o आइटम.टून 

::: टिप प्रो टिप: टैब सीमांकक अक्सर उद्धरणों से बचने की आवश्यकता को कम कर देते हैं और परिणामस्वरूप संख्यात्मक डेटा के लिए बेहतर टोकननाइजेशन हो सकता है। यदि आप बड़े पैमाने पर डेटासेट संसाधित कर रहे हैं, तो प्रत्येक दक्षता को निचोड़ने के लिए --delimiter "\t" आज़माएं। :::

कुंजी मोड़ने के साथ संरचना को संपीड़ित करना

सीएलआई में उपलब्ध नई सुविधाओं में से एक (स्पेक v1.5 में प्रस्तुत) की फोल्डिंग है। JSON डेटा को अक्सर गहराई से नेस्ट किया जाता है, जिसमें data.response.items जैसी रैपर कुंजियाँ होती हैं जो अर्थ जोड़े बिना संरचनात्मक गहराई जोड़ती हैं।

सीएलआई आपको इन नेस्टेड कुंजियों को एकल डॉट-नोटेटेड पथ में "फोल्ड" करने, पदानुक्रम को समतल करने और इंडेंटेशन और ब्रेसिज़ पर टोकन बचाने की अनुमति देता है।

टून डीप-स्ट्रक्चर.जेसन--की-फोल्डिंग सेफ -ओ फ्लैट.टून 

यह नेस्टेड वस्तुओं को बदल देता है:

{ "उपयोगकर्ता": { "प्रोफ़ाइल": { "आईडी": 1 }} } 

संक्षिप्त TOON प्रतिनिधित्व में:

user.profile.id: 1 

यदि आपको बाद में इसे पूर्ण JSON में परिवर्तित करने की आवश्यकता है, तो आप डीप ऑब्जेक्ट संरचना को पूरी तरह से फिर से बनाने के लिए डिकोडिंग के दौरान --expand-paths सुरक्षित ध्वज का उपयोग कर सकते हैं।

पाइपलाइनों में एकीकृत करना

TOON CLI की वास्तविक शक्ति तब आती है जब आप इसे कर्ल और jq जैसे अन्य उपकरणों के साथ जोड़ते हैं। आप एक एपीआई से डेटा प्राप्त कर सकते हैं, इसे आवश्यक तक फ़िल्टर कर सकते हैं, और इसे एक पंक्ति में TOON में परिवर्तित कर सकते हैं - एक प्रॉम्प्ट में चिपकाए जाने या एक अनुमान समापन बिंदु पर भेजे जाने के लिए तैयार।

इस वर्कफ़्लो में, आप डेटा लाते हैं, केवल सक्रिय उपयोगकर्ताओं को निकालते हैं, इसे पाइप-सीमांकित TOON प्रारूप में परिवर्तित करते हैं, और एक सांख्यिकी रिपोर्ट प्राप्त करते हैं कि आपने अभी-अभी कितने टोकन सहेजे हैं।

कर्ल -s https://api.example.com/users \ 
| jq '.data.active_users' \ 
| तून--आँकड़े--डिलीमिटर "|" 

सारांश

@toon-format/cli केवल एक फ़ाइल कनवर्टर से कहीं अधिक है; यह एलएलएम युग के लिए एक उपयोगिता बेल्ट है। डेटा प्रोसेसिंग को कमांड लाइन पर ले जाकर, आप तेजी से पुनरावृति कर सकते हैं, तुरंत अनुकूलन की कल्पना कर सकते हैं, और अपने मौजूदा इंजीनियरिंग वर्कफ़्लो में टोकन-कुशल प्रारूपों को एकीकृत कर सकते हैं।

चाहे आप RAG (रिट्रीवल-ऑगमेंटेड जेनरेशन) दस्तावेज़ तैयार कर रहे हों या बस एक विशाल JSON ब्लॉब को एक छोटी संदर्भ विंडो में फिट करने का प्रयास कर रहे हों, CLI को एक स्पिन दें। आपका टोकन बजट आपको धन्यवाद देगा।