TOON CLI আয়ত্ত করা
আপনি যদি Large Language Models (LLMs) এর সাথে কাজ করে থাকেন, তাহলে আপনি জানেন যে JSON হল ডেটা এক্সচেঞ্জের ভাষা ফ্রাঙ্কা। যাইহোক, আপনি এটাও জানেন যে JSON কুখ্যাতভাবে "আড্ডাবাজ"। এই সমস্ত ধনুর্বন্ধনী, উদ্ধৃতি এবং বারবার কীগুলি আপনার প্রসঙ্গ উইন্ডোটি খেয়ে ফেলে, বিলম্বিতা বাড়ায় এবং API খরচ বাড়ায়৷
এখানেই TOON (The Object-Oriented Notation) জ্বলজ্বল করে। যদিও টাইপস্ক্রিপ্ট লাইব্রেরি অ্যাপ্লিকেশন কোডের জন্য দুর্দান্ত, কখনও কখনও আপনাকে টার্মিনালে কাজগুলি দ্রুত সম্পন্ন করতে হবে। আপনি একটি প্রম্পট ডিবাগ করছেন, একটি ডেটাসেট প্রস্তুত করছেন, বা টোকেনগুলিতে আপনি কত টাকা বাঁচাতে পারবেন সে সম্পর্কে কেবল কৌতূহলী, @toon-format/toon CLI হল আপনার নতুন সেরা বন্ধু৷
এই নির্দেশিকায়, আমরা দেখব কিভাবে TOON কমান্ড লাইন ইন্টারফেস ব্যবহার করে সরাসরি আপনার শেল ওয়ার্কফ্লোতে ডেটা অপ্টিমাইজেশান সংহত করতে হয়।
সেট আপ করা হচ্ছে
আধুনিক জাভাস্ক্রিপ্ট টুলিং সম্পর্কে সেরা জিনিসগুলির মধ্যে একটি হল যে শুরু করার জন্য আপনাকে প্রায়শই কিছু "ইনস্টল" করতে হবে না। আপনি যদি শুধুমাত্র একটি ফাইলে TOON ব্যবহার করে দেখতে চান, তাহলে আপনি সরাসরি বাইনারি চালানোর জন্য npx ব্যবহার করতে পারেন:
npx @toon-format/cli input.json -o output.toon
যাইহোক, আপনি যদি এটি ঘন ঘন ব্যবহার করার পরিকল্পনা করছেন-এবং একবার আপনি টোকেন সঞ্চয় দেখেন, আপনি সম্ভবত করবেন-একটি বিশ্বব্যাপী ইনস্টলেশনের পথ। এটি আপনাকে আপনার সিস্টেমের যেকোনো জায়গায় সংক্ষিপ্ত toon কমান্ডে অ্যাক্সেস দেয়।
npm install -g @toon-format/cli
# বা
pnpm যোগ করুন -g @toon-format/cli
একবার ইনস্টল হয়ে গেলে, আপনি আপনার ডেটা সঙ্কুচিত করা শুরু করতে প্রস্তুত৷
স্বয়ংক্রিয় সনাক্তকরণের যাদু
TOON CLI আপনি যা করার চেষ্টা করছেন সে সম্পর্কে স্মার্ট হওয়ার জন্য ডিজাইন করা হয়েছে। এনকোড বা ডিকোড করার জন্য আপনাকে খুব কমই স্পষ্টভাবে বলতে হবে; এটি সিদ্ধান্ত নিতে আপনার ফাইল এক্সটেনশন দেখে।
আপনি যদি এটিকে একটি .json ফাইল ফিড করেন, তাহলে ধরে নেওয়া হবে আপনি এটিকে TOON-এ এনকোড করতে চান। আপনি যদি একটি .toon ফাইল প্রদান করেন, তাহলে এটি আপনাকে JSON ফেরত দিতে ডিকোডিং মোডে স্যুইচ করে।
# স্বয়ংক্রিয়ভাবে TOON এ এনকোড করে
toon data.json -o compressed.toon
# স্বয়ংক্রিয়ভাবে JSON এ ডিকোড করে
toon compressed.toon -o restored.json
কিন্তু যেখানে CLI সত্যিকার অর্থে তার মূল্য প্রমাণ করে "ইউনিক্স দর্শন"-এর মধ্যে রয়েছে—ছোট টুলগুলি শিথিলভাবে যোগ দিয়েছে। যেহেতু TOON CLI স্ট্যান্ডার্ড ইনপুট (stdin) থেকে পড়ে এবং স্ট্যান্ডার্ড আউটপুটে (stdout) লিখে, আপনি এটির মাধ্যমে সরাসরি ডেটা পাইপ করতে পারেন।
# পাইপ JSON সরাসরি TOON এ
cat large-dataset.json | toon > data.toon
# TOON-এ এটি দেখতে কেমন তা দেখতে একটি দ্রুত বস্তুর প্রতিধ্বনি করুন
echo '{"name": "Ada", "role": "admin"}' | টুন
আপনি যখন stdin এর মাধ্যমে ডেটা পাইপ করছেন, তখন CLI ডিফল্ট এনকোড মোডে থাকে। আপনি যদি অন্য প্রক্রিয়া থেকে আসা TOON ডেটার একটি স্ট্রীম ডিকোড করতে চান তবে কেবল --ডিকোড (বা -d) পতাকা যোগ করুন।
টোকেন সেভিংস বিশ্লেষণ করা
তথ্য বিন্যাস অপ্টিমাইজ করা প্রায়ই গেম অনুমান সম্পর্কে. "যদি আমি হোয়াইটস্পেস মুছে ফেলি, আমি কতটা সংরক্ষণ করব?" "যদি আমি YAML এ স্যুইচ করি?"
TOON CLI --পরিসংখ্যান পতাকা দিয়ে অনুমানকে মুছে দেয়। এনকোডিং করার সময়, এই বিকল্পটি আনুমানিক টোকেন সংখ্যা গণনা করে এবং অবিলম্বে আপনাকে সঞ্চয় দেখায়। আপনি যখন উচ্চ-ভলিউম এলএলএম কলের জন্য বাজেট করছেন তখন এটি অমূল্য।
toon context.json --stats
আপনি আউটপুট দেখতে পারেন যে আকারে 30% বা 40% হ্রাস নির্দেশ করে। যে শুধু ডিস্ক স্থান নয়; যেটি 40% কম লেটেন্সি এবং 40% কম ইনপুট টোকেন খরচ৷
অ্যাডভান্সড টিউনিং: ডিলিমিটার এবং ফরম্যাটিং
ডিফল্টরূপে, TOON অ্যারে আইটেমগুলিকে আলাদা করতে কমা ব্যবহার করে, JSON এর মতো। যাইহোক, বিভিন্ন এলএলএম টোকেনাইজার বিরাম চিহ্নের সাথে ভিন্নভাবে আচরণ করে। কখনও কখনও, একটি ট্যাব অক্ষর বা একটি পাইপ (|) কমার চেয়ে বেশি টোকেন-দক্ষ।
CLI আপনাকে ফ্লাইতে ডিলিমিটার অদলবদল করতে দেয়। আপনি যদি ট্যাবুলার ডেটা নিয়ে কাজ করেন, তাহলে একটি ট্যাব ডিলিমিটারে স্যুইচ করা আউটপুটটিকে আরও পরিষ্কার দেখায় এবং আরও দক্ষতার সাথে প্রক্রিয়া করতে পারে।
পণ্যগুলির একটি তালিকার জন্য, এটি একটি কমা-বিচ্ছিন্ন তালিকা থেকে আউটপুটকে একটি পরিষ্কার, ট্যাব-বিচ্ছিন্ন কাঠামোতে রূপান্তরিত করে যা প্রায় একটি স্প্রেডশীটের মতো দেখায়, যা অনেক মডেল ব্যতিক্রমীভাবে পার্স করে।
# অ্যারে আইটেমগুলির জন্য ট্যাব ব্যবহার করুন
toon items.json --delimiter "\t" -o items.toon
::: টিপ
প্রো টিপ: ট্যাব ডিলিমিটারগুলি প্রায়শই উদ্ধৃতি থেকে বেরিয়ে আসার প্রয়োজনীয়তা হ্রাস করে এবং এর ফলে সংখ্যাসূচক ডেটার জন্য আরও ভাল টোকেনাইজেশন হতে পারে। আপনি যদি বিশাল ডেটাসেট প্রসেস করছেন, তাহলে চেষ্টা করুন --ডিলিমিটার "\t" ব্যবহার করে দক্ষতার প্রতিটি বিট আউট করতে।
:::
কী ভাঁজ দিয়ে স্ট্রাকচার কম্প্রেস করা
CLI-তে উপলব্ধ নতুন বৈশিষ্ট্যগুলির মধ্যে একটি (স্পেক v1.5-এ প্রবর্তিত) হল কী ফোল্ডিং। 'data.response.items'-এর মতো র্যাপার কী সহ JSON ডেটা প্রায়ই গভীরভাবে নেস্টেড থাকে যা অর্থ যোগ না করে কাঠামোগত গভীরতা যোগ করে।
CLI আপনাকে এই নেস্টেড কীগুলিকে একটি একক ডট-নোটেটেড পাথে "ভাঁজ" করার অনুমতি দেয়, হায়ারার্কি সমতল করে এবং ইন্ডেন্টেশন এবং ব্রেসগুলিতে টোকেনগুলি সংরক্ষণ করে৷
toon deep-structure.json --key-folding safe -o flat.toon
এটি নেস্টেড বস্তুকে রূপান্তরিত করে:
``জসন { "ব্যবহারকারী": { "প্রোফাইল": { "আইডি": 1 } } }
একটি সংক্ষিপ্ত TOON উপস্থাপনা:
``ইয়ামল user.profile.id: 1
আপনি যদি পরে এটিকে সম্পূর্ণ JSON-এ রূপান্তর করতে চান, তাহলে আপনি ডিকোডিংয়ের সময় --প্রসারিত-পাথ নিরাপদ পতাকা ব্যবহার করতে পারেন গভীর অবজেক্টের কাঠামোটি পুরোপুরি পুনর্গঠন করতে।
পাইপলাইনে একত্রিত হচ্ছে
TOON CLI এর আসল শক্তি আসে যখন আপনি এটিকে অন্যান্য টুল যেমন curl এবং jq দিয়ে চেইন করেন। আপনি একটি API থেকে ডেটা আনতে পারেন, এটিকে প্রয়োজনীয় জিনিসগুলিতে ফিল্টার করতে পারেন এবং একটি একক লাইনে এটিকে TOON-এ রূপান্তর করতে পারেন - একটি প্রম্পটে আটকানোর জন্য বা একটি অনুমান শেষ পয়েন্টে পাঠানোর জন্য প্রস্তুত৷
এই ওয়ার্কফ্লোতে, আপনি ডেটা আনেন, শুধুমাত্র সক্রিয় ব্যবহারকারীদের বের করেন, এটিকে একটি পাইপ-ডিলিমিটেড TOON ফর্ম্যাটে রূপান্তর করেন এবং আপনি এইমাত্র কতগুলি টোকেন সংরক্ষণ করেছেন তার একটি পরিসংখ্যান প্রতিবেদন পান।
curl -s https://api.example.com/users \
| jq '.data.active_users' \
| toon --stats --delimiter "|"
সারাংশ
@toon-format/cli শুধু একটি ফাইল রূপান্তরকারীর চেয়ে বেশি; এটি এলএলএম যুগের জন্য একটি ইউটিলিটি বেল্ট। কমান্ড লাইনে ডেটা প্রসেসিং সরানোর মাধ্যমে, আপনি দ্রুত পুনরাবৃত্তি করতে পারেন, অবিলম্বে অপ্টিমাইজেশানগুলি কল্পনা করতে পারেন এবং আপনার বিদ্যমান ইঞ্জিনিয়ারিং ওয়ার্কফ্লোগুলিতে টোকেন-দক্ষ ফর্ম্যাটগুলিকে একীভূত করতে পারেন৷
আপনি RAG (পুনরুদ্ধার-অগমেন্টেড জেনারেশন) নথি প্রস্তুত করছেন বা কেবল একটি ছোট প্রসঙ্গ উইন্ডোতে একটি বিশাল JSON ব্লব ফিট করার চেষ্টা করছেন না কেন, CLI-কে একটি স্পিন দিন। আপনার টোকেন বাজেট আপনাকে ধন্যবাদ জানাবে।