ChatGPT আসলে কী করে
আপনি যখন ChatGPT বা এই ধরনের কোনো AI-কে প্রশ্ন করেন, ভেতরে যা ঘটে সেটা এক লাইনে বলা যায়: সে বারবার অনুমান করে পরের শব্দটা কী হওয়া উচিত।
শুনতে খেলো লাগে, কিন্তু ব্যাপারটা খেলো নয়। "বাংলাদেশের রাজধানী" এই কথাগুলোর পর কোন শব্দটা আসার সম্ভাবনা সবচেয়ে বেশি, সেটা ঠিকঠাক বলতে পারার জন্য একটা প্রোগ্রামকে ভূগোল, বাংলা ব্যাকরণ আর বাক্য গঠনের অনেকটাই বুঝতে হয়। কোটি কোটি বাক্যে এই অনুমানের কাজটা করতে করতে Model-এর ভেতরে এমন কিছু জমা হয়, যাকে আমরা বাইরে থেকে "জ্ঞান" বলি।
এই প্রোগ্রামটার নামই Large Language Model, সংক্ষেপে LLM। Large মানে আকারে বিশাল, Language Model মানে ভাষার নমুনা বা ছাঁচ। ChatGPT, Claude, Gemini, DeepSeek, এরা সবাই এক একটা LLM-এর উপরে বসানো অ্যাপ।
একটা কথা এখানেই পরিষ্কার করে নেওয়া ভালো। "ChatGPT" আর "LLM" এক জিনিস নয়। LLM হলো ইঞ্জিন, আর অ্যাপটা হলো পুরো গাড়ি: তার ভেতরে চ্যাটের ইতিহাস রাখার ব্যবস্থা আছে, ফাইল পড়ার ব্যবস্থা আছে, অনেক সময় ইন্টারনেটে খোঁজার ব্যবস্থাও আছে। আপনি যেসব সুবিধা দেখেন, তার অনেকগুলো ইঞ্জিনের নয়, গাড়ির।
Token: AI-র চোখে লেখা মানে টুকরো
Model কিন্তু আস্ত শব্দ দেখে না। সে লেখাটাকে আগে ছোট ছোট টুকরোয় ভাঙে, প্রতিটা টুকরোর নাম Token।
Token সবসময় একটা শব্দ নয়। ইংরেজিতে "school" হয়তো একটাই Token, কিন্তু "unbelievable" ভেঙে তিনটা হতে পারে। বিরাম চিহ্ন, স্পেস, এমনকি শব্দের অর্ধেক অংশও আলাদা Token হয়।
এই ভাঙার নিয়মটা আগে থেকে ঠিক করা থাকে। Model তারপর প্রতিটা Token-কে সংখ্যায় রূপান্তর করে, কারণ কম্পিউটার শেষ পর্যন্ত সংখ্যা ছাড়া কিছু বোঝে না। উত্তর লেখার সময়ও সে একটা একটা Token বানায়, আর সেগুলো জোড়া লাগতে লাগতে আপনি স্ক্রিনে বাক্য দেখতে পান। AI-র উত্তর যে টাইপরাইটারের মতো ধীরে ধীরে আসে, তার কারণ এটাই, পুরোটা একসাথে তৈরি হয় না।
Token কেন জানা দরকার? কারণ AI-র জগতে প্রায় সবকিছুর মাপ এই এককে। সে একবারে কতটুকু মনে রাখতে পারে, তার মাপ Token। API দিয়ে ব্যবহার করলে বিল কত আসবে, তার মাপ Token। উত্তর কত লম্বা হবে, তারও মাপ Token। আপনি Token না বুঝলে এই তিনটার কোনোটাই বুঝবেন না।
খুলনার একটা হার্ডওয়্যার দোকান: Token-এর আসল হিসাব
এবার একটা বাস্তব হিসাব দেখি, তাতে ব্যাপারটা হাতে ধরা যাবে।
খুলনার একজন হার্ডওয়্যার দোকানের মালিক ঠিক করলেন, তাঁর ১২০টা প্রোডাক্টের জন্য ফেসবুকে দেওয়ার মতো বাংলা বর্ণনা লেখাবেন। প্রতিটা প্রোডাক্টের জন্য তিনি লিখছেন ৪০ শব্দের মতো ইনস্ট্রাকশন, আর AI ফেরত দিচ্ছে ৬০ শব্দের মতো বর্ণনা। মানে প্রতি প্রোডাক্টে মোটামুটি ১০০ শব্দ।
এখন একটা মোটা দাগের অনুমান ধরি: বাংলায় একটা শব্দ ভেঙে গড়ে তিনটা Token হয়। এটা অ্যাপ আর Model ভেদে বদলায়, তাই এটাকে হিসাবের সুবিধার জন্য নেওয়া একটা ধরা সংখ্যা ভাবুন, কোনো নিয়ম নয়। তাহলে প্রতি প্রোডাক্টে খরচ প্রায় ৩০০ Token।
১২০টা প্রোডাক্টে ৩০০ করে, মোট ৩৬,০০০ Token। শুনতে সামান্য। কিন্তু এখানেই আসল ব্যাপারটা লুকানো।
তিনি যদি ১২০টা প্রোডাক্টই একটামাত্র চ্যাটে করেন, তাহলে প্রতিবার পুরো আগের কথোপকথন আবার পাঠাতে হয়। দ্বিতীয় প্রোডাক্টে Model পড়ছে ৬০০ Token, দশম প্রোডাক্টে ৩,০০০, আর ১২০তম প্রোডাক্টে একটা মেসেজের জন্যই সে পড়ছে ৩৬,০০০ Token। সব মিলিয়ে পুরো চ্যাটে পড়া হচ্ছে প্রায় ২১ লাখ ৭৮ হাজার Token।
আর তিনি যদি প্রতি দশটা প্রোডাক্টের পর নতুন চ্যাট খোলেন? প্রতিটা ছোট চ্যাটে পড়া হয় প্রায় ১৬,৫০০ Token, বারোটা চ্যাটে মোট প্রায় ১ লাখ ৯৮ হাজার। মানে প্রায় এগারো ভাগের এক ভাগ।
ফল তিনটা, আর তিনটাই তিনি টের পাবেন: লম্বা চ্যাটে উত্তর ধীরে আসে, API-তে বিল বেশি ওঠে, আর একটা সময়ের পর শুরুর দিকের ইনস্ট্রাকশন সে আর দেখতে পায় না।
বাংলা লিখলে বেশি Token লাগে কেন
উপরের হিসাবে "গড়ে তিনটা Token" ধরাটা কাকতালীয় নয়। বেশিরভাগ Model-এর Token ভাঙার নিয়ম তৈরি হয়েছে মূলত ইংরেজি লেখা দেখে। ফলে ইংরেজির একটা সাধারণ শব্দ প্রায়ই একটাই Token, কিন্তু বাংলার একটা শব্দ ভেঙে কয়েকটা Token হয়ে যায়।
এর ব্যবহারিক ফল তিনটা:
- একই কথা বাংলায় লিখলে Token বেশি খরচ হয়, তাই খরচও বেশি
- বাংলা উত্তর লিখতে সময় একটু বেশি লাগে
- Context Window-এর লিমিটে বাংলা লেখা তাড়াতাড়ি পৌঁছে যায়
এটা বাংলার কোনো দুর্বলতা নয়, এটা Model বানানোর সময়ের একটা সিদ্ধান্তের ফল। নতুন Model-গুলোতে অবস্থা আগের চেয়ে ভালো হচ্ছে, কিন্তু পার্থক্যটা এখনো আছে।
Parameter মানে কী, অঙ্ক ছাড়া
"এই Model-এ এত শত কোটি parameter" কথাটা সবাই শোনে, কেউ বোঝে না। অঙ্ক ছাড়াই বোঝা যায়।
একটা বিশাল মিক্সিং বোর্ড কল্পনা করুন, যেখানে কোটি কোটি নব ঘোরানো যায়। প্রতিটা নব একটু করে ঠিক করে দেয়, একটা Token দেখার পর পরের Token-এর সম্ভাবনার হিসাব কোন দিকে হেলবে। Training মানে হলো, লেখা দেখিয়ে দেখিয়ে ওই নবগুলো একটু একটু করে ঘুরিয়ে ঠিক জায়গায় বসানো। Parameter মানে ওই নবগুলোই।
দুটো কথা এখানে জরুরি। এক, একটা নবের আলাদা কোনো মানে নেই। "ঢাকা কোথায়" এই তথ্যটা কোনো একটা নির্দিষ্ট নবে লেখা নেই, ওটা কোটি নবের সম্মিলিত পজিশনে ছড়িয়ে আছে। তাই Model থেকে একটা তথ্য আলাদা করে মুছে ফেলা যায় না, যেভাবে Excel থেকে একটা সারি মোছা যায়।
দুই, নব বেশি মানেই তথ্য বেশি নয়। নব বেশি মানে সূক্ষ্মতা বেশি, জটিল সম্পর্ক ধরার ক্ষমতা বেশি। একটা ছোট Model যদি ভালো লেখা দেখে তৈরি হয়, সে সাধারণ কাজে বড় Model-এর প্রায় সমান চলতে পারে।
| ছোট Model | বড় Model | |
| Parameter-এর সংখ্যা | তুলনামূলক কম | অনেক বেশি |
| গতি | দ্রুত | ধীর |
| খরচ | কম | বেশি |
| সহজ কাজ, যেমন অনুবাদ বা সারাংশ | প্রায় সমান ভালো | ভালো |
| কয়েক ধাপের যুক্তি বা জটিল কোড | দুর্বল | স্পষ্ট এগিয়ে |
| নিজের ল্যাপটপে চালানো | অনেক সময় সম্ভব | সাধারণত নয় |
Training আর Inference: দুটো আলাদা ঘটনা
সবচেয়ে বেশি ভুল বোঝাবুঝি হয় এই জায়গায়। মানুষ ভাবে, আমি ChatGPT-কে যা বলছি সে তা শিখে নিচ্ছে। বাস্তবে দুটো সম্পূর্ণ আলাদা ঘটনা আছে।
Training মানে শেখা। এটা ঘটেছে অনেক আগে, কোম্পানির নিজস্ব সার্ভারে, আপনি ব্যবহার শুরু করারও আগে। ওখানে বিপুল পরিমাণ লেখা দেখিয়ে দেখিয়ে Model-এর ভেতরের কোটি কোটি সংখ্যা (এগুলোর নাম Parameter বা Weight) ঠিকঠাক বসানো হয়েছে। কাজ শেষ হলে সেই সংখ্যাগুলো জমে যায়, আর বদলায় না।
Inference মানে ব্যবহার। আপনি প্রশ্ন করলেন, জমে যাওয়া ওই সংখ্যাগুলো দিয়ে হিসাব কষে উত্তর বেরিয়ে এলো। এতে Model-এর ভেতরের কিছুই বদলায় না।
তুলনাটা এরকম: একজন ছাত্র সারা বছর পড়ল, তারপর পরীক্ষার হলে বই ছাড়া বসল। হলে বসে সে নতুন কিছু শিখছে না, যা মাথায় ঢুকেছিল সেটা দিয়েই লিখছে। আপনার প্রশ্নটা তার পরীক্ষার প্রশ্ন, তার সারা বছরের পড়া নয়।
| Training (শেখা) | Inference (ব্যবহার) | |
| কখন ঘটে | একবার, আপনার ব্যবহারের অনেক আগে | প্রতিবার আপনি Enter চাপলে |
| সময় লাগে | সপ্তাহ থেকে মাস | কয়েক সেকেন্ড |
| কোথায় ঘটে | কোম্পানির বিশাল সার্ভার ফার্মে | একটা সার্ভারে, আপনার রিকোয়েস্টের জবাবে |
| খরচ | বিপুল, একবারের | অল্প, প্রতিবারের |
| আপনার লেখা কি Model বদলায় | না | না |
এই কারণেই Model-এর একটা "knowledge cutoff" বা তথ্যের শেষ তারিখ থাকে। ওই তারিখের পরের ঘটনা সে নিজে থেকে জানে না। আজকের মার্কেট প্রাইস বা গতকালের খেলার ফল সে বলতে পারবে না, যদি না অ্যাপটা আলাদা করে ইন্টারনেটে খুঁজে এনে দেয়।
আরেকটা কথা যোগ করা দরকার। cutoff-এর আগের সব তথ্য সে সমান ভালো জানে, এমনও নয়। ইন্টারনেটে যে বিষয়ে বেশি লেখা আছে সেটা সে ভালো জানে, যে বিষয়ে কম লেখা আছে সেটা কম। বাংলাদেশের জেলা পর্যায়ের বা প্রতিষ্ঠান পর্যায়ের তথ্য এই দ্বিতীয় দলে পড়ে।
Model-এর ভেতরে কি ইন্টারনেটটা রাখা আছে
না। এটা পরিষ্কার হওয়া দরকার।
Model-এর ফাইলের ভেতরে কোনো লেখা বা পেজ সেভ থাকে না। ওখানে থাকে শুধু সংখ্যা, কোটি কোটি সংখ্যা, যেগুলো লেখা দেখে দেখে ঠিক করা হয়েছে। ব্যাপারটা অনেকটা এরকম: আপনি দশ বছর ধরে পত্রিকা পড়েছেন, কিন্তু আপনার মাথায় পত্রিকাগুলো রাখা নেই। আছে একটা ধারণা, কোন ধরনের খবর কীভাবে লেখা হয়।
তাই AI যখন কোনো তথ্য বলে, সে সেটা কোথাও থেকে "তুলে আনছে" না, সে সেটা "তৈরি করছে"। বেশিরভাগ সময় তৈরি জিনিসটা সঠিকই হয়, কারণ শেখার সময় সঠিক তথ্যই বেশি দেখেছে। কিন্তু ভুল হওয়ার দরজাটা সবসময় খোলা থাকে।
এই একটা কথা বুঝলে আরও একটা জিনিস বোঝা যায়: কেন সে প্রায়ই সঠিক তথ্যের কাছাকাছি একটা ভুল তথ্য দেয়। বইয়ের নাম প্রায় ঠিক, লেখকের নাম অন্য একজন। আইনের নাম ঠিক, ধারার নম্বর ভুল। কারণ সে নামটা মনে করছে না, সে নামটার মতো দেখতে একটা জিনিস তৈরি করছে।
Context Window: মনে রাখার জায়গাটা কতটুকু
চ্যাটের ভেতরে AI যে আগের কথা মনে রাখে, সেটা কীভাবে হয়?
কৌশলটা খুব সহজ, আর অনেকের কাছে অবাক করা। প্রতিবার আপনি নতুন একটা লাইন লিখলে অ্যাপটা পুরো আগের কথোপকথন আবার নতুন করে Model-এর কাছে পাঠায়। মানে দশ নম্বর প্রশ্নের সময় আগের নয়টা প্রশ্ন আর নয়টা উত্তর, সবই আবার পাঠানো হচ্ছে। Model প্রতিবার সবটা নতুন চোখে পড়ে।
এই যে একবারে যতটুকু লেখা সে সামনে রাখতে পারে, তার নাম Context Window, আর সেটা মাপা হয় Token-এ। Model ভেদে এটা কয়েক হাজার থেকে দশ লাখ Token বা তারও বেশি হতে পারে। নিজের অ্যাপে কতটা, সেটা ওই অ্যাপের তথ্যেই লেখা থাকে।
জানালার ভেতরে কিন্তু শুধু আপনার লেখা থাকে না। যা যা গোনা হয়:
- অ্যাপের নিজস্ব গোপন ইনস্ট্রাকশন, যেটা আপনি লেখেননি অথচ জায়গা নেয়
- আপনার এ পর্যন্ত করা সব প্রশ্ন, চ্যাট যত লম্বা তত বেশি
- AI-র এ পর্যন্ত দেওয়া সব উত্তর, যেগুলো সাধারণত প্রশ্নের চেয়ে বড়
- আপলোড করা ফাইল বা ছবির পাঠোদ্ধার করা লেখা, এক PDF-ই জানালার বড় অংশ খেয়ে ফেলতে পারে
- এখনকার প্রশ্ন, সবচেয়ে ছোট অংশ
- উত্তর লেখার জন্য বরাদ্দ জায়গা, জানালা ভরে গেলে উত্তরও ছোট হয়ে আসে
শেষ লাইনটা অনেকে খেয়াল করেন না। জানালা মানে শুধু পড়ার জায়গা নয়, লেখার জায়গাও।
একজন স্কুল প্রশাসকের লম্বা চ্যাট
একটা স্কুলের প্রশাসনিক কর্মকর্তা ভর্তির একটা নোটিশ নিয়ে কাজ করছেন। নোটিশটা বারো পেজের, প্রায় চার হাজার শব্দের, মানে আমাদের ধরা হিসাবে প্রায় ১২,০০০ Token। তিনি পুরোটা পেস্ট করে দিলেন।
তারপর তিনি একই চ্যাটে ২৫টা প্রশ্ন করলেন: কোন শ্রেণিতে কত আসন, কবে ফরম দেওয়া শুরু, অভিভাবকদের জন্য কী লিখব, নোটিশ বোর্ডের জন্য ছোট রূপ কী হবে। প্রতিটা প্রশ্ন আর উত্তর মিলে ধরুন ২৫০ শব্দ, মানে ৭৫০ Token।
মোট দাঁড়ায় ১২,০০০ আর ২৫ গুণ ৭৫০, অর্থাৎ প্রায় ৩০,৭৫০ Token। বড় জানালার Model-এ এটা কিছুই না, সব ঠিকঠাক চলবে।
কিন্তু ছোট জানালার কোনো Model বা কোনো সীমিত ফ্রি ভার্সনে, যেখানে জানালা ধরুন আট হাজার Token, সেখানে কী হবে? নোটিশটাই জানালার চেয়ে বড়। অ্যাপ চুপচাপ শুরুর অংশ ফেলে দিতে থাকবে। বিশ নম্বর প্রশ্নের সময় বিজ্ঞপ্তির প্রথম পাঁচ পেজ আর সামনে নেই। অথচ সে "জানি না" বলবে না, সে যেটুকু দেখতে পাচ্ছে সেটুকু দিয়েই আত্মবিশ্বাসের সাথে উত্তর দিবে।
এখান থেকে একটা কাজের নিয়ম বেরোয়: উত্তর হঠাৎ আগের কোনো কথার সাথে না মিললে, প্রথম সন্দেহটা করবেন জানালার উপর। সমাধান হলো নতুন চ্যাট খুলে শুধু দরকারি অংশটুকু আবার দেওয়া, পুরো বারো পেজ নয়।
সে ভুলে যায় কেন
এবার ভুলে যাওয়ার কারণটা পরিষ্কার হয়ে যায়। দুটো আলাদা "ভুলে যাওয়া" আছে।
এক, লম্বা চ্যাটে ভুলে যাওয়া। কথা বাড়তে বাড়তে যখন Context Window ভরে যায়, তখন শুরুর দিকের অংশ বাদ পড়তে থাকে। আপনি প্রথমে বলেছিলেন "আমার দোকানের নাম শাড়িঘর", পঞ্চাশটা মেসেজ পরে সে ওটা আর দেখতে পাচ্ছে না, কারণ ওটা জানালার বাইরে চলে গেছে।
দুই, নতুন চ্যাটে ভুলে যাওয়া। নতুন চ্যাট মানে পুরো খালি একটা জানালা। গতকালের কথোপকথন সেখানে পাঠানোই হয় না, তাই সে জানার প্রশ্নই ওঠে না। আপনার কথা তার ভেতরে জমা হয়নি, কখনোই হয় না।
কিছু অ্যাপে আজকাল "memory" নামে একটা সুবিধা আছে। ওটা Model-কে বদলায় না। ওটা আলাদা করে কিছু নোট জমিয়ে রাখে, আর প্রতিবার চুপচাপ আপনার প্রশ্নের সাথে জুড়ে দেয়। মনে হয় সে মনে রেখেছে, আসলে ম্যানেজমেন্টটা বাইরে থেকে করা।
কাজের পরামর্শ: লম্বা কাজে মাঝেমধ্যে গুরুত্বপূর্ণ তথ্যগুলো আবার লিখে দিন। "মনে করিয়ে দিই, দোকানের নাম শাড়িঘর, ডেলিভারি ঢাকায় ৬০ টাকা।" এতে জিনিসটা আবার জানালার ভেতরে চলে আসে।
memory, ফাইল আপলোড আর সার্চ, তিনটা আলাদা ব্যবস্থা
এই তিনটাকে মানুষ এক করে ফেলে, অথচ তিনটাই আলাদা কাজ করে। কোনটাই Model-এর ভেতরটা বদলায় না, তিনটাই জানালায় বাড়তি লেখা ঢোকানোর তিন রকম উপায়।
| ব্যবস্থা | আসলে যা করে | Model কি বদলায় | মূল লিমিট |
| memory | কিছু নোট আলাদা জমিয়ে রেখে প্রতিবার চুপচাপ জুড়ে দেয় | না | কী জমেছে আপনি না দেখলে জানবেন না, ভুল নোটও জমতে পারে |
| ফাইল বা ছবি আপলোড | ফাইলের লেখা বের করে জানালায় ঢোকায় | না | বড় ফাইলে পুরোটা ঢোকে না, অংশ ঢোকে |
| ইন্টারনেটে খোঁজা | কয়েকটা পেজ এনে জানালায় ঢোকায় | না | পেজটা ভুল হতে পারে, বা সে ভুল অংশ বাছতে পারে |
| নতুন চ্যাট | জানালা একদম খালি করে দেয় | না | আগের সব প্রসঙ্গ হারায় |
তাই "AI আমার ফাইলটা শিখে নিয়েছে" কথাটা ভুল। সে ফাইলটা পড়েছে, ওই চ্যাটের জন্য। চ্যাট শেষ, পড়াও শেষ।
একই প্রশ্নে দুইবার দুই উত্তর কেন
Model পরের Token বাছার সময় শুধু সবচেয়ে সম্ভাব্যটা নেয় না, সম্ভাবনার লিস্ট থেকে একটু এলোমেলোভাবে বাছে। এই এলোমেলো ভাবটার মাত্রা নিয়ন্ত্রণ করে একটা সেটিং, যার নাম Temperature।
মাত্রা কম হলে উত্তর একঘেয়ে কিন্তু স্থির হয়, বেশি হলে সৃজনশীল কিন্তু অস্থির। এই কারণেই একই প্রশ্ন দুবার করলে হুবহু এক উত্তর নাও পেতে পারেন। এটা এরর নয়, এটা নকশা।
আত্মবিশ্বাসের সাথে ভুল বলা
AI-র সবচেয়ে বিপজ্জনক অভ্যাসটা হলো, ভুল কথাটাও সে ঠিক ততটাই গুছিয়ে বলে যতটা গুছিয়ে সঠিক কথাটা বলে। ইংরেজিতে একে বলে hallucination।
কারণটা এতক্ষণে বোঝা যাওয়ার কথা। তার কাজ হলো সম্ভাব্য পরের শব্দ বসানো, সত্য ভেরিফাই করা নয়। "এই বইয়ের লেখক কে" প্রশ্নের একটা সম্ভাব্য উত্তরের গঠন হলো একটা মানুষের নাম। সেই নামটা সঠিক না হলেও বাক্যটা দেখতে নিখুঁত লাগে।
আরও দুটো কথা এর সাথে যোগ করা দরকার।
এক, তার ভেতরে "আমি জানি" আর "আমি জানি না" আলাদা করে চেনার কোনো কাঁটা নেই। সে যা বলে সবই একই প্রসেসের ফল। তাই "আমি নিশ্চিত" লেখাটা তার আত্মমূল্যায়ন নয়, ওটাও নিছক একটা সম্ভাব্য বাক্য।
দুই, ব্যবহারিকভাবে দেখা যায় সে সাহায্য করার দিকে ঝুঁকে থাকে। প্রশ্ন করলে উত্তর দেওয়াটাই তার স্বাভাবিক আচরণ, আর "তথ্যটা আমার কাছে নেই" বলাটা কম স্বাভাবিক। তাই ফাঁকা জায়গায় সে প্রায়ই একটা মানানসই জিনিস বসিয়ে দেয়।
মনে রাখবেন, AI-র উত্তরের ভাষার দৃঢ়তা আর তথ্যের নির্ভুলতা, এই দুটোর মধ্যে কোনো সম্পর্ক নেই।
কোন ভুলটা কোথা থেকে আসে
ভুল দেখলে অনেকে ভাবেন "AI খারাপ"। আসলে আলাদা আলাদা ভুলের আলাদা আলাদা কারণ, আর সমাধানও আলাদা।
| যা দেখছেন | সম্ভাব্য কারণ | কী করবেন |
| সাম্প্রতিক ঘটনা জানে না | knowledge cutoff | সার্চ চালু আছে কি না দেখুন, নয়তো নিজে তথ্য দিন |
| আগে বলা কথা ভুলে গেছে | জানালা ভরে গেছে | নতুন চ্যাট, দরকারি অংশ আবার দিন |
| নাম বা সংখ্যা প্রায় ঠিক, একটু ভুল | সে মনে করছে না, তৈরি করছে | উৎস চান, বা নিজে ভেরিফাই করুন |
| বাংলাদেশের নিয়ম বলতে গিয়ে অন্য দেশের নিয়ম | আমাদের বিষয়ে লেখা কম | সরকারি সাইট থেকে মিলিয়ে নিন |
| লম্বা লিস্টের যোগফল ভুল | সে ক্যালকুলেটর নয় | ফর্মুলা চান, হিসাব Excel-এ করুন |
| একই প্রশ্নে দুই উত্তর | Temperature | সন্দেহ হলে ধরে নিন সে আন্দাজ করছে |
| উত্তর হঠাৎ থেমে যায় | উত্তরের জন্য বরাদ্দ Token শেষ | "চালিয়ে যাও" লিখুন, বা ভাগ করে চান |
সাধারণ ভুল আর তার সমাধান
ইউজারদের দিক থেকেও কিছু ভুল বারবার হয়। সবগুলোরই সহজ সমাধান আছে।
- ভুল: সব কাজ একটা চ্যাটে করা। ফল: ধীর, দামি, আর শুরুর ইনস্ট্রাকশন হারিয়ে যায়। সমাধান: নতুন বিষয় মানে নতুন চ্যাট
- ভুল: প্রসঙ্গ না দিয়ে প্রশ্ন করা। "একটা পোস্ট লেখো" বলে খারাপ ফল পেয়ে হতাশ হওয়া। সমাধান: কে আপনি, কার জন্য, কত বড়, কোন সুরে, চারটা কথা লিখে দিন
- ভুল: সংখ্যা তাকে দিয়ে যোগ করানো। সমাধান: তাকে দিয়ে ফর্মুলা বানান, যোগ করুক Excel
- ভুল: "তুমি কি নিশ্চিত" জিজ্ঞেস করে ভরসা পাওয়া। সে প্রায়ই রাজি হয়ে যায় বা উল্টো নিজের সঠিক উত্তর বদলে ফেলে। সমাধান: নিশ্চয়তা তার কাছে নয়, উৎসে খুঁজুন
- ভুল: উত্তরের কোনো একটা অংশ ভুল দেখে পুরোটা ফেলে দেওয়া। সমাধান: কাঠামোটা রাখুন, তথ্যগুলো ভেরিফাই করুন
- ভুল: আগের ভুলটা মনে রাখবে ধরে নেওয়া। নতুন চ্যাটে সে আপনার কোনো শোধরানো মনে রাখে না। সমাধান: বারবার লাগে এমন ইনস্ট্রাকশন একটা নোটে রাখুন, শুরুতেই পেস্ট করুন
ধাপে ধাপে: লম্বা একটা কাজ কীভাবে চালাবেন
উপরের সবটুকু মিলিয়ে একটা কাজের ফরম্যাট দাঁড়ায়। খুলনার সেই দোকানদারের ১২০টা বর্ণনার কাজটা এভাবে করলে সবচেয়ে ভালো চলে।
- কাজটা ভাগ করুন। ১২০টা একসাথে নয়, দশটা করে বারো ভাগ
- একটা স্থায়ী ইনস্ট্রাকশন লিখে ফোনের নোটে রাখুন। দোকানের নাম, সুর, লাইনের সংখ্যা, শেষে কী থাকবে
- নতুন চ্যাট খুলে সেই ইনস্ট্রাকশন পেস্ট করুন, তারপর প্রথম দশটা প্রোডাক্টের তথ্য দিন
- প্রথম ফলটা ভালো করে ঠিক করে নিন, আর ঠিক করা নমুনাটা তাকে দেখিয়ে বলুন "এই ধাঁচে বাকিগুলো"
- দশটা শেষ হলে চ্যাটটা বন্ধ করুন, নতুন চ্যাটে আবার সেই ইনস্ট্রাকশন পেস্ট করুন
- প্রতিটা ব্যাচে দাম আর মাপ নিজে মিলিয়ে নিন, কারণ ওগুলো সে বানিয়ে ফেলতে পারে
- যেটা বারবার ভুল হচ্ছে, সেটা ইনস্ট্রাকশনে যোগ করুন। নোটটা প্রতি ব্যাচে একটু করে ভালো হবে
- শেষে পুরোটা একবার নিজে পড়ুন, প্রকাশের আগে
এই ফরম্যাটের সবচেয়ে দামি অংশটা দুই নম্বর ধাপ। একটা ভালো লেখা ইনস্ট্রাকশন আপনার হয়ে জানালার কাজটা করে দেয়।
কখন এটা ব্যবহার করবেন না
ভেতরের কাজটা বুঝলে এই লিস্টটা নিজে থেকেই দাঁড়ায়। এই কাজগুলোতে LLM ব্যবহার করবেন না, ভালো লিখতে পারে বলেও নয়।
- শেষ কথা বলার জন্য। কত টাকা, কোন তারিখ, কোন ধারা, এগুলোর চূড়ান্ত উৎস সে নয়
- আজকের কোনো তথ্যের জন্য, যদি না উত্তরে উৎসের লিংক থাকে
- লম্বা লিস্টের হিসাব মেলাতে, সেটা ক্যালকুলেটর আর Excel-এর কাজ
- যা ফাঁস হলে ক্ষতি, তা তাকে দিয়ে বিশ্লেষণ করাতে। NID, কাস্টমারের নম্বর, password, কোনোটাই নয়
- যেখানে ভুলের দায় অন্যের ঘাড়ে পড়বে। রোগীর পরামর্শ, আইনি মতামত, পরীক্ষার নম্বর
- যেখানে আপনি ফলটা ভেরিফাই করতে পারবেন না। যে ভাষা আপনি পড়তে পারেন না, সেই ভাষায় গুরুত্বপূর্ণ চিঠি পাঠানো ঝুঁকিপূর্ণ
- সিদ্ধান্তের দায় সরানোর জন্য। "AI বলেছে" কোনো যুক্তি নয়
এই জ্ঞানটুকু দিয়ে ব্যবহারিক লাভ কী
ভেতরের কাজটা বুঝলে ব্যবহারের ধরন বদলে যায়:
- তথ্য চাইলে উৎস চান। সংখ্যা, তারিখ, আইন বা দামের ক্ষেত্রে আলাদা করে ভেরিফাই করুন
- প্রসঙ্গ নিজে দিন। সে আপনার ব্যবসা, ক্লাস বা প্রতিষ্ঠান চেনে না, যতটুকু লিখে দিবেন ততটুকুই জানবে
- লম্বা চ্যাট এড়ান। নতুন কাজে নতুন চ্যাট খুলুন, তাতে জানালা পরিষ্কার থাকে
- সাম্প্রতিক ঘটনায় সতর্ক থাকুন। cutoff-এর পরের কিছু সে জানে না, খুঁজতে না পারলে অনুমান করবে
- ভাষার কাজে বেশি ভরসা, তথ্যের কাজে কম। লেখা গোছানো, অনুবাদ, সহজ করে বোঝানো, এসবে সে সত্যিই ভালো
AI জিনিসটা ভেতরে আসলে কী, সেটা AI কী সেই লেখায় গোড়া থেকে বলা আছে।
প্রশ্নোত্তর
LLM কি চিন্তা করতে পারে? মানুষের মতো করে নয়। সে অভিজ্ঞতা, ইচ্ছা বা বিশ্বাস নিয়ে চলে না। তবে "শুধু পরের শব্দ বলে" বলে ব্যাপারটাকে ছোট করাও ভুল হবে, কারণ ওই অনুমান ঠিকঠাক করতে গিয়েই যুক্তির অনেক গঠন সে আয়ত্ত করেছে। কাজের জন্য ধরে নিন: গঠন সে ভালো বোঝে, সত্য সে কনফার্ম করে না।
আমার লেখা কথাগুলো দিয়ে কি Model নিজে থেকে শিখে যায়? চ্যাটের মধ্যে বা সাথে সাথে নয়, Model-এর ভেতরের সংখ্যাগুলো আপনার লেখায় বদলায় না। তবে অনেক কোম্পানি ইউজারের কথোপকথন জমিয়ে রাখে এবং পরে নতুন Model তৈরির কাজে লাগাতে পারে। সেটা আলাদা ব্যাপার, আর সেটা সেটিংস আর প্ল্যানের উপর নির্ভর করে।
Token আর শব্দ কি এক জিনিস? না। Token হলো লেখার টুকরো। ইংরেজিতে গড়ে একটা শব্দ মোটামুটি একটা Token, বাংলায় একটা শব্দ প্রায়ই কয়েকটা Token। তাই "কত শব্দ" আর "কত Token", হিসাব দুটো আলাদা।
ছোট Model আর বড় Model-এর পার্থক্য কী? মোটা দাগে Parameter-এর সংখ্যা আর ট্রেনিংয়ের মাত্রা। বড় Model সাধারণত জটিল কাজে ভালো, কিন্তু ধীর আর দামি। ছোট Model দ্রুত আর সস্তা, সহজ কাজে যথেষ্ট। সব কাজে সবচেয়ে বড়টার দরকার নেই।
AI ইন্টারনেট থেকে খুঁজে আনতে পারলে কি ভুল বলা বন্ধ হয়? কমে, কিন্তু বন্ধ হয় না। খুঁজে আনা পেজটা ভুল হতে পারে, বা সে ঠিক পেজ থেকেও ভুল সিদ্ধান্তে পৌঁছাতে পারে। উৎসের লিংক থাকলে সেটায় ক্লিক করে দেখাই নিরাপদ।
Context Window বড় হলে কি সব সমস্যা মিটে যায়? সব নয়। বড় জানালায় বেশি লেখা ধরে, এটা সত্যি। কিন্তু জানালা যত ভরে, ভেতরের কোনো একটা নির্দিষ্ট লাইনের দিকে তার মনোযোগ তত পাতলা হয়। খুব লম্বা লেখার মাঝখানের একটা শর্ত সে এড়িয়ে যেতে পারে। তাই বড় জানালাতেও দরকারি অংশটুকু আলাদা করে সামনে রাখা ভালো অভ্যাস।
"তুমি কি নিশ্চিত" জিজ্ঞেস করলে কি সত্যিটা বেরিয়ে আসে? নির্ভরযোগ্যভাবে নয়। অনেক সময় সে বিনয়ের সাথে রাজি হয়ে যায় আর নিজের সঠিক উত্তরটাই বদলে ফেলে, আবার অনেক সময় ভুল উত্তরটাই আরও জোর দিয়ে বলে। এই প্রশ্নটা তার আত্মপরীক্ষা নয়, ওটাও নিছক আরেকটা প্রশ্ন। নিশ্চয়তা খুঁজতে হবে উৎসে।
একই প্রশ্ন ইংরেজিতে করলে কি উত্তর ভালো হয়? কঠিন বা কারিগরি বিষয়ে প্রায়ই হয়, কারণ Model ইংরেজি লেখা অনেক বেশি দেখেছে। সহজ বিষয়ে পার্থক্য এখন অনেক কম। একটা কাজের কৌশল হলো ইনস্ট্রাকশনটা ইংরেজিতে দেওয়া আর উত্তরটা বাংলায় চাওয়া, তাতে Token-ও কম লাগে।
AI কি নিজের ভুল নিজে ধরতে পারে? কিছুটা পারে, বিশেষ করে যুক্তির ভুল বা হিসাবের গঠনের ভুল। উত্তরটা দেখিয়ে "এখানে কোনো দুর্বলতা আছে কি না বলো" জিজ্ঞেস করলে অনেক সময় কাজের সমালোচনা পাওয়া যায়। কিন্তু তথ্যের ভুল সে নিজে ধরতে পারে না, কারণ ভেরিফাই করার মতো কোনো উৎস তার ভেতরে নেই।
সংক্ষেপে
- LLM বা Large Language Model হলো এমন প্রোগ্রাম, যা বিপুল লেখা দেখে শিখেছে কোন শব্দের পর কোন শব্দ আসার সম্ভাবনা কত, আর সেই অনুমান করেই উত্তর লেখে
- AI লেখাকে Token নামের ছোট টুকরোয় ভাঙে; বাংলায় একই কথা লিখলে ইংরেজির চেয়ে বেশি Token লাগে, তাই খরচ আর সময় দুটোই বাড়ে
- Training মানে শেখা, যা ঘটে গেছে আগেই এবং জমে গেছে; Inference মানে ব্যবহার, যেখানে Model-এর ভেতরের কিছুই বদলায় না, তাই আপনার চ্যাট তাকে শেখায় না
- Model-এর ভেতরে ইন্টারনেট বা কোনো তথ্যভান্ডার রাখা নেই, শুধু সংখ্যা আছে; তাই সে তথ্য "খুঁজে আনে" না, "তৈরি করে", আর সেখানেই ভুলের সুযোগ
- সে ভুলে যায় Context Window-এর কারণে: প্রতিবার পুরো কথোপকথন আবার পাঠানো হয়, জানালা ভরে গেলে শুরুর অংশ বাদ পড়ে, আর নতুন চ্যাট মানে সম্পূর্ণ খালি জানালা
- উত্তরের ভাষা যত দৃঢ়ই হোক, তা নির্ভুলতার প্রমাণ নয়; তারিখ, সংখ্যা, আইন আর দামের ক্ষেত্রে সবসময় আলাদা করে ভেরিফাই করে নিন