Top-p sampling (BN)

From Systems analysis Wiki
Jump to navigation Jump to search

Top‑p স্যাম্পলিং, যা নিউক্লিয়াস স্যাম্পলিং (ইংরেজি: Nucleus Sampling) নামেও পরিচিত, — অটোরিগ্রেসিভ ভাষা মডেলগুলোর জন্য একটি স্টোকাস্টিক ডিকোডিং পদ্ধতি, যা বৃহৎ ভাষা মডেলসহ (LLM) বিভিন্ন ক্ষেত্রে ব্যাপকভাবে ব্যবহৃত হয়। পদ্ধতিটি ২০১৯ সালে আরি হোলৎজমান ও সহলেখকদের দ্বারা প্রস্তাবিত হয়েছিল (arXiv প্রিপ্রিন্ট — এপ্রিল ২০১৯; ICLR 2020-এ প্রকাশিত) এবং এটি নির্দিষ্ট Top‑k স্যাম্পলিংয়ের উন্নত বিকল্প হিসেবে বিবেচিত। এর মূল ধারণা হলো প্রতিটি জেনারেশন ধাপে কিউমুলেটিভ সম্ভাবনার সীমামান p-এর ভিত্তিতে প্রার্থী সেট গতিশীলভাবে নির্বাচন করা।[1]

ঐতিহাসিক পটভূমি: নিউরাল টেক্সট ডিজেনারেশনের সমস্যা

Top‑p আবির্ভাবের আগে প্রধান ডিকোডিং কৌশলগুলো ছিল গ্রিডি সার্চ (greedy search) এবং বিম সার্চ (beam search), যা সর্বোচ্চ সম্ভাবনার ক্রম নির্বাচনের লিকেলিহুড সর্বাধিকীকরণ প্যারাডাইমের উপর নির্ভরশীল। গ্রিডি সার্চ প্রতিটি ধাপে সর্বোচ্চ সম্ভাবনার token-টিকে স্থানীয়ভাবে বেছে নেয়, আর বিম সার্চ সমান্তরালভাবে একাধিক জেনারেশন হাইপোথিসিস ট্র্যাক করে।[1]

যদিও এই পদ্ধতিগুলো বদ্ধ কাজে (মেশিন ট্রান্সলেশন, ডেটা এক্সট্র্যাকশন) কার্যকর ছিল, মুক্ত টেক্সট জেনারেশনের কাজে (গল্প লেখা, ডায়ালগ সিস্টেম) যাওয়ার পর এগুলো প্রায়ই নিউরাল টেক্সট ডিজেনারেশন ঘটাত — আউটপুটের অবনতি যেখানে টেক্সট শাব্লনিক হয়ে যায়, সংযোগ হারায় বা পুনরাবৃত্তিতে আটকে যায়। এই ঘটনাটি হোলৎজমান ও সহলেখকরা The Curious Case of Neural Text Degeneration কাজে বিস্তারিত বর্ণনা করেছেন।[1]

Meister ও সহলেখকরা ডিজেনারেশন সমস্যাকে এই বিষয়ের সঙ্গে যুক্ত করেন যে মানব-লিখিত টেক্সট প্রতিটি পরবর্তী token-এর স্থানীয় সম্ভাবনা শুধু সর্বাধিক না করে, প্রত্যাশিত শর্তাধীন এন্ট্রপির কাছাকাছি তথ্যসামগ্রী বজায় রাখার প্রবণতা রাখে।[2]

বিকল্প হিসেবে এলো বিশুদ্ধ স্টোকাস্টিক স্যাম্পলিং (sampling without truncation), যেখানে সম্ভাবনা অনুযায়ী এলোমেলোভাবে token নির্বাচন করা হয়। কিন্তু এই পদ্ধতি বিপরীত সমস্যার জন্ম দিল: Softmax ফাংশন কখনো কোনো token-কে কঠোরভাবে শূন্য সম্ভাবনা দেয় না, তাই দশ হাজারের বেশি শব্দের ভোকাবুলারিতে সবসময়ই নয়েজি token-এর একটি বিস্তৃত অঞ্চল বিদ্যমান থাকে। বিশুদ্ধ স্যাম্পলিংয়ে বিতরণের অবিশ্বস্ত লেজে পড়ার ঝুঁকি বাড়ে, যা জেনারেট করা টেক্সটের সংযোগ নষ্ট করতে পারে।[1][3] স্টোকাস্টিক পছন্দের সমৃদ্ধি এবং নির্ধারণবাদী সীমাবদ্ধতার নির্ভরযোগ্যতার মধ্যে সামঞ্জস্য বিধানের প্রয়োজনীয়তা বিতরণ ট্রাংকেশন পদ্ধতির বিকাশ ঘটিয়েছে, যার মধ্যে নিউক্লিয়াস স্যাম্পলিং (Top‑p) প্রধান।[1][4]

সহজ ব্যাখ্যা

Top-p স্যাম্পলিং হলো পরবর্তী token-এর পছন্দ শুধুমাত্র সবচেয়ে সম্ভাব্য বিকল্পগুলোতে সীমাবদ্ধ করার একটি উপায়, কিন্তু তাদের সংখ্যা আগে থেকে নির্দিষ্ট না করে।

টেক্সট জেনারেশনের সময় ভাষা মডেল প্রতিটি ধাপে অনেক সম্ভাব্য ধারাবাহিকতা মূল্যায়ন করে এবং প্রতিটিকে একটি সম্ভাবনা প্রদান করে। কিছু token অত্যন্ত সম্ভাব্য হয়, কিছু মাঝারি সম্ভাব্য হয়, আর ভোকাবুলারির বৃহৎ অংশ তথাকথিত বিতরণের "লেজ" তৈরি করে: অত্যন্ত কম সম্ভাবনার বিকল্প যা আনুষ্ঠানিকভাবে গ্রহণযোগ্য, কিন্তু প্রায়ই এলোমেলো, অনুপযুক্ত বা টেক্সটের সংযোগ নষ্ট করে।

Top-p স্যাম্পলিং এই স্বল্প-সম্ভাব্য লেজটি নির্দিষ্ট সংখ্যক token দিয়ে নয়, বরং মোট সম্ভাবনা দিয়ে কেটে দেয়। প্রথমে সমস্ত প্রার্থী সবচেয়ে সম্ভাব্য থেকে কম সম্ভাব্যের দিকে সাজানো হয়। তারপর শীর্ষ token-এর একটি ন্যূনতম সেট বেছে নেওয়া হয় যার মোট সম্ভাবনা নির্ধারিত সীমামান p-এ পৌঁছায় — যেমন ০.৯ বা ০.৯৫। এরপর পরবর্তী token শুধুমাত্র এই সেট থেকে এলোমেলোভাবে নির্বাচিত হয়, আর অন্য সব বিকল্প বাদ দেওয়া হয়।

উদাহরণস্বরূপ, যদি মডেল "আজ রাস্তায় ঝরছিল তীব্র..." বাক্যটি চালিয়ে যায়, তাহলে সবচেয়ে সম্ভাব্য বিকল্পগুলোর মধ্যে থাকতে পারে "বৃষ্টি" (০.৪৫), "ঝড়" (০.২৫), "তুষার" (০.১৫) এবং "বাতাস" (০.১০)। p=0.90 সীমামানে অ্যালগরিদম সম্ভাবনার ক্রমানুসারে token যোগ করে: ০.৪৫ + ০.২৫ = ০.৭০ (০.৯০-এর কম), "তুষার" যোগ করে: ০.৭০ + ০.১৫ = ০.৮৫ (এখনও ০.৯০-এর কম), "বাতাস" যোগ করে: ০.৮৫ + ০.১০ = ০.৯৫ (সীমামান অতিক্রান্ত)। নিউক্লিয়াস চারটি token দিয়ে গঠিত। সমস্ত বিরলতর বিকল্প বাদ দেওয়া হয়, আর বাকিগুলোর সম্ভাবনা নর্মালাইজ করা হয়: এভাবে, "বৃষ্টি" token-এর রিনর্মালাইজেশনের পর সম্ভাবনা 0.45/0.9547.4% হবে, এবং জেনারেটর এই আপডেট করা বিতরণ থেকেই পরবর্তী token বেছে নেবে।

Top‑k থেকে মূল পার্থক্য হলো Top‑k সবসময় নির্দিষ্ট সংখ্যক সেরা শব্দ নেয় (যেমন ৫০), আর Top‑p বিকল্পের সংখ্যা আগে থেকে নির্ধারণ করে না: কখনো এটি ৩টি শব্দ হতে পারে, কখনো ২০টি — সব নির্ভর করে ঐ ধাপে সম্ভাবনা কীভাবে বিতরিত হয়েছে তার উপর। এর ফলে পদ্ধতিটি প্রসঙ্গের সাথে মানিয়ে নেয় এবং স্বল্প-সম্ভাব্য token-এর "লেজ" কেটে দিতে সাহায্য করে, টেক্সটকে আরও স্বাভাবিক করে তোলে।

আরেকটি উদাহরণ। উদাহরণস্বরূপ, মডেল "সকালে সে পান করল গরম..." বাক্যটি চালিয়ে যাচ্ছে। সবচেয়ে সম্ভাব্য ধারাবাহিকতার মধ্যে থাকতে পারে: "চা" (০.৫০), "কফি" (০.৩০), "চকোলেট" (০.০৮), "ঝোল" (০.০৪), "দই" (০.০৩)। যদি p=0.80 সীমামান নির্ধারিত থাকে, অ্যালগরিদম উপর থেকে নিচে সম্ভাবনা যোগ করতে শুরু করে: "চা"-র জন্য ০.৫০, তারপর ০.৫০ + ০.৩০ = ০.৮০। সীমামান ইতিমধ্যে পৌঁছে গেছে, তাই নিউক্লিয়াস শুধু দুটি token দিয়ে গঠিত: "চা" এবং "কফি"। অন্য সব বিকল্প বাদ দেওয়া হয়। রিনর্মালাইজেশনের পর নিউক্লিয়াসের মধ্যে "চা"-র সম্ভাবনা হয় 0.50/0.80=62.5%, আর "কফি"-র সম্ভাবনা — 0.30/0.80=37.5%। পরবর্তী token শুধুমাত্র এই দুটি বিকল্পের মধ্য থেকে নির্বাচিত হয়।

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

ধারণা

Top‑p-এর মূল ধারণা হলো প্রতিটি ধাপে সবচেয়ে সম্ভাব্য token-এর ক্ষুদ্রতম সেট বেছে নেওয়া, যাদের মোট সম্ভাবনা নির্ধারিত সীমামান p-এর চেয়ে কম নয় (নিউক্লিয়াস, ইংরেজি: nucleus)।

আনুষ্ঠানিকভাবে, ধরা যাক x(1),x(2), — ভোকাবুলারি V-এর token, যা শর্তাধীন সম্ভাবনা P(xx1:i1)-এর নিম্নক্রমে সাজানো। তাহলে নিউক্লিয়াস V(p) সংজ্ঞায়িত হয় এই সাজানো ক্রমের সবচেয়ে সংক্ষিপ্ত প্রিফিক্স হিসেবে, যার কিউমুলেটিভ ভর সীমামানে পৌঁছায়:

m=min{n:j=1nP(x(j)x1:i1)p},V(p)={x(1),,x(m)}.

অন্যভাবে বলতে গেলে, এটি অন্তর্ভুক্তির দিক থেকে সবচেয়ে সম্ভাব্য token-এর ক্ষুদ্রতম সেট, যাদের মোট সম্ভাবনা p-এর চেয়ে কম নয়।[1]

নিউক্লিয়াস নির্ধারণের পর V(p)-এর বাইরের token-এর সম্ভাবনা শূন্য করা হয়, আর নিউক্লিয়াসের ভেতরে — রিনর্মালাইজ করা হয় (প্রকৃত কিউমুলেটিভ ভর p=xV(p)P(xx1:i1)-এ ভাগ করা হয়, যাতে যোগফল ১ হয়)। পরবর্তী token এই ছাঁটা ও রিনর্মালাইজ করা বিতরণ থেকে স্যাম্পল করা হয়।

গতিশীল অভিযোজন

  • "তীক্ষ্ণ" বিতরণে (মডেল আত্মবিশ্বাসী) নিউক্লিয়াস ছোট: কয়েকটি token ইতিমধ্যে ≥ p ভর দেয়, যা সংযোগ বাড়ায়। সীমান্তবর্তী ক্ষেত্রে, যদি সবচেয়ে সম্ভাব্য token-এর সম্ভাবনা ইতিমধ্যে p ছাড়িয়ে যায় (যেমন P(x(1))=0.96 যখন p=0.95), তাহলে নিউক্লিয়াস একটি token-এ সংকুচিত হয় এবং Top‑p কার্যত গ্রিডি ডিকোডিংয়ে (greedy search) পরিণত হয়।
  • "সমতল" বিতরণে (অনেক সম্ভাব্য ধারাবাহিকতা) নিউক্লিয়াস বড়: পছন্দ প্রসারিত হয়, বৈচিত্র্য বাড়ে।[1]

অন্য ডিকোডিং পদ্ধতির সাথে তুলনা

Top‑p বনাম Top‑k

  • Top‑k সবসময় নির্দিষ্ট সংখ্যক k সবচেয়ে সম্ভাব্য token থেকে নির্বাচন করে। "তীক্ষ্ণ" বিতরণে এটি "সংখ্যা পূরণের" জন্য অতিরিক্ত স্বল্প-সম্ভাব্য বিকল্প যোগ করতে পারে, আর "সমতল" বিতরণে — উল্টোভাবে, শীর্ষ-k-এ না পড়া যুক্তিসঙ্গত ধারাবাহিকতা কেটে দিতে পারে।
  • Top‑p ধাপের তথ্য অনুযায়ী প্রার্থী সেটের আকার মানিয়ে নেয়, যা বিভিন্ন ধরনের বিতরণে আচরণকে আরও নমনীয় ও স্থিতিশীল করে।[1]
  • বাস্তবে Top‑k এবং Top‑p একযোগে প্রয়োগ করা যায়। এই ক্ষেত্রে প্রথমে শীর্ষ-k token নির্বাচন করা হয়, তারপর এই সীমিত সেটের মধ্যে p সীমামানে নিউক্লিয়াস খোঁজা হয়। সঠিক ক্রম ও প্রেরণা বাস্তবায়নের উপর নির্ভর করে, তবে এই সমন্বয় একটি প্রচলিত কৌশল হিসেবে নথিভুক্ত।[5]

সহজ কথায়, Top-k আগেই সিদ্ধান্ত নেয় কতটি বিকল্প রাখতে হবে, আর Top-p পরিস্থিতি বিবেচনা করে এবং প্রদত্ত প্রসঙ্গে যতটা প্রয়োজন ততটাই রাখে। তাই Top-p সাধারণত বেশি নমনীয়, আর Top-k সহজ ও আরও পূর্বানুমানযোগ্য।

Top‑p বনাম তাপমাত্রা

  • তাপমাত্রা (temperature) বিতরণের পুরো আকারটি পুনর্গঠন করে (এটিকে আরও তীক্ষ্ণ বা মসৃণ করে), কিন্তু token কাটে না: এমনকি স্বল্প-সম্ভাব্য বিকল্পও শূন্য-বহির্ভূত সুযোগ বজায় রাখে।[5]
  • Top‑p বিতরণের কঠিন লেজ ছাঁটাই প্রবর্তন করে — স্বল্প-সম্ভাব্য token সম্পূর্ণরূপে স্যাম্পলিং থেকে বাদ দেওয়া হয়, যা স্পষ্টতই অনুপযুক্ত ধারাবাহিকতা প্রতিরোধে সাহায্য করে।[1]
  • প্রয়োগের ক্রম। স্ট্যান্ডার্ড পাইপলাইনে (যেমন Hugging Face Transformers) প্রথমে লজিটে তাপমাত্রা প্রয়োগ করা হয় (বিতরণের আকার পরিবর্তন), তারপর Top‑k প্রয়োগ হতে পারে, এবং কেবল তারপর Top‑p (লেজ ছাঁটাই)। এটি ব্যাখ্যা করে কেন "দ্বৈত প্রভাব" নিয়ন্ত্রণ করা কঠিন: তাপমাত্রার পরিবর্তন সেই কিউমুলেটিভ ভরই পরিবর্তন করে যার সাথে Top‑p পরে কাজ করে।[5]

সহজ কথায়, তাপমাত্রা পরিবর্তন করে মডেল কতটা স্বাধীনভাবে শব্দ বেছে নেয়, আর Top-p নির্ধারণ করে কোন বিকল্পগুলো আদৌ বেছে নেওয়া যাবে। তাই তাপমাত্রা এলোমেলোত্বের মাত্রা প্রভাবিত করে, আর Top-p — মডেল কতদূর কম সম্ভাব্য ধারাবাহিকতায় যেতে পারবে তা প্রভাবিত করে।

Hugging Face Transformers বাস্তবায়নে অপারেশনের ক্রম

স্যাম্পলিং-প্রসেসর প্রয়োগের ক্রম নির্দিষ্ট লাইব্রেরির উপর নির্ভর করে। Hugging Face Transformers-এ (v4.x থেকে) আলোচিত তিনটি প্যারামিটারের জন্য লজিট-প্রসেসর ডিফল্টভাবে নিম্নলিখিত ক্রমে যোগ করা হয়:[5][6]

  1. লজিটের তাপমাত্রা স্কেলিং। প্রতিটি token-এর লজিট Softmax ফাংশনের এক্সপোনেনশিয়েশনের আগে তাপমাত্রার মানে ভাগ করা হয়। তাপমাত্রা বিতরণের আকার পরিবর্তন করে, পরবর্তী ফিল্টারিংয়ের জন্য প্রস্তুত করে।
  2. Top‑k ফিল্টার (যদি কনফিগার করা থাকে): ভোকাবুলারিকে নির্দিষ্ট সংখ্যক প্রার্থীতে সংকুচিত করে।
  3. Top‑p ফিল্টার: ইতিমধ্যে সংকুচিত token পুলে কিউমুলেটিভ ছাঁটাই প্রয়োগ করা হয়।
  4. অবশিষ্ট সম্ভাবনার রিনর্মালাইজেশন এবং স্টোকাস্টিক স্যাম্পলিং।

বাস্তবে মাঝারি তাপমাত্রা (০.৭), বিস্তৃত Top‑p নিউক্লিয়াস (০.৯৫) এবং Top‑k সীমা (৫০)-এর সমন্বয় প্রচলিত: তাপমাত্রা মৌলিক বৈচিত্র্য নিশ্চিত করে, Top‑k মোটা ফিউজ হিসেবে কাজ করে, আর Top‑p প্রসঙ্গ-নির্ভর সূক্ষ্ম সমন্বয় করে।[5]

সহজ কথায়, মডেল প্রথমে তাপমাত্রা দিয়ে পছন্দকে কম বা বেশি "মুক্ত" করে, তারপর প্রয়োজনে Top-k দিয়ে প্রার্থীর সংখ্যা সীমিত করে, এবং তারপর Top-p দিয়ে অতিরিক্ত দুর্বল বিকল্প সরিয়ে দেয়। এই ক্রম প্রথমে পছন্দের সাধারণ চরিত্র নির্ধারণ করতে এবং তারপর অপ্রয়োজনীয়টি বাদ দিতে সাহায্য করে।

সুপারিশ: একসময়ে একটি প্যারামিটার সেটিং

মডেল প্রদানকারীরা জেনারেশন স্টাইল সেটিং করার সময় হয় temperature, অথবা top_p পরিবর্তনের সুপারিশ করেন, কিন্তু একসাথে উভয় নয়। এই সুপারিশটি OpenAI, Azure OpenAI এবং Anthropic-এর অফিশিয়াল ডকুমেন্টেশনে রয়েছে।[7][8][9]

ব্যবহারিক যুক্তি: উভয় প্যারামিটারই সম্ভাবনা বিতরণের আকার প্রভাবিত করে (তাপমাত্রা কার্ভের খাড়াভাব পরিবর্তন করে, আর Top‑p কাটপয়েন্ট নির্ধারণ করে), তাই একসাথে পরিবর্তন করলে ডায়াগনস্টিক কঠিন হয় — কোন প্যারামিটার আউটপুটের উন্নতি বা অবনতি ঘটিয়েছে তা নির্ণয় করা সম্ভব হয় না। এছাড়াও, উভয় প্যারামিটারের অত্যন্ত নিম্নমানে (যেমন Temperature ≈ 0 এবং Top‑p ≈ 0.01) নিউক্লিয়াস বাস্তবে একটি token-এ সংকুচিত হয়, যা স্যাম্পলিংকে কার্যত গ্রিডি সার্চে পরিণত করে।[7]

কিছু reasoning মডেল API স্তরে এই প্যারামিটারগুলোর কনফিগারেশন অতিরিক্তভাবে সীমিত করে, যা এই ধরনের মডেলের জন্য তাদের যৌথ পরিবর্তনের প্রশ্নটি অপ্রাসঙ্গিক করে তোলে (দেখুন "লাইব্রেরি ও API-এর সাথে সামঞ্জস্যতা" অনুচ্ছেদ)।[7]

প্রচলিত ইঞ্জিনিয়ারিং হিউরিস্টিক: উচ্চ পুনরুৎপাদনযোগ্যতা প্রয়োজন এমন কাজে — নিম্ন তাপমাত্রা ব্যবহার করুন (শূন্য পর্যন্ত); সৃজনশীল কাজে — তাপমাত্রা বেস লেভেলে রাখুন (১.০) এবং Top‑p প্যারামিটার দিয়ে বৈচিত্র্য নিয়ন্ত্রণ করুন, অথবা Top‑p ১.০-এ স্থির রাখুন এবং তাপমাত্রা পরিবর্তন করুন। নির্দিষ্ট সুপারিশ প্রদানকারীভেদে ভিন্ন হতে পারে।[7][9]

তথ্যগত নির্ভুলতা এবং হ্যালুসিনেশনের উপর প্রভাব

ডিকোডিং কৌশলের পছন্দ শুধু জেনারেট করা টেক্সটের স্টাইলিস্টিক্সই নয়, তথ্যগত ভুলের ফ্রিকোয়েন্সি ও ধরনও প্রভাবিত করতে পারে। হ্যালুসিনেশন ঘটনা — মিথ্যা বা প্রসঙ্গ-বিরোধী তথ্যের আত্মবিশ্বাসী জেনারেশন — জেনারেটিভ AI-এর কেন্দ্রীয় সমস্যাগুলোর একটি। এম্পিরিক্যাল গবেষণা দেখায় যে হ্যালুসিনেশনে স্যাম্পলিং কৌশলের প্রভাব কাজ, মডেল এবং নির্দিষ্ট প্যারামিটার সেটিংয়ের উপর নির্ভর করে।[3][10]

স্টোকাস্টিক স্যাম্পলিংয়ে ভুল হওয়ার প্রক্রিয়া

উচ্চ Top‑p মানে (যেমন ০.৯৫) মডেল ৯৫% সম্ভাবনা ভরকে আচ্ছাদনকারী নিউক্লিয়াস তৈরি করে। উচ্চ এন্ট্রপি অবস্থায় (যেমন কম পরিচিত তথ্য উত্তর দেওয়ার চেষ্টায়) এই নিউক্লিয়াসে শত শত স্বল্প-সম্ভাব্য token অন্তর্ভুক্ত হতে পারে। এই পরিস্থিতিতে স্টোকাস্টিক স্যাম্পলিং ব্যাকরণগতভাবে সঠিক কিন্তু শব্দার্থিকভাবে তথ্যগত সত্যের সাথে সংযুক্ত নয় এমন token বের করতে পারে। প্রসঙ্গে এসে পড়লে, এই token পরবর্তী জেনারেশন ধাপগুলো প্রভাবিত করতে পারে, কারণ মডেল ভুল সহ সমস্ত পূর্ববর্তী token বিবেচনায় রেখে জেনারেশন চালিয়ে যায়।[3][1]

উন্মুক্ত ও বদ্ধ কাজের দ্বৈততা

বড় পরিসরের পরীক্ষাগুলো কাজের ধরনের উপর জেনারেশন মানের নির্ভরতা প্রকাশ করে। রচনা লেখার বা ডায়ালগ সিস্টেমের কাজে স্টোকাস্টিক পদ্ধতি (Top‑p, Temperature) এগিয়ে থাকে, তবে কঠোর নির্ধারণবাদী ক্ষেত্রে সেগুলো নির্ধারণবাদী পদ্ধতির তুলনায় উল্লেখযোগ্যভাবে পিছিয়ে যেতে পারে।[10]

প্রোগ্রাম কোড সিন্থেসিসের benchmark-এ (HumanEval, MBPP) এবং গাণিতিক সমস্যা সমাধানে (GSM8K) নির্ধারণবাদী পদ্ধতি (Beam Search, Greedy Decoding) Top‑p-ভিত্তিক পদ্ধতির তুলনায় ভালো ফলাফল দেখায়। ২ থেকে ৮ গণনার ধাপের প্রয়োজন এমন ৮,৫ হাজার গণিত সমস্যা অন্তর্ভুক্ত GSM8K dataset এই ধরনের কাজে স্টোকাস্টিক পছন্দের দুর্বলতা চিত্রিত করে: Top‑p-এর ছাঁটা বিতরণের মাধ্যমে এলোমেলোত্বের ইনজেকশন যেকোনো মধ্যবর্তী ধাপে মডেলের যুক্তিশৃঙ্খল (Chain‑of‑Thought) ভেঙে দিতে পারে। Tan ও সহলেখকরা জোর দেন যে ডিকোডিং পদ্ধতির কার্যকারিতা নির্দিষ্ট কাজের উপর অত্যন্ত নির্ভরশীল (task‑dependent)।[10]

ডিকোডিং স্তরে হ্যালুসিনেশন মোকাবেলার পদ্ধতি

স্টোকাস্টিক স্যাম্পলিং দ্বারা উদ্ভূত হ্যালুসিনেটরি প্রভাব মোকাবেলায় উন্নত ডিকোডিং অগমেন্টেশন পদ্ধতি তৈরি করা হয়েছে:

  • কন্ট্রাস্টিভ ডিকোডিং (Contrastive Decoding, DoLa) — মূল মডেল এবং একটি ছোট সহায়ক মডেলের মধ্যে লগারিদমিক লিকেলিহুডের পার্থক্য অপ্টিমাইজ করে, বিশ্বাসযোগ্যতার ফিল্টার হিসেবে কাজ করে।[10]
  • SH2 (Self‑Highlighted Hesitation) — কম আত্মবিশ্বাসী token নিয়ে কাজ করার সময় ডিকোডারকে কৃত্রিমভাবে "দ্বিধান্বিত" করে।[11]
  • নির্দেশিত অ্যাক্টিভেশন প্রজেকশন (SEA) — ভেক্টর রিপ্রেজেন্টেশন স্তরে হ্যালুসিনেটরি সিগনাল দমন করে।[11]

একই সময়ে, উচ্চমানের alignment-যুক্ত আধুনিক মডেলগুলোর তথ্যগত বিষয়ে গভীর বোঝাপড়া আছে, যা তাদের অভ্যন্তরীণ বিতরণের এন্ট্রপি কমায় এবং উচ্চ Top‑p মানেও তাদের তথ্যগত অবনতির প্রতি কম সংবেদনশীল করে তোলে।[10][12]

ব্যবহারিক প্রয়োগ ও সুপারিশ

Top‑p নমনীয়তা ও নিয়ন্ত্রণযোগ্যতার সমন্বয়ের কারণে আধুনিক LLM-এ ব্যাপকভাবে ব্যবহৃত হয়।

  • সাধারণ মানের পরিসীমা। বাস্তবে প্রায়ই p0.900.95 ব্যবহৃত হয়। ডিফল্ট মান প্রদানকারীভেদে ভিন্ন: OpenAI-এ `top_p` = ১.০ (ছাঁটাই কার্যত নিষ্ক্রিয়), Anthropic-এ — ০.৯৯, Google Gemini-এর অনেক মডেলে — ০.৯৫[13] Hugging Face Transformers লাইব্রেরিতে ফ্রেমওয়ার্কের ডিফল্টও ১.০, যদিও পৃথক মডেল তাদের `generation_config.json`-এ এটি ওভাররাইড করতে পারে।[14] এভাবে, ০.৯–০.৯৫ হলো একটি প্রচলিত সুপারিশকৃত ব্যবহারিক পরিসীমা, কিন্তু সর্বজনীন ডিফল্ট মানদণ্ড নয়।[5][15]
    • ১.০-এর কাছাকাছি মান (যেমন ০.৯৮–০.৯৯) বৈচিত্র্য বাড়ায়: নিউক্লিয়াসে বেশি token পড়ে।
    • ছোট মান (যেমন ০.৮০–০.৯০) নির্ধারণবাদিতা ও আউটপুটের "সংযত" ভাব বাড়ায়।
    • p=1 হলে Top‑p-এর ছাঁটাই অদৃশ্য হয়: পুরো ভোকাবুলারি থেকে নির্বাচন করা হয় (তাপমাত্রা ও অন্যান্য ডিকোডিং ফিল্টার সক্রিয় থাকলে তাদের বিবেচনায়)।[5]
  • লাইব্রেরি ও API-এর সাথে সামঞ্জস্যতা।
    • Hugging Face Transformers-এ TopPLogitsWarper বাস্তবায়িত, যেখানে অতিরিক্তভাবে `min_tokens_to_keep` সীমামান ব্যবহার করা হয় (ডিফল্ট ১)। এটি বাস্তবায়নের একটি সুরক্ষামূলক বিশদ: আদর্শ মানে p(0,1] খালি নিউক্লিয়াস এমনিতেই সংজ্ঞা থেকে উদ্ভব হয় না, তবে প্যারামিটারটি সীমান্তবর্তী ক্ষেত্রে সঠিক কার্যকারিতা নিশ্চিত করে।[16]
    • কিছু API-এ `top_p` প্যারামিটার পাওয়া যায়, তবে `top_k` অনুপস্থিত থাকতে পারে; প্যারামিটারের সমর্থন ও তাদের সেমান্টিক্স নির্দিষ্ট মডেল ও কার্যপ্রণালীর উপর নির্ভর করে। Reasoning মডেলগুলো সাধারণত API স্তরে স্টোকাস্টিক্স কনফিগারেশন সীমিত করে। উদাহরণস্বরূপ, OpenAI-এর বর্তমান ডকুমেন্টেশনে `temperature` ও `top_p` প্যারামিটার স্পষ্টভাবে শুধুমাত্র `reasoning.effort = none` সহ GPT‑5.2-তে সমর্থিত; GPT‑5.2 বা GPT‑5.1-এ অন্য `reasoning` মানসহ অনুরোধ, এবং আগের GPT‑5 মডেলে (`gpt‑5`, `gpt‑5‑mini`, `gpt‑5‑nano`) এই ফিল্ড পাঠালে ত্রুটি ঘটে। আগের প্রজন্মের Reasoning মডেল (o1, o3) এগুলো সীমিত বা নির্দিষ্টও করে রাখে।[7][17][18] Anthropic-এর Claude API-তে extended thinking সক্রিয় থাকলে `temperature` ও `top_k` পরিবর্তন নিষিদ্ধ, কিন্তু `top_p` ০.৯৫–১.০ পরিসরে অনুমোদিত; তৃতীয়-পক্ষ প্ল্যাটফর্মে (যেমন Amazon Bedrock) সীমাবদ্ধতা ভিন্ন হতে পারে।[19] প্রদানকারীর সীমাবদ্ধতা প্রায়ই সংস্করণ থেকে সংস্করণে পরিবর্তিত হয়; বর্তমান ডকুমেন্টেশন যাচাই করার সুপারিশ করা হয়।[8][20]
  • দীর্ঘ টেক্সট ও পুনরাবৃত্তিযোগ্যতা। পরীক্ষার একটি সিরিজে দেখানো হয়েছে যে nucleus sampling greedy/beam এবং নির্দিষ্ট Top‑k-এর তুলনায় অবনতির (পুনরাবৃত্তি, শাব্লনিক বাক্যাংশ) প্রবণতা কমায়, বিশেষত দীর্ঘ ক্রমে।[1][10]

আধুনিক বিকল্পসমূহ

২০১৯ সালে nucleus sampling প্রকাশের পর থেকে বেশ কিছু বিকল্প স্টোকাস্টিক ডিকোডিং পদ্ধতি প্রস্তাবিত হয়েছে, যা Top‑p-এর ধারণা বিকশিত বা পরিপূরক করে:

Min‑p স্যাম্পলিং

Min‑p স্যাম্পলিং (Nguyen et al., 2024) সেসব token রাখে যাদের সম্ভাবনা pmin×P(x(1))-এর চেয়ে কম নয়, অর্থাৎ সবচেয়ে সম্ভাব্য token-এর সাপেক্ষে একটি সীমামান নির্ধারণ করে। ICLR 2025-এ মৌখিক উপস্থাপনায় গৃহীত; Hugging Face Transformers[21] ও vLLM[22] সহ বেশ কিছু জনপ্রিয় ফ্রেমওয়ার্কে বাস্তবায়িত।[23]

Top‑p থেকে মূল পার্থক্য হলো সীমামানের ধরনে: Top‑p সম্ভাবনার কিউমুলেটিভ যোগফলের ভিত্তিতে পরম সীমামান ব্যবহার করে, আর Min‑p সবচেয়ে সম্ভাব্য token-এর সম্ভাবনা থেকে স্কেলিং করা আপেক্ষিক সীমামান নির্ধারণ করে।[23]

গাণিতিকভাবে অ্যালগরিদম নিম্নরূপ কাজ করে: প্রতিটি ধাপে সর্বোচ্চ সম্ভাবনা Pmax=P(x(1)x1:i1) নির্ধারিত হয়, তারপর স্কেলিং করা সীমামান Pthreshold=pmin×Pmax গণনা করা হয়। চূড়ান্ত পুলে কেবল সেই token অন্তর্ভুক্ত হয় যাদের পৃথক সম্ভাবনা এই সীমামান ছাড়িয়ে যায়।[24]

এটি অভিযোজনযোগ্যতা নিশ্চিত করে: মডেল পরবর্তী শব্দ সম্পর্কে আত্মবিশ্বাসী হলে (Pmax=0.9), বেস pmin=0.1-এ সীমামান হয় ০.০৯, নয়েজি token কঠোরভাবে বাদ দেয়। মডেল অনিশ্চিত হলে (Pmax=0.1), সীমামান ০.০১-এ নেমে আসে, নিউক্লিয়াসে বিস্তৃত বৈচিত্র্যের প্রার্থী আসতে দেয়।[23]

উচ্চ-তাপমাত্রার স্যাম্পলিংয়ে (T>1.0) Top‑p-এর পরিচিত দুর্বলতা প্রকট হয়: বিতরণ কৃত্রিমভাবে মসৃণ হলে, Top‑p নির্ধারিত কিউমুলেটিভ যোগফলে পৌঁছাতে নিউক্লিয়াসে বড় সংখ্যক স্বল্প-সম্ভাব্য token অন্তর্ভুক্ত করতে বাধ্য হয়, যা সংযোগের অবনতি ঘটাতে পারে।[23] Min‑p এই পরিস্থিতি আরও ভালোভাবে সামলায়। Mistral Large মডেল ব্যবহার করে চরম তাপমাত্রায় T=3.0 বৈজ্ঞানিক ও যৌক্তিক জ্ঞানের benchmark (GPQA) পরীক্ষায়, Min‑p অ্যালগরিদম ১৩.৮৪% নির্ভুলতা দেখিয়েছে, যেখানে আদর্শ Top‑p ০.৯ দিয়েছে ০.৮৯% — এলোমেলো নয়েজের স্তরে।[24]

একই সময়ে শিক্ষাজগতে একটি বিতর্ক চলছে: কিছু সমালোচনামূলক কাজ (যেমন arXiv:2506.13681) সমস্ত NLP মেট্রিকে Min‑p-এর সুবিধার সার্বজনীনতা নিয়ে প্রশ্ন তুলছে, আরও গবেষণার প্রয়োজনীয়তার ইঙ্গিত দিচ্ছে।[25]

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

Locally typical sampling

Locally typical sampling (Meister et al., 2023) সেসব token বেছে নেয় যাদের তথ্যভার (logP) শর্তাধীন এন্ট্রপির কাছাকাছি, তাত্ত্বিক-তথ্যগত সাধারণত্বের ধারণার উপর নির্ভর করে।[2]

Top‑p থেকে ভিন্নভাবে, যা সর্বোচ্চ সম্ভাবনার token বেছে নিউক্লিয়াসের আকার কমাতে চায়, Locally Typical Sampling তথ্য দূরত্ব মেট্রিকের উপর ভিত্তি করে একটি অপ্টিমাইজেশন সমস্যা সমাধান করে। অ্যালগরিদম প্রতিটি token-এর তথ্যসামগ্রী (logP(x)) গণনা করে এবং মডেলের শর্তাধীন এন্ট্রপি H থেকে এর পরম দূরত্ব পরিমাপ করে। Token-গুলো কাঁচা সম্ভাবনা অনুসারে নয়, তাদের "তথ্যগত সাধারণত্বের" মাত্রা অনুযায়ী — প্রসঙ্গের প্রত্যাশিত তথ্যসামগ্রীর নিকটতা অনুযায়ী — ক্রমবদ্ধ করা হয়। Token-গুলো নিউক্লিয়াসে যোগ করা হয় (এন্ট্রপি পর্যন্ত দূরত্বের ঊর্ধ্বক্রমে) কিউমুলেটিভ সম্ভাবনার সীমামান পৌঁছানো পর্যন্ত।[2][26]

এই পদ্ধতির পরিণতি: উচ্চ এন্ট্রপি অবস্থায় অ্যালগরিদম লক্ষ্যমাত্রাভাবে শুধু নয়েজি স্বল্প-সম্ভাব্য লেজ নয়, অতিরিক্ত উচ্চ-সম্ভাব্য শব্দও বাদ দেয় যা খুব কম তথ্য বহন করে এবং টেক্সটকে সাধারণ করে তোলে। এটি ডিজেনারেটিভ লুপের ঝুঁকি কমায় এবং টেক্সটের পুনরাবৃত্তিযোগ্যতার মেট্রিক মানব-লিখিত টেক্সটের বৈশিষ্ট্যের কাছাকাছি নিয়ে আসে।[26]

Tail Free Sampling (TFS)

Tail Free Sampling (TFS) — একটি কম আনুষ্ঠানিক, কিন্তু ব্যবহারিকভাবে আকর্ষণীয় পদ্ধতি যা সম্ভাবনার স্থানের ডিফারেনশিয়াল বিশ্লেষণের উপর ভিত্তি করে নয়েজি লেজ চিহ্নিত করে। Top‑p এবং Min‑p যদি প্রথম ক্রমের সম্ভাবনা (কিউমুলেটিভ যোগফল এবং মৌলিক ভগ্নাংশ) নিয়ে কাজ করে, তাহলে TFS বাছাই করা সম্ভাবনার বক্ররেখার প্রথম ও দ্বিতীয় অনুপাত বিশ্লেষণ করে। পদ্ধতিটি ট্রেন্টন ব্রিকেনের ব্লগে বর্ণিত এবং বেশ কিছু inference-ইঞ্জিনে বাস্তবায়িত, যদিও পিয়ার-রিভিউড নিবন্ধ হিসেবে প্রকাশিত হয়নি।[27]

TFS-এর মূল অনুমান: স্যাম্পলে এমনকি একটি নয়েজি token অন্তর্ভুক্তিও পুরো অটোরিগ্রেসিভ জেনারেশনের জন্য এক্সপোনেনশিয়াল হুমকি বহন করে। সম্ভাবনার মানের দ্বিতীয় অনুপাত গণনা করে, অ্যালগরিদম "প্লাটো" স্থানীয়করণ করে — বক্ররেখার অংশ যেখানে সম্ভাবনার পতন ধীর হয়ে একটি দীর্ঘ মৃদু লেজে পরিণত হয়। এই বিচ্যুতির বিন্দুটি ডায়নামিক ছাঁটাই সীমানা হয়ে ওঠে: এর আগের token-গুলো শব্দার্থিকভাবে নিরাপদ বলে গণ্য হয়, আর পুরো লেজ সরিয়ে দেওয়া হয়।[27]

গাণিতিক কমনীয়তা সত্ত্বেও, TFS-এ রিয়েল-টাইমে অনুপাত গণনার জন্য আরও নিবিড় গণনামূলক ব্যয় প্রয়োজন, যার কারণে এটি ভর বাণিজ্যিক পণ্যে হালকা অ্যালগরিদমের কাছে পিছিয়ে যায়।[27]

p‑less sampling

p‑less sampling — একটি পদ্ধতি যা ইঞ্জিনিয়ারকে ছাঁটাই হাইপারপ্যারামিটার কনফিগার করার প্রয়োজন থেকে সম্পূর্ণ মুক্তি দেয়।[28] Top‑k ও Top‑p থেকে Min‑p পর্যন্ত সমস্ত পূর্ববর্তী পদ্ধতির মৌলিক সমস্যা হলো স্থির হাইপারপ্যারামিটারের উপর নির্ভরতা, যার মান বিশেষজ্ঞ কনফিগারেশন প্রয়োজন এবং একটি কাজের জন্য (সৃজনশীল লেখা) সর্বোত্তম হতে পারে, কিন্তু অন্যটির জন্য (প্রোগ্রামিং) অনুপযুক্ত।[29]

তথ্য তত্ত্বে প্রোথিত p‑less অ্যালগরিদম রিয়েল-টাইমে পুরো সম্ভাবনা বিতরণের অভ্যন্তরীণ টপোলজি বিশ্লেষণ করে প্রতিটি ডিকোডিং ধাপে অনন্য ছাঁটাই সীমামান গতিশীলভাবে জেনারেট করে। লেখকরা পদ্ধতির তাপমাত্রামূলক ওঠানামার প্রতি দৃঢ়তার (temperature robustness) কথা বলেন: তাপমাত্রা বাড়লে ঐতিহ্যবাহী পদ্ধতিগুলো উল্লেখযোগ্যভাবে অবনতি পেতে পারে, আর p‑less স্থিতিশীল মান বজায় রাখে। এছাড়াও, কিউমুলেটিভ স্ক্যানিং ও বড় নিউক্লিয়াস রিনর্মালাইজেশনের লজিক থেকে বিরত থেকে, পদ্ধতিটি, লেখকদের মতে, ইনফারেন্স পর্যায়ে উচ্চতর গণনামূলক দক্ষতা নিশ্চিত করে এবং গণিত, যুক্তি ও সৃজনশীল লেখার dataset-এ নির্ভুলতা না হারিয়ে আরও সংক্ষিপ্ত উত্তর জেনারেট করে।[29][28]

η‑স্যাম্পলিং

η‑স্যাম্পলিং (Hewitt et al., 2022) একটি এন্ট্রপি-নির্ভর সম্ভাবনার সীমামান ব্যবহার করে, নিম্ন-এন্ট্রপি প্রসঙ্গে অভিযোজিত হয়, যেখানে Top‑p অতিরিক্ত ছাঁটাই করতে পারে।[30]

সাহিত্য

  • Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019; ICLR 2020-এ প্রকাশিত). The Curious Case of Neural Text Degeneration. arXiv:1904.09751.
  • Fan, A., Lewis, M., & Dauphin, Y. (2018). Hierarchical Neural Story Generation. arXiv:1805.04833.
  • Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. arXiv:2202.00666.
  • Ravfogel, S., Goldberg, Y., & Goldberger, J. (2023). Conformal Nucleus Sampling. ACL Findings 2023.
  • Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925.
  • Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693.
  • Chen, S. J. et al. (2025). Decoding Game: On Minimax Optimality of Heuristic Text Generation Strategies. arXiv:2410.03968.
  • Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082.
  • Sen, J. et al. (2025). Advancing Decoding Strategies: Enhancements in Locally Typical Sampling for LLMs. arXiv:2506.05387.
  • Bricken, T. Tail Free Sampling. [৩২].
  • p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234.

টীকা

  1. 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019). The Curious Case of Neural Text Degeneration. arXiv:1904.09751. [১]
  2. 2.0 2.1 2.2 Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. TACL, Vol. 11. arXiv:2202.00666. [২]
  3. 3.0 3.1 3.2 Large Language Models Hallucination: A Comprehensive Survey. arXiv:2510.06265. [৩]
  4. Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693. [৪]
  5. 5.0 5.1 5.2 5.3 5.4 5.5 5.6 Hugging Face Transformers. Generation strategies (top‑k, top‑p, temperature). [৫]
  6. Hugging Face Transformers. generation/utils.py (исходный код). [৬]
  7. 7.0 7.1 7.2 7.3 7.4 OpenAI API Reference. top_p — рекомендация «We generally recommend altering this or temperature but not both». [৭]
  8. 8.0 8.1 Microsoft Learn (Azure OpenAI). Text/Chat Completions — parameters. [৮]
  9. 9.0 9.1 Anthropic API Reference. Messages API — top_p. [৯]
  10. 10.0 10.1 10.2 10.3 10.4 10.5 Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925. [১০]
  11. 11.0 11.1 From Illusion to Insight: A Taxonomic Survey of Hallucination Mitigation Techniques in LLMs. MDPI. [১১]
  12. Survey and analysis of hallucinations in large language models: attribution to prompting strategies or model behavior. Frontiers in AI. [১২]
  13. Anthropic. API release notes. [১৩]
  14. Hugging Face. GenerationConfig (top_p default). [১৪]
  15. Google AI / Vertex AI. Content generation parameters (topP/topK). [১৫] [১৬]
  16. Transformers API. TopPLogitsWarper (параметры и поведение, включая `min_tokens_to_keep`). [১৭]
  17. OpenAI API. Using reasoning models — parameter support. [১৮]
  18. OpenAI API. Using GPT-5.2. [১৯]
  19. Anthropic. Building with extended thinking. [২০]
  20. Microsoft Learn (Azure AI Foundry). Reasoning models — supported parameters. [২১]
  21. Hugging Face Transformers. MinPLogitsWarper. [২২]
  22. vLLM. Sampling Parameters — min_p. [২৩]
  23. 23.0 23.1 23.2 23.3 Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082. [২৪]
  24. 24.0 24.1 Nguyen, M. et al. Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. [২৫]
  25. Turning Down the Heat: A Critical Analysis of Min-p Sampling in Language Models. arXiv:2506.13681. [২৬]
  26. 26.0 26.1 Locally Typical Sampling. Transactions of the ACL, MIT Press. [২৭]
  27. 27.0 27.1 27.2 Bricken, T. Tail Free Sampling. [২৮]
  28. 28.0 28.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. OpenReview. [২৯]
  29. 29.0 29.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234. [৩০]
  30. Hewitt, J., Manning, C. D., & Liang, P. (2022). Truncation Sampling as Language Model Desmoothing. Findings of EMNLP 2022. arXiv:2210.15191. [৩১]

আরও দেখুন

  • তাপমাত্রা
  • বৃহৎ ভাষা মডেল