ক্লাউড API ততক্ষণ সুবিধাজনক যতক্ষণ না সেগুলো অসুবিধাজনক হয়ে ওঠে। আপনার মাসিক বিল বাড়তে থাকে। একটি প্রাইসিং পরিবর্তন আপনার বাজেট নষ্ট করে দেয়। আর কোথাও ছোট হরফে লেখা শর্তাবলীর মধ্যে, আপনার মালিকানাধীন ডেটা অন্য কারো মডেল প্রশিক্ষণে ব্যবহৃত হচ্ছে। এই বাধা অনেক ডেভেলপারকে লোকাল AI ওয়ার্কস্টেশন তৈরি করতে উৎসাহিত করছে। আপনি একবার হার্ডওয়্যার কিনবেন, সম্পূর্ণ স্ট্যাকের মালিক হবেন এবং ঠিক করবেন কোন ডেটা আপনার মেশিন থেকে বাইরে যাবে।

এই সপ্তাহে তিনটি সুনির্দিষ্ট উন্নয়ন ঘটেছে যা এই পরিবর্তনকে আরও বাস্তবসম্মত করে তুলেছে: একটি Dockerized ট্রেডিং অ্যাসিস্ট্যান্ট যা আপনার আর্থিক ডেটা আপনার কাছেই রাখে, NVIDIA GPU-কে নিজের নিয়ন্ত্রণে আনার একটি সহজ নির্দেশিকা, এবং Hugging Face থেকে একটি নতুন রিলিজ যা রোবট লার্নিংকে সাধারণ ডেস্কটপের নাগালের মধ্যে নিয়ে আসে।

Docker দিয়ে আপনার ট্রেডিং ডেটা লোকাল রাখুন

একজন ডেভেলপার TradingSpy রিলিজ করেছেন, যা বিশেষভাবে ট্রেডিং ওয়ার্কফ্লোর জন্য তৈরি একটি লোকাল AI রিসার্চ অ্যাসিস্ট্যান্ট। মার্কেট ডেটা এবং ব্যক্তিগত ওয়াচলিস্ট কোনো রিমোট এন্ডপয়েন্টে পাঠানোর পরিবর্তে, আপনি আপনার নিজস্ব হার্ডওয়্যারে একটি Docker কন্টেইনারের ভেতরে সবকিছু চালাতে পারেন।

আর্থিক ডেটা অত্যন্ত সংবেদনশীল। আপনার পোর্টফোলিও গঠন, ট্রেডিং নোট এবং ঐতিহাসিক পজিশনগুলো যদি সম্ভব হয় তবে থার্ড-পার্টি API-এর মাধ্যমে পাঠানো উচিত নয়। মডেলটি লোকালি চালানোর মাধ্যমে সেই ঝুঁকি পুরোপুরি দূর করা যায়। কন্টেইনারটি inference পরিচালনা করে এবং আপনার র (raw) ব্রোকারেজ ডেটা কখনোই আপনার ডিভাইস থেকে বাইরে যাওয়ার প্রয়োজন হয় না।

Docker সেই জটিল ডিপেন্ডেন্সি সমস্যাটিও সমাধান করে যা Python মেশিন লার্নিং প্রজেক্টগুলোকে জর্জরিত করে। ট্রেডিং স্ট্যাকগুলোতে প্রায়ই pandas-এর মতো ডেটা লাইব্রেরি, টেকনিক্যাল অ্যানালাইসিস টুলকিট এবং GPU-অ্যাক্সিলারেটেড inference ইঞ্জিন মিশ্রিত থাকে। আইসোলেশন ছাড়া, একটি প্রজেক্ট CUDA 11.8 চায়, অন্যটি চায় 12.1, আর আপনার বেস সিস্টেমটি পরস্পরবিরোধী এনভায়রনমেন্ট ভেরিয়েবলের একটি কবরস্থানে পরিণত হয়। Docker প্রতিটি ডিপেন্ডেন্সি গ্রাফকে তার নিজস্ব ইমেজে লক করে দেয়। আপনি এটি একবার তৈরি করবেন এবং এটি একটি হেডলেস Ubuntu সার্ভার, WSL2 সহ একটি Windows 11 ডেস্কটপ, অথবা একটি ছোট হোমল্যাব NAS-এ একইভাবে চলবে। আপনি এমনকি আপনার লোকাল ডেটা ডিরেক্টরিগুলোকে কন্টেইনারে bind-mount করতে পারেন যাতে আপনার ফাইলগুলো আপনার ফাইলসিস্টেমেই থাকে এবং এক্সিকিউশন এনভায়রনমেন্ট পরিষ্কার থাকে।

এখানে খরচের একটি যুক্তিও রয়েছে। ক্লাউড LLM API প্রতি টোকেন হিসেবে চার্জ করে। আপনি যদি শত শত টিকারের ওপর প্রি-মার্কেট স্ক্যান চালান এবং একটি মডেলে প্রাইস অ্যাকশন, নিউজের সারাংশ এবং টেকনিক্যাল ইন্ডিকেটর ইনপুট হিসেবে দেন, তবে সেই কলের সংখ্যা দ্রুত বৃদ্ধি পায়। লোকাল মডেলে কোনো মিটার চলে না। একটি GPU-এর প্রাথমিক খরচ একবারই লাগে; কিন্তু API বিল প্রতি মাসে আপনাকে কষ্ট দেয়।

NVIDIA GPU এনভায়রনমেন্ট বোঝা

ক্লাউড API থেকে লোকাল NVIDIA কার্ডে চলে আসা শুধু PyTorch ইনস্টল করা এবং .to('cuda') কল করার মতো সহজ নয়। এখানে শেখার একটি বড় ধাপ রয়েছে, এবং এটি বোঝা একজন শখের স্ক্রিপ্ট রাইটার এবং একজন নির্ভরযোগ্য ওয়ার্কস্টেশন ব্যবহারকারীর মধ্যে পার্থক্য তৈরি করে।

ক্লাউড API হার্ডওয়্যারকে লুকিয়ে রাখে। আপনি JSON পাঠান, আপনি JSON পান। লোকালি, আপনিই সিস্টেম অ্যাডমিনিস্ট্রেটর। আপনার সঠিক ড্রাইভার, একটি সামঞ্জস্যপূর্ণ CUDA toolkit এবং আপনার GPU আর্কিটেকচারের জন্য কম্পাইল করা একটি PyTorch বিল্ড প্রয়োজন। তারপর আপনাকে সেটি আপনার রানটাইমে যুক্ত করতে হবে, তা কন্টেইনারের জন্য nvidia-docker রানটাইম কনফিগার করা হোক বা bare metal-এ LD_LIBRARY_PATH ম্যানেজ করা হোক। প্রতিটি লেয়ারের একটি ভার্সন টিউপল (version tuple) থাকে যা মিলতে হয়, আর যখন তা মেলে না, তখন আপনি মিসিং লাইব্রেরি বা আন-ইনিশিয়ালাইজড ডিভাইস সম্পর্কে অস্পষ্ট ত্রুটি (cryptic errors) পাবেন।

এর প্রতিদান হলো সরাসরি হার্ডওয়্যার নিয়ন্ত্রণ। আপনি শিখবেন যে GPU মেমরি একটি কঠোর সীমা (hard ceiling)। সিস্টেম RAM-এর মতো নয়, যেখানে OS সোয়াপ (swap) এবং পেজ (page) করতে পারে, VRAM শেষ হয়ে যাওয়ার মানে হলো সাধারণত একটি ক্র্যাশ করা ট্রেনিং জব অথবা একটি ইনফারেন্স ব্যাচ যা তাৎক্ষণিকভাবে ব্যর্থ হয়। এই সীমাবদ্ধতা আপনাকে ব্যাচ সাইজিং, mixed-precision training এবং মেমরি প্রোফাইলিং নিয়ে ভাবতে বাধ্য করে। আপনি কম্পিউটকে একটি অসীম ইউটিলিটি হিসেবে দেখা বন্ধ করবেন এবং এটিকে একটি সীমিত সম্পদ হিসেবে বিবেচনা করতে শুরু করবেন যা আপনি পরিচালনা করেন।

এই সপ্তাহে প্রচলিত একটি দরকারী নির্দেশিকা এন্টারপ্রাইজ এবং কনজিউমার GPU-কে একই পর্যায়ের হিসেবে বিবেচনা করে। আপনি ডেটাসেন্টার-গ্রেড A100 ব্যবহার করুন বা কনজিউমার RTX 4070, মূল বিষয়গুলো পরিবর্তন হয় না। উভয়ই একই CUDA প্রোগ্রামিং মডেলের ওপর নির্ভর করে। উভয় ক্ষেত্রেই আপনাকে টেন্সরগুলোকে (tensors) স্পষ্টভাবে ডিভাইসে মুভ করতে হয়। আপনি যদি একটি ১২-গিগাবাইট কার্ডে ১৪-গিগাবাইটের মডেল বরাদ্দ করার চেষ্টা করেন, তবে উভয় ক্ষেত্রেই আপনি একইভাবে সমস্যায় পড়বেন। এই শিক্ষাগুলো কাজে লাগে। আপনি আপনার ডেস্কটপের কার্ডে প্রোটোটাইপ তৈরি করতে পারেন এবং পরবর্তীতে বড় কোনো হার্ডওয়্যারে স্কেল করার সময় ঠিক একই অপ্টিমাইজেশন মাইন্ডসেট প্রয়োগ করতে পারেন।

LeRobot v0.6.0 রোবোটিক্সকে নিয়ে আসে আপনার ডেস্কটপে

Hugging Face LeRobot-এর ০.৬.০ ভার্সন প্রকাশ করেছে, যা একটি ফ্রেমওয়ার্ক। এটি চ্যাটবট এবং ইমেজ জেনারেটরের পেছনে থাকা Transformers এবং Diffusers লাইব্রেরিগুলোকে একটি সম্পূর্ণ ভিন্ন কাজের জন্য ব্যবহার করে: রোবট লার্নিং। পরবর্তী শব্দ বা পিক্সেল প্রেডিক্ট করার পরিবর্তে, এই মডেলটি একটি ক্যামেরা ফিড এবং ভাষাগত নির্দেশনার ভিত্তিতে পরবর্তী মোটর অ্যাকশন প্রেডিক্ট করে।

রোবোটিক্স দীর্ঘকাল ধরে এমন একটি বিষয় হিসেবে বিবেচিত হয়ে আসছে যা মোশন-ক্যাপচার রুম এবং ইন্ডাস্ট্রিয়াল GPU ক্লাস্টার সমৃদ্ধ উচ্চ-তহবিলযুক্ত ল্যাবগুলোর জন্য সংরক্ষিত। LeRobot সেই বাধাটি কমিয়ে আনছে। ০.৬.০ ভার্সনটি রোবোটিক পলিসি ডিজাইন, ট্রেনিং এবং মূল্যায়ন করার প্রক্রিয়াকে সহজ করে তোলে। আপনি সিমুলেশনে প্রোটোটাইপ তৈরি করতে পারেন, পলিসি আর্কিটেকচারে পরিবর্তন আনতে পারেন এবং এরপর হাজার হাজার লাইন লো-লেভেল কন্ট্রোল কোড না লিখেই একটি বাস্তব রোবোটিক আর্ম বা মোবাইল বেসে তা স্থানান্তর করতে পারেন।

এই রিলিজটির উল্লেখযোগ্য দিক হলো এটি কনজিউমার GPU-কে লক্ষ্য করে তৈরি করা হয়েছে। পরীক্ষা করার জন্য আপনার কোনো সার্ভার র‍্যাকের প্রয়োজন নেই। একটি মাত্র হাই-এন্ড কনজিউমার কার্ড দিয়ে এমন পলিসি ট্রেনিং করা সম্ভব যা বাস্তব গ্রিপার এবং আর্মের ক্ষেত্রে কার্যকর হয়। এটি একটি স্পষ্ট সংকেত যে ওপেন-ওয়েট মডেলগুলো ক্লাউড থেকে বেরিয়ে এসে এখন ফিজিক্যাল হার্ডওয়্যারে প্রবেশ করছে। মডেলের ওয়েটগুলো আপনার ড্রাইভে থাকে। কোনো API-তে নেটওয়ার্ক রাউন্ড-ট্রিপ ছাড়াই রোবট কমান্ড গ্রহণ করতে পারে। যখন আপনি বাস্তব জগতের কোনো চলন্ত বস্তু নিয়ন্ত্রণ করছেন, তখন ল্যাটেন্সি এবং প্রাইভেসির সুবিধাগুলো উপেক্ষা করা কঠিন।

এটি সফটওয়্যার এবং হার্ডওয়্যারের মধ্যকার সীমানা সম্পর্কে আপনার চিন্তাধারাকেও বদলে দিচ্ছে। রোবোটিক পলিসিগুলো আগে কেবল গবেষণাপত্রে সীমাবদ্ধ ছিল। এখন সেগুলো এমন রিপোজিটরিতে থাকে যা আপনি ক্লোন করতে পারেন, আপনার নিজস্ব মোশন ডেটা দিয়ে ফাইন-টিউন করতে পারেন এবং আপনার মালিকানাধীন হার্ডওয়্যারে ডেপ্লয় করতে পারেন।

আসল জয় হলো নিয়ন্ত্রণ

একটি লোকাল AI স্ট্যাক তৈরি করা মানে নীতিগতভাবে ক্লাউডকে প্রত্যাখ্যান করা নয়। বরং আপনি কীসের ওপর গুরুত্ব দিচ্ছেন, তার ওপর ভিত্তি করে আপনার কম্পিউটেশন কোথায় হবে তা বেছে নেওয়া। যখন আপনি লোকালি মডেল চালান, তখন আপনার ডেটা আপনার ড্রাইভে সুরক্ষিত থাকে। আপনার খরচ অনিশ্চিত মাসিক বিল থেকে একটি নির্দিষ্ট হার্ডওয়্যার বিনিয়োগে রূপান্তরিত হয়। এবং আপনি এমন কিছু দক্ষতা অর্জন করেন—যেমন CUDA ডিবাগিং, VRAM প্রোফাইলিং, ওয়ার্কফ্লো কন্টেইনারাইজেশন—যা আপনাকে কেবল একজন API ব্যবহারকারী নয়, বরং একজন সিস্টেম ইঞ্জিনিয়ার হিসেবে গড়ে তোলে।

সরঞ্জামগুলো প্রস্তুত। মডেলগুলো কনজিউমার কার্ডে চালানোর মতো যথেষ্ট ছোট। এখন কেবল একটি প্রশ্নই বাকি আছে—আপনি কি এই স্ট্যাকটির মালিক হতে চান নাকি এটি ভাড়া চালিয়ে যেতে চান?