Омӯзиши моделҳои бузурги забонӣ (LLM)

Китоби омӯзишӣ дар бораи моделҳои бузурги забонӣ (LLM) ба забони тоҷикӣ: аз мафҳумҳои аввалия то усулҳои муосир. Токенсозӣ ва векторҳо, шабакаҳои нейронӣ, механизми таваҷҷуҳ ва Transformer, оилаҳои моделҳо, омӯзиши пешакӣ, танзими дақиқ ва LoRA, мутобиқсозӣ (RLHF, DPO), тавлиди матн, муҳандисии промпт, RAG, агентҳо, самаранокӣ, арзёбӣ ва бехатарӣ, тафсирпазирӣ ва истифодаи LLM барои забони тоҷикӣ. Бо мисолҳои код дар Python ва PyTorch, замимаҳои математика ва луғати истилоҳот.
Агенти Зеҳнӣ · 13 октябри 2026 · 18 саҳифа · 2 писанд
Боби 9. Тавлиди матн ва стратегияҳои декодкунӣ
То ин ҷо мо меъмории Transformer-ро дар робита ба вазифаҳои гуногун, ба монанди гурӯҳбандии матн (Text Classification) ва хулосабарорӣ (Summarization), омӯхтем. Аммо моделҳои бузурги забонӣ (Large Language Models — LLMs) бештар барои тавлиди матн (Text Generation) истифода мешаванд. Ин боб ба он бахшида шудааст, ки модел чӣ гуна ҷавобро токен ба токен месозад ва мо ин равандро бо кадом усулҳо ва танзимҳо идора карда метавонем.
Дар ин боб меомӯзем:
- модел чӣ гуна аз логитҳо (Logits) ба эҳтимолҳо ва аз эҳтимолҳо ба интихоби токени навбатӣ мегузарад;
- нақши таваҷҷуҳ, дарозии контекст ва ду марҳилаи тавлид — Prefill ва Decode;
- стратегияҳои декодкунӣ (Decoding Strategies): ҷустуҷӯи ҳарисона, намунагирии мултиномиалӣ, ҷустуҷӯи чандмасира ва ҷустуҷӯи муқоисавӣ;
- танзимҳои тавлид: ҳарорат (Temperature), Top-k, Top-p, ҷаримаҳои такрор, идораи дарозӣ ва рӯйхати калимаҳои манъшуда;
- кадом танзимҳо барои кадом вазифа мувофиқанд.
Модел матнро чӣ гуна тавлид мекунад
Мафҳумҳои асосӣ
Раванди истифодаи модели қаблан омӯзонидашуда барои тавлиди матн дар асоси дархости воридшуда (Prompt) хулосабарорӣ ё иҷрои модел (Inference) номида мешавад.
Модел ҷавобро якбора намесозад: вай онро тадриҷан, калима ба калима ё дақиқтараш, токен ба токен тавлид мекунад (дар бораи токенсозӣ ниг. ба боби 2). Модел бо истифода аз эҳтимолҳои омӯхташуда, ки дар миллиардҳо параметри он ифода ёфтаанд, токени навбатиро пешгӯӣ мекунад, онро ба матн илова менамояд ва сипас токени дигарро пешгӯӣ мекунад. Маҳз ҳамин раванди пайдарпай имкон медиҳад, ки LLM-ҳо матнҳои мантиқан пайваста ва ба контекст мувофиқ эҷод кунанд.
Аз логитҳо то эҳтимолҳо
Вақте ки модел бояд токени навбатиро интихоб кунад, аввал барои ҳар токени луғати худ (Vocabulary) холи хом ҳисоб мекунад. Ин холҳоро логитҳо (Logits) меноманд. Логитҳоро метавон ба арзёбии аввалияи модел дар бораи ҳар токени имконпазири навбатӣ монанд кард: ҳар қадар логит калонтар бошад, модел он токенро ҳамон қадар мувофиқтар меҳисобад.
Логитҳо ҳанӯз эҳтимол нестанд: онҳо метавонанд манфӣ бошанд ва маҷмӯи онҳо ба 1 баробар нест. Барои ба эҳтимолҳо табдил додан функсияи softmax истифода мешавад:
[
p_i = \frac{\exp(z_i)}{\sum_{j} \exp(z_j)},
]
ки дар он ( z_i ) логити токени ( i ) аст. Натиҷа тақсимоти эҳтимолҳо (Probability Distribution) бар тамоми луғат мебошад. Он чӣ баъд аз ин рӯй медиҳад — кадом токен аз ин тақсимот гирифта мешавад — ба стратегияи декодкунӣ ва танзимҳои тавлид вобаста аст, ки мавзӯи асосии ин боб мебошанд.
Нақши таваҷҷуҳ ва контекст
Барои он ки эҳтимолҳои токени навбатӣ дуруст ҳисоб шаванд, модел бояд контекстро ба назар гирад. Ин корро механизми таваҷҷуҳ (Attention) иҷро мекунад (ниг. ба боби 4).
Ҳангоми пешгӯии калимаи навбатӣ ҳамаи калимаҳои ҷумла аҳамияти яксон надоранд. Масалан, дар ҷумлаи нотамоми англисии
«The capital of France is …» («Пойтахти Фаронса … аст»)
идомаи эҳтимолӣ «Paris» (Париж) мебошад. Барои муайян кардани он калимаҳои «capital» (пойтахт) ва «France» (Фаронса) аҳамияти асосӣ доранд, на «the» ё «of». Қобилияти тамаркуз ба маълумоти муҳим ва мувофиқ ҳамон таваҷҷуҳ аст.
Гарчанде принсипи асосии омӯзиши LLM-ҳо — пешгӯии токени навбатӣ — аз замони моделҳои тавлидии мисли GPT-2 бетағйир мондааст, дар зиёд кардани миқёси шабакаҳои нейронӣ ва такмили механизми таваҷҷуҳ барои коркарди пайдарпайиҳои торафт дарозтар бо хароҷоти камтар пешрафтҳои назаррас ба даст омадаанд. Маҳз ҳамин хусусиятҳо моделҳои муосирро аз наслҳои пешинаи моделҳои забонӣ фарқ мекунонанд.
Дарозии контекст
Дарозии контекст (Context Length) ё «доираи таваҷҷуҳ»-и модел шумораи ҳадди аксари токенҳоест, ки модел ҳангоми тавлиди ҷавоб метавонад якбора ба назар гирад. Онро метавон ба андозаи хотираи кории модел монанд кард. Ба ин шумора ҳам дархост ва ҳам ҷавоби тавлидшаванда дохил мешаванд.
Дар ҳолати идеалӣ мо мехостем ба модел контексти номаҳдуд диҳем, аммо имкониятҳои коркарди контекст бо чанд омили амалӣ маҳдуд мешаванд: меъморӣ ва андозаи модел, захираҳои ҳисоббарории дастрас ва мураккабии маълумоти воридшуда. Аз ин рӯ, моделҳо бо дарозии контексти гуногун тарҳрезӣ мешаванд, то байни қобилият ва самаранокӣ тавозун таъмин гардад.
Эзоҳ: Дар солҳои охир дарозии контексти моделҳо хеле афзуд: агар моделҳои аввали GPT танҳо якчанд ҳазор токенро коркард мекарданд, бисёр моделҳои муосир садҳо ҳазор ва баъзеашон беш аз як миллион токенро қабул мекунанд. Бо вуҷуди ин, сифати истифодаи маълумот дар контексти хеле дароз ҳамеша якхела нест.
Ду марҳилаи тавлид: Prefill ва Decode
Раванди тавлиди ҷавобро метавон ба ду марҳилаи асосӣ ҷудо кард, ки мисли хатти истеҳсолӣ пайи ҳам кор мекунанд:
Дархост (Prompt) → Prefill: коркарди ҳамаи токенҳои воридшуда
→ Decode: тавлиди токенҳо пайи ҳам → Ҷавоби ниҳоӣ
Марҳилаи Prefill ба марҳилаи омодагӣ дар пухтупаз монанд аст: тамоми маводи ибтидоӣ коркард шуда, барои қадамҳои минбаъда омода мегардад. Ин марҳила се қадам дорад:
- Токенсозӣ (Tokenization) — матни воридшуда ба токенҳо табдил дода мешавад.
- Табдил ба векторҳо (Embedding Conversion) — токенҳо ба намояндагиҳои ададӣ табдил меёбанд, ки маълумоти маъноӣ ва забониро ифода мекунанд.
- Коркарди ибтидоӣ (Initial Processing) — ин векторҳо аз қабатҳои модел гузаронда мешаванд, то намояндагии ғании контекст ба вуҷуд ояд.
Prefill-ро метавон ба хондан ва фаҳмидани як сархати пурра пеш аз оғози навиштани ҷавоб монанд кард. Азбаски ҳамаи токенҳои дархост бояд коркард шаванд, ин марҳила ҳисоббарории зиёд талаб мекунад.
Марҳилаи Decode баъд аз Prefill оғоз мешавад ва маҳз дар он матн тавлид мегардад. Модел дар ҳар қадам як токени нав месозад. Ин раванд худрегрессивӣ (Autoregressive) номида мешавад, зеро ҳар токени нав аз токенҳои қаблӣ вобаста аст. Барои ҳар токени нав чунин қадамҳо иҷро мешаванд:
| Қадам | Амал |
|---|---|
| Ҳисоби таваҷҷуҳ (Attention Computation) | Баррасии токенҳои қаблӣ барои муайян кардани контекст |
| Ҳисоби эҳтимолҳо (Probability Calculation) | Муайян кардани эҳтимоли ҳар токени имконпазири навбатӣ |
| Интихоби токен (Token Selection) | Интихоби токени навбатӣ дар асоси эҳтимолҳо |
| Санҷиши идома (Continuation Check) | Муайян кардани он ки тавлид идома ёбад ё қатъ гардад |
Марҳилаи Decode ба хотира талаботи зиёд дорад, зеро модел бояд маълумоти марбут ба ҳамаи токенҳои қаблиро нигоҳ дорад. Масъалаҳои суръат ва самаранокии ин ду марҳила — вақт то токени аввал, кэши KV (KV Cache) ва ғайра — дар боби 13 муфассал баррасӣ мешаванд. Дар ин боб мо ба қадами сеюм — интихоби токен — тамаркуз мекунем.
Стратегияҳои декодкунӣ
Шарҳи умумӣ
Дар ҳар қадами Decode модел барои токени навбатӣ тақсимоти эҳтимолҳоро ҳисоб мекунад. Стратегияи декодкунӣ (Decoding Strategy) муайян мекунад, ки аз байни ин вариантҳо кадом токен интихоб шавад. Дар ин ҷо «декодкунӣ» маънои тарзи тавлиди матнро дорад.
Барои фаҳмидан, ҷумлаи нотамомеро тасаввур мекунем:
«Кӯдак китобро …»
Фарз мекунем, ки модел чунин эҳтимолҳоро ҳисоб кардааст:
| Идома | Эҳтимоли шартӣ |
|---|---|
| хонд | 50% |
| кушод | 30% |
| гирифт | 15% |
| пинҳон кард | 5% |
Стратегияҳои асосӣ бо ин тақсимот ба таври гуногун рафтор мекунанд:
- Ҷустуҷӯи ҳарисона (Greedy Search) ҳамеша «хонд»-ро мегирад.
- Намунагирии мултиномиалӣ (Multinomial Sampling) метавонад ҳар кадом вариантро мувофиқи эҳтимолаш интихоб кунад; Top-k ва Top-p пеш аз он доираи вариантҳоро кӯтоҳ мекунанд.
- Ҷустуҷӯи чандмасира (Beam Search) якчанд идомаро («хонд…», «кушод…», «гирифт…») ҳамзамон нигоҳ медорад ва баъдтар беҳтаринашро интихоб мекунад.
- Ҷустуҷӯи муқоисавӣ (Contrastive Search) аз байни номзадҳои серэҳтимол он токенеро мегирад, ки ҳам эҳтимоли баланд дорад ва ҳам матни пешинаро такрор намекунад.
Ин мисолҳо содакардашудаанд: модели воқеӣ токенҳоро интихоб мекунад, ки ҳатман калима ё ибораи пурра нестанд. Дар зербахшҳои минбаъда ҳар стратегия муфассал баррасӣ мешавад.
Ҷустуҷӯи ҳарисона (Greedy Search)
Ҷустуҷӯи ҳарисона усулест, ки дар он модел дар ҳар қадам токени эҳтимолаш баландтаринро интихоб мекунад ва сипас ҳамин амалро барои токени навбатӣ такрор менамояд. Калимаи «ҳарисона» маънои онро дорад, ки модел интихоби беҳтарини ҳамон қадамро мегирад ва роҳҳои дигарро нигоҳ намедорад.
Мисоли тоҷикӣ
Ҷумлаи нотамом:
«Ман субҳ …»
Фарз мекунем, ки модел чунин эҳтимолҳоро ҳисоб кардааст:
| Калимаи навбатӣ | Эҳтимоли шартӣ |
|---|---|
| барвақт | 50% |
| чой | 25% |
| ба | 15% |
| китоб | 10% |
Greedy Search «барвақт»-ро интихоб мекунад:
«Ман субҳ барвақт …»
Акнун модел эҳтимолҳои навро бо назардошти ҳамин матн ҳисоб мекунад:
| Калимаи навбатӣ | Эҳтимоли шартӣ |
|---|---|
| мехезам | 70% |
| меравам | 20% |
| мехонам | 10% |
Ин дафъа «мехезам» интихоб мешавад:
«Ман субҳ барвақт мехезам.»
Чаро интихоби беҳтарин дар ҳар қадам кофӣ нест?
Ин усулро ба роҳёбӣ монанд кардан мумкин аст: дар ҳар чорроҳа роҳи зоҳиран кӯтоҳтаринро интихоб мекунед, аммо он роҳ метавонад баъдтар ба гардиши дароз ё бунбаст расад. Дар тавлиди матн низ токени серэҳтимолтарини ҳозира ҳатман ба беҳтарин ҷумлаи пурра намерасонад. Greedy Search вариантҳои дигарро барои муқоисаи баъдӣ нигоҳ намедорад; Beam Search бошад, чанд роҳро нигоҳ медорад.
| Бартариҳо | Маҳдудиятҳо |
|---|---|
| Усули содатарин ва зудтарин аст | Ҷавобҳо гуногунии кам доранд |
| Интихоби тасодуфӣ надорад — натиҷа такроршаванда аст | Дар матнҳои дароз метавонад ба такрор гирифтор шавад |
| Ҳисоби иловагӣ барои роҳҳои алтернативӣ талаб намекунад | Беҳтарин идомаи маҳаллӣ ҳатман беҳтарин матни пурра нест |
Greedy Search барои ҷавобҳои нисбатан кӯтоҳ, ки дар онҳо гуногунии эҷодӣ афзалият надорад, муфид аст. Дар Hugging Face Transformers он чунин фаъол мешавад:
outputs = model.generate(**inputs, do_sample=False, num_beams=1)
Дар ин ҳолат ҳарорат ба интихоби токен таъсир намерасонад, зеро интихоби тасодуфӣ истифода намешавад. Эҳтимоли баланд маънои дурустии воқеиро надорад: ҷавоби бо Greedy Search тавлидшуда низ метавонад хато дошта бошад.
Намунагирии мултиномиалӣ (Multinomial Sampling)
Намунагирии мултиномиалӣ усулест, ки дар он модел токени навбатиро ба таври тасодуфӣ, мувофиқи эҳтимоли ҳар токен интихоб мекунад. Токени серэҳтимол имкони бештари интихоб дорад, аммо вариантҳои дигар низ метавонанд интихоб шаванд. Ҳамин хусусият имкон медиҳад, ки барои як дархост ҷавобҳои гуногун пайдо шаванд. Калимаи «мултиномиалӣ» ба интихоб аз байни чанд варианти дорои эҳтимолҳои муайян ишора мекунад (тақсимоти мултиномиалӣ).
Мисоли тоҷикӣ
Ҷумлаи нотамом:
«Ман чойро бо …»
| Калимаи навбатӣ | Эҳтимоли шартӣ |
|---|---|
| шакар | 50% |
| асал | 30% |
| лимӯ | 15% |
| шир | 5% |
Дар Greedy Search ҳамеша «шакар» интихоб мешавад. Дар намунагирии мултиномиалӣ ҳар чор вариант имкони интихоб доранд: «шакар» бештар интихоб мешавад, вале «асал», «лимӯ» ва ҳатто «шир» ҳам метавонанд интихоб шаванд.
Инро ба халтае бо 100 коғазча монанд кардан мумкин аст:
- дар 50 коғазча «шакар» навишта шудааст;
- дар 30 коғазча — «асал»;
- дар 15 коғазча — «лимӯ»;
- дар 5 коғазча — «шир».
Агар як коғазчаро тасодуфӣ гирем, имкони гирифтани «шакар» бештар аст, аммо натиҷа пешакӣ муайян нест.
Модел тамоми ҷумларо якбора интихоб намекунад. Вай аввал як токенро интихоб мекунад, баъд эҳтимолҳои токени навбатиро бо назардошти матни навшуда ҳисоб мекунад ва боз интихоб менамояд:
Ман → Ман чойро → Ман чойро бо → Ман чойро бо асал
Аз ин рӯ, интихоби тасодуфии «асал» ба тамоми идомаи баъдии матн таъсир мерасонад.
Танзими намунагирӣ
Намунагирӣ одатан бо ҳарорат, Top-k ва Top-p якҷоя истифода мешавад: ин танзимҳо аввал тақсимотро тағйир медиҳанд ё маҳдуд мекунанд ва сипас интихоби тасодуфӣ аз тақсимоти ҳосилшуда анҷом меёбад (ниг. ба бахши «Танзимҳои тавлид»). Масалан, агар дар ҷадвали боло top_k = 2 бошад, танҳо «шакар» ва «асал» боқӣ мемонанд ва эҳтимолҳои онҳо аз нав ба маҷмӯи 100% оварда мешаванд: 62.5% барои «шакар» ва 37.5% барои «асал».
Дар Hugging Face Transformers намунагирии одӣ чунин фаъол мешавад:
outputs = model.generate(**inputs, do_sample=True, num_beams=1)
Дар Transformers top_k бо пешфарз маҳдуд аст, бинобар ин барои намунагирӣ аз тамоми тақсимот маҳдудиятҳои Top-k ва Top-p низ бояд ғайрифаъол карда шаванд:
outputs = model.generate(**inputs, do_sample=True, num_beams=1, top_k=0, top_p=1.0)
Намунагирӣ ҳангоми навиштани ҳикоя, пешниҳоди сарлавҳаҳо ё ҷустуҷӯи тарзҳои гуногуни баён муфид аст. Он гуногунии ҷавобҳоро зиёд мекунад, аммо дурустӣ ва мувофиқати мазмунро кафолат намедиҳад.
Ҷустуҷӯи чандмасира (Beam Search)
Стратегияҳое, ки то ин ҷо баррасӣ кардем, дар ҳар қадам танҳо як токенро интихоб мекунанд. Ҷустуҷӯи чандмасира (Beam Search) равиши фарогиртар дорад: модел дар ҳар қадам чанд идомаи эҳтимолиро нигоҳ медорад, онҳоро идома дода, холҳояшонро муқоиса мекунад ва дар охир варианти дорои холи беҳтаринро интихоб менамояд. Дар ин ҷо «beam» ба як роҳи номзади тавлиди матн ишора мекунад.
Ин усул ба шатранҷбозе монанд аст, ки пеш аз ҳаракат якчанд идомаи эҳтимолии бозиро баррасӣ мекунад. Ё ба мусобиқае, ки пас аз ҳар давр чанд иштирокчии пешсаф мемонанд ва мусобиқа идома меёбад.
Чӣ гуна кор мекунад?
- Дар ҳар қадам шумораи муайяни пайдарпайиҳои номзад нигоҳ дошта мешавад.
- Барои ҳар номзад эҳтимоли токенҳои навбатӣ ҳисоб карда мешавад.
- Аз ҳамаи идомаҳои ҳосилшуда танҳо умедбахштаринҳо нигоҳ дошта мешаванд; боқимонда хориҷ мегарданд.
- Ин раванд то расидан ба дарозии ҳадди аксар ё шарти қатъшавӣ идома меёбад.
- Дар охир пайдарпайие интихоб мешавад, ки холи умумии баландтарин дорад.
Шумораи роҳҳои нигоҳдошташаванда паҳнои ҷустуҷӯ (Beam Width) ном дорад ва одатан чанд адад аст (масалан, аз 4 то 10). Агар паҳно ба 1 баробар бошад, Beam Search ба Greedy Search табдил меёбад.
Мисоли тоҷикӣ
Ҷумлаи нотамом:
«Кӯдак …»
Фарз мекунем, ки паҳнои ҷустуҷӯ 2 аст. Дар қадами аввал:
| Идома | Эҳтимоли шартӣ |
|---|---|
| китобро | 60% |
| ба | 40% |
Ҳар ду роҳ нигоҳ дошта мешаванд:
Кӯдак китобро …
Кӯдак ба …
Дар қадами дуюм чунин идомаҳо пайдо мешаванд:
| Роҳ | Эҳтимоли шартии токени навбатӣ | Эҳтимоли ҷамъии роҳ |
|---|---|---|
| Кӯдак китобро хонд | 40% | 60% × 40% = 24% |
| Кӯдак китобро кушод | 35% | 60% × 35% = 21% |
| Кӯдак ба мактаб | 90% | 40% × 90% = 36% |
| Кӯдак ба хона | 10% | 40% × 10% = 4% |
Акнун ду роҳи беҳтарин инҳоянд:
Кӯдак ба мактаб …
Кӯдак китобро хонд …
Гарчанде «ба» дар қадами аввал эҳтимоли камтар дошт, роҳи «Кӯдак ба мактаб…» баъдтар холи баландтар гирифт. Greedy Search ин роҳро аз даст медод, зеро дар қадами аввал «китобро»-ро интихоб мекард.
Рақамҳо сохтаанд. Дар амал зарби эҳтимолҳо хеле зуд ба ададҳои ниҳоят хурд мерасад, бинобар ин ҳисобҳо бо маҷмӯи логарифми эҳтимолҳо анҷом меёбанд ва метавонанд ислоҳи дарозиро низ дар бар гиранд.

Расми 9.1. Ҷустуҷӯи чандмасира бо паҳнои 2 барои «Кӯдак …»: дар қадами дуюм роҳҳои «ба мактаб» (36%) ва «китобро хонд» (24%) нигоҳ дошта мешаванд. Рақамҳо сохтаанд.
Ҷаримаи дарозӣ дар Beam Search
Азбаски ҳар токени илова эҳтимоли умумии пайдарпайиро кам мекунад, Beam Search табиатан ба ҷавобҳои кӯтоҳ тамоюл дорад. Барои ислоҳи ин ҷаримаи дарозӣ (Length Penalty) истифода мешавад, ки дарозии пайдарпайиро ҳангоми муқоисаи номзадҳо ба ҳисоб мегирад.
Масалан, ба дархости «Фоидаи китобхониро шарҳ деҳ» модел метавонад ин ду номзадро муқоиса кунад:
«Китобхонӣ донишро зиёд мекунад.»
«Китобхонӣ донишро зиёд мекунад, ҷаҳонбиниро васеъ месозад ва ба рушди тафаккур кумак мерасонад.»
Length Penalty ба муқоисаи холҳои чунин вариантҳо таъсир мерасонад (мисол шартӣ аст). Дар Hugging Face Transformers холи пайдарпайӣ (маҷмӯи логарифми эҳтимолҳо, ки манфист) ба дарозии он, ки ба дараҷаи length_penalty бардошта шудааст, тақсим мешавад:
[
\text{хол} = \frac{\sum_t \log p(y_t \mid y_{<t}, x)}{L^{,\text{length_penalty}}}.
]
| Қимат | Маъно |
|---|---|
0.0 | Хол аз рӯи дарозӣ ислоҳ намешавад |
Қимати мусбат (пешфарз 1.0) | Тамоюл ба дастгирии ҷавобҳои дарозтар |
| Қимати манфӣ | Тамоюл ба дастгирии ҷавобҳои кӯтоҳтар |
Номи «ҷарима» маънои онро надорад, ки қимати баланд ҷавобро кӯтоҳ мекунад — баръакс, дар Transformers қимати калонтар ба ҷавобҳои дарозтар бартарӣ медиҳад. Ин танзим танҳо дар усулҳои бар асоси Beam Search таъсир дорад ва шумораи муайяни токенҳоро муқаррар намекунад (барои ин ниг. ба «Идораи дарозии ҷавоб»).
Истифода дар Transformers
outputs = model.generate(**inputs, num_beams=3, do_sample=False)
Ин намуна Beam Search-и бе интихоби тасодуфиро фаъол мекунад. Модел ҳамаи идомаҳои имконпазирро нигоҳ намедорад: дар ҳар қадам роҳҳои дорои холҳои пасттар хориҷ мешаванд.
Бартариҳо ва маҳдудиятҳо
- Beam Search имкон медиҳад, ки чанд идома муқоиса шавад ва аксар вақт матни мантиқан пайвастатар ва аз ҷиҳати грамматикӣ дурусттар медиҳад.
- Роҳи хориҷшуда дигар баррасӣ намешавад, бинобар ин усул беҳтарин матни имконпазирро кафолат намедиҳад.
- Нисбат ба Greedy Search ҳисоббарории бештар талаб мекунад — тақрибан мутаносиб ба паҳнои ҷустуҷӯ.
- Дар тавлиди озоди матни дароз метавонад ба ҷавобҳои якранг ва такрорӣ оварда расонад.
- Холи баланд маънои дурустии воқеиро надорад: ҷумла метавонад аз назари модел эҳтимолӣ бошад, вале маълумоти нодуруст дошта бошад.
Beam Search бештар дар вазифаҳое муфид аст, ки ҷавоби «дуруст»-и нисбатан муайян доранд, масалан тарҷумаи мошинӣ ва хулосабарорӣ.
Эзоҳ: Дар чатботҳо ва API-ҳои муосири LLM Beam Search қариб истифода намешавад; дар онҳо намунагирӣ бо ҳарорат ва Top-p (ё Greedy) маъмул аст. Beam Search бештар дар моделҳои рамзгузор–рамзкушо (Encoder-Decoder) барои тарҷума ва хулосабарорӣ боқӣ мондааст.
Ҷустуҷӯи муқоисавӣ (Contrastive Search)
Ҷустуҷӯи муқоисавӣ (Contrastive Search) ҳангоми интихоби токени навбатӣ ду омилро ба ҳисоб мегирад:
- Эҳтимоли токен: мувофиқи пешгӯии модел ин идома то чӣ андоза муносиб аст?
- Монандӣ ба матни пешина: намояндагии дохилии ин токен то чӣ андоза ба намояндагиҳои токенҳои қаблӣ монанд аст?
Мақсад нигоҳ доштани пайвастагии матн ва кам кардани идомаҳои такроршаванда мебошад.
Мисоли тоҷикӣ
Матни оғоз:
«Китобхонӣ донишро зиёд мекунад. Он инчунин…»
Идомаи такрорӣ:
«…донишро бештар мекунад ва барои зиёд кардани дониш муфид аст.»
Идомаи дорои маълумоти нав:
«…ҷаҳонбиниро васеъ мекунад ва ба рушди тафаккур кумак мерасонад.»
Ҷустуҷӯи муқоисавӣ барои бартарӣ додан ба идомаи дуюм тарҳрезӣ шудааст. Аммо модел ҷумлаҳоро мисли муҳаррир аз рӯи маъно баҳо намедиҳад: муқоиса дар сатҳи токенҳо ва векторҳои дохилии онҳо анҷом меёбад.
Чӣ гуна кор мекунад?
- Модел
kтокени серэҳтимолтаринро ҳамчун номзад интихоб мекунад. - Барои ҳар номзад намояндагии дохилии (Hidden State) онро дар идомаи матн ҳисоб мекунад.
- Монандии онро бо намояндагиҳои токенҳои пешина месанҷад.
- Номзадеро интихоб мекунад, ки тавозуни эҳтимол ва ҷаримаи монандӣ дар он беҳтарин аст:
[
x_t = \arg\max_{v \in V^{(k)}} \Big{ (1-\alpha), p(v \mid x_{<t}) ;-; \alpha \max_{j<t} \operatorname{sim}(h_v, h_{x_j}) \Big},
]
ки дар он ( V^{(k)} ) — k номзад, ( \alpha ) — вазни ҷаримаи монандӣ ва ( \operatorname{sim} ) — монандии косинусии векторҳо аст.
Ин интихоб тасодуфӣ нест: дар ҳар қадам номзади дорои холи беҳтарин гирифта мешавад.
| Танзим | Вазифа |
|---|---|
top_k | Шумораи токенҳои номзадро муайян мекунад |
penalty_alpha | Тавозуни байни эҳтимоли токен ва ҷаримаи монандиро идора мекунад |
Агар penalty_alpha = 0 бошад, усул ба ҷустуҷӯи ҳарисона баробар мешавад; афзоиши он ба ҷаримаи монандӣ вазни бештар медиҳад. Дар ин ҷо top_k рӯйхати номзадҳоро барои муқоиса месозад, дар ҳоле ки дар намунагирии Top-k аз байни номзадҳо интихоби тасодуфӣ сурат мегирад.
Ҷустуҷӯи муқоисавӣ аз ҷаримаи такрор (Repetition Penalty) фарқ дорад: ҷаримаи такрор холҳои худи токенҳои қаблан истифодашударо паст мекунад, Contrastive Search бошад, монандии намояндагиҳои дохилии токенҳоро ба ҳисоб мегирад. Ин ду усули гуногуни мубориза бо такрор мебошанд.
Ин усул метавонад ба тавлиди матни пайваста ва камтакрор кумак кунад, аммо натиҷа аз модел ва танзимҳо вобаста аст; он такрорро пурра манъ намекунад ва дурустии маълумотро кафолат намедиҳад. Барои ҳар номзад ҳисоби иловагӣ лозим аст, бинобар ин он аз Greedy Search сусттар кор мекунад.
Эзоҳ: Дар версияҳои нави Hugging Face Transformers ҷустуҷӯи муқоисавӣ аз ҳастаи китобхона ба стратегияҳои тавлиди фармоишӣ (Custom Generation), ки аз Hugging Face Hub бор карда мешаванд, гузаронида шудааст. Пеш аз истифода ҳуҷҷатҳои версияи худро санҷед.
Муқоисаи стратегияҳо
| Стратегия | Тасодуфӣ? | Чӣ гуна интихоб мекунад | Бартарӣ | Камбудӣ | Истифодаи маъмул |
|---|---|---|---|---|---|
| Ҷустуҷӯи ҳарисона | Не | Токени серэҳтимолтарин дар ҳар қадам | Сода, зуд, такроршаванда | Якрангӣ, такрор дар матни дароз | Ҷавобҳои кӯтоҳи фактӣ, рамз, истихроҷи маълумот |
| Намунагирии мултиномиалӣ (+ ҳарорат, Top-k, Top-p) | Ҳа | Тасодуфӣ мувофиқи эҳтимолҳо | Гуногунӣ, матни табиӣ | Метавонад аз мавзӯъ дур шавад | Чат, навиштани эҷодӣ |
| Ҷустуҷӯи чандмасира | Не | Чанд роҳро нигоҳ медорад, беҳтаринро мегирад | Холи умумии баландтар | Гаронтар, якранг дар матни озод | Тарҷума, хулосабарорӣ |
| Ҷустуҷӯи муқоисавӣ | Не | Эҳтимол минуси монандӣ ба матни пешина | Пайваста ва камтакрор | Сусттар, вобаста ба танзим | Тавлиди матни дароз |
Барои оғоз метавонед аз Greedy Search истифода баред ва натиҷаҳоро бо он муқоиса кунед. Агар чанд варианти гуногуни ҳикоя ё сарлавҳа лозим бошад, намунагирӣ бо Top-p ё Top-k-ро санҷед. Барои вазифаҳое, ки муқоисаи чанд идома муфид аст, Beam Search-ро низ арзёбӣ кунед. Меъёри интихоб бояд натиҷаи вазифаи шумо бошад: равонӣ, мувофиқат ба дархост ва дурустии мазмун. Ягон стратегияи декодкунӣ худ аз худ дурустии ҷавобро кафолат намедиҳад.
Танзимҳои тавлид
Стратегияи декодкунӣ тарзи умумии интихобро муайян мекунад, вале дар дохили он мо метавонем бо якчанд танзим (параметр) рафтори моделро дақиқтар идора кунем. Ҳамон тавре ки нависанда метавонад байни услуби эҷодкорона ва услуби дақиқ интихоб кунад, мо низ метавонем муайян кунем, ки модел то чӣ андоза ҷавобҳои гуногун ё пешбинишаванда тавлид кунад, чӣ қадар такрор кунад ва кай қатъ гардад.
Ҳарорат (Temperature)
Чаро зеҳни сунъӣ ба як савол баъзан ҷавобҳои гуногун медиҳад? Яке аз омилҳо ҳарорат (Temperature) аст. Ҳарорат дараҷаи тасодуфӣ будани интихоби токени навбатиро идора мекунад: пеш аз softmax ҳамаи логитҳо ба ҳарорат ( T ) тақсим мешаванд:
[
p_i = \frac{\exp(z_i / T)}{\sum_{j} \exp(z_j / T)}.
]
- Агар ( T < 1 ) бошад, фарқи байни логитҳо калон мешавад ва тақсимот «тезтар» мегардад: интихоб бештар ба токенҳои эҳтимолашон баланд равона мешавад ва натиҷаҳо пешбинишавандаву мутамарказтар мешаванд. Ҳангоми ( T \to 0 ) намунагирӣ ба ҷустуҷӯи ҳарисона наздик мешавад.
- Агар ( T = 1 ) бошад, тақсимот тағйир намеёбад.
- Агар ( T > 1 ) бошад, тақсимот «ҳамвортар» мегардад: токенҳои камэҳтимол имкони бештари интихоб пайдо мекунанд ва ҷавобҳо гуногунтар мешаванд.
| Ҳарорат | Таъсир ба интихоби токенҳо |
|---|---|
Паст, масалан 0.2 | Интихоб бештар ба вариантҳои эҳтимолашон баланд маҳдуд мешавад |
1.0 | Тақсимоти эҳтимолҳо аз ҳисоби ҳарорат тағйир намеёбад |
Баланд, масалан 1.5 | Вариантҳои камэҳтимол имкони бештари интихоб пайдо мекунанд |
Ин рақамҳо намунаанд; натиҷа инчунин аз модел, дастур ва дигар танзимҳо вобаста аст.

Расми 9.2. Таъсири ҳарорат ба эҳтимолҳои калимаи навбатӣ барои «Ман чойро бо …» (эҳтимолҳои намунавии ҷадвали фасли Top-k ва Top-p; дар T = 1 тағйир намеёбанд, барои T = 0.5 ва 1.5 бо формулаи болоӣ ҳисоб шудаанд).
Ҳароратро чӣ гуна тасаввур кунем?
Тасаввур кунед, ки аз нависанда хоҳиш мекунем ҷумлаи «Субҳ офтоб…»-ро идома диҳад. Ӯ метавонад чунин нависад:
- «Субҳ офтоб баромад.»
- «Субҳ офтоб ба кӯчаҳо нур пошид.»
- «Субҳ офтоб мисли меҳмони тиллоӣ аз паси кӯҳ пайдо шуд.»
Ин мисолҳои сохта фарқи байни идомаи маъмул ва идомаи образнокро нишон медиҳанд. Ё ба дархости «Дар бораи баҳор як ҷумла навис»:
- ҷавоби сода: «Дар баҳор ҳаво гарм мешавад ва дарахтон гул мекунанд.»
- ҷавоби образнок: «Баҳор ба боғҳо ҷомаи сабз мепӯшонад ва навдаи хобидаро бедор мекунад.»
Ҳарорати баланд гуногунии интихобҳоро зиёд мекунад, аммо ҷавоби зебо ё эҷодкоронаро кафолат намедиҳад — дар ҳарорати хеле баланд матн метавонад бемаъно гардад. Барои таҳрири матн аз ҳарорати паст оғоз кунед; барои ёфтани чанд варианти ҳикоя ё сарлавҳа ҳароратро каме баландтар санҷед ва натиҷаҳоро муқоиса намоед.
Оё ҳарорати паст ҷавобро дуруст мекунад?
Ҳарорати паст кафолати дурустӣ нест. Он тарзи интихобро тағйир медиҳад, на дониши моделро: модел метавонад ҷавоби нодурустро ҳам бо интихоби камтасодуф тавлид кунад. Ҳамчунин, ҳарорат танҳо вақте таъсир дорад, ки токенҳо бо намунагирӣ интихоб мешаванд; масалан, дар Hugging Face Transformers барои ин do_sample=True лозим аст.
Эзоҳ: Баъзе API-ҳои муосир, хусусан барои моделҳои андешаронӣ (Reasoning Models), тағйир додани ҳарорат ва дигар параметрҳои намунагириро маҳдуд мекунанд ё қиматҳои собит истифода мебаранд. Пеш аз танзим ҳуҷҷатҳои провайдерро санҷед.
Top-k ва Top-p
Ҳарорат шакли тақсимотро тағйир медиҳад, вале ҳамаи токенҳоро дар интихоб нигоҳ медорад — ҳатто токенҳои хеле камэҳтимол ва бемаъноро. Top-k ва Top-p доираи вариантҳоро маҳдуд мекунанд, то интихоби тасодуфӣ танҳо аз байни вариантҳои муносиб анҷом ёбад.
Барои фаҳмидани фарқи онҳо, ҷумлаи нотамоми «Ман чойро бо …»-ро бо чунин эҳтимолҳои шартӣ мегирем:
| Калимаи эҳтимолӣ | Эҳтимол |
|---|---|
| шакар | 40% |
| асал | 30% |
| лимӯ | 15% |
| шир | 10% |
| намак | 5% |
Top-k: шумораи муайяни вариантҳо
Филтри Top-k (Top-k Filtering) танҳо k токени эҳтимолашон баландтаринро нигоҳ медорад. Агар top_k = 3 бошад:
шакар — 40%
асал — 30%
лимӯ — 15%
«Шир» ва «намак» аз интихоб хориҷ мешаванд. Сипас эҳтимолҳои вариантҳои боқимонда аз нав ба маҷмӯи 100% оварда мешаванд ва интихоб аз байни онҳо сурат мегирад. Агар top_k = 1 бошад, танҳо «шакар» боқӣ мемонад — ин ба ҷустуҷӯи ҳарисона баробар аст.
Top-p: маҷмӯи эҳтимолҳо
Top-p ё намунагирии ядроӣ (Nucleus Sampling) хурдтарин гурӯҳи токенҳои эҳтимолашон баландро нигоҳ медорад, ки маҷмӯи эҳтимолашон ба ҳадди p мерасад ё аз он мегузарад. Агар top_p = 0.8 бошад, токенҳо аз рӯи эҳтимол мураттаб шуда, ҷамъ карда мешаванд:
- «шакар»: маҷмӯъ 40%;
- «асал»: маҷмӯъ 70%;
- «лимӯ»: маҷмӯъ 85% — аз ҳадди 80% гузашт, интихоб қатъ мешавад.
Ҳамин се вариант боқӣ мемонад. Агар top_p = 0.6 бошад, «шакар» ва «асал» кофӣ мешаванд (маҷмӯъ 70%).

Расми 9.3. Top-k ва Top-p барои «Ман чойро бо …» (эҳтимолҳои намунавӣ): сутунҳои кабуд нигоҳ дошта мешаванд, сутунҳои хокистарӣ хориҷ мешаванд.
Фарқи асосӣ
| Танзим | Чиро маҳдуд мекунад? |
|---|---|
| Top-k | Шумораи вариантҳо: масалан, танҳо 3 токен |
| Top-p | Маҷмӯи эҳтимолҳо: масалан, то расидан ба ҳадди 80% |
Бо Top-p шумораи вариантҳо дар ҳар қадам мутобиқ мешавад. Агар як токен аллакай эҳтимоли 90% дошта бошад, барои top_p = 0.8 ҳамон як токен кофист. Агар эҳтимолҳо байни бисёр токенҳо тақсим шуда бошанд, вариантҳои бештар нигоҳ дошта мешаванд. Top-k бошад, сарфи назар аз шакли тақсимот ҳамеша ҳамон шумораро нигоҳ медорад. Аз ин рӯ, Top-p дар амал бештар истифода мешавад.
Эзоҳ: Ба ғайр аз Top-k ва Top-p, дар баъзе китобхонаҳо ва серверҳои иҷрои модел усулҳои навтари буриш, масалан Min-p, низ мавҷуданд, ки ҳадди буришро нисбат ба эҳтимоли токени беҳтарин муайян мекунанд.
Ҳарорат, Top-k ва Top-p чӣ гуна якҷоя кор мекунанд
Ин танзимҳо ҷанбаҳои гуногуни интихобро идора мекунанд: ҳарорат вазни имкониятҳоро тағйир медиҳад, Top-k рӯйхатро аз рӯи шумора кӯтоҳ мекунад ва Top-p онро аз рӯи маҷмӯи эҳтимолҳо маҳдуд месозад. Дар амалисозиҳои маъмул (масалан, Hugging Face Transformers) тартиби коркард чунин аст:
логитҳо
→ ҷаримаҳои такрор / ҳузур / басомад ва манъи калимаҳо
→ тақсим ба ҳарорат
→ филтри Top-k ва/ё Top-p
→ softmax ва аз нав меъёркунӣ
→ интихоби тасодуфии токен
Тартиби дақиқ дар системаҳои гуногун метавонад каме фарқ кунад. Намунаи пурраи танзими намунагирӣ дар Transformers:
outputs = model.generate(
**inputs,
do_sample=True,
temperature=0.7,
top_k=50,
top_p=0.9,
max_new_tokens=200,
)
| Танзим | Вазифа |
|---|---|
temperature | Идораи дараҷаи тасодуфӣ ва гуногунии тавлид |
top_k | Маҳдуд кардани интихоб ба шумораи муайяни токенҳои эҳтимолитарин |
top_p | Интихоби маҷмӯаи токенҳо аз рӯи ҳадди эҳтимоли ҷамъшуда |
Одатан тавсия медиҳанд, ки дар як вақт асосан яке аз ҳарорат ё Top-p тағйир дода шавад, то таъсири ҳар кадом фаҳмо бошад. Ин танзимҳо гуногунии матнро идора мекунанд, аммо дурустии ҷавобро кафолат намедиҳанд.
Ҷаримаҳо барои такрор
Яке аз мушкилоти маъмули моделҳои забонӣ майли онҳо ба такрори калимаҳо ё ибораҳо аст — ба шахсе монанд, ки ҳангоми суҳбат пайваста ба як фикр бармегардад:
«Китоб хондан хуб аст. Китоб хондан хуб аст. Китоб хондан хуб аст…»
Барои кам кардани чунин ҳолатҳо се намуди ҷарима (Penalty) маъмул аст. Ҳамаи онҳо холҳои токенҳои қаблан пайдошударо пеш аз дигар қадамҳои интихоб паст мекунанд — яъне ба модел таъсири нарм мерасонанд, ки калимаҳо ва ифодаҳои гуногунтарро истифода барад. Онҳо такрорро пурра манъ намекунанд ва дар сатҳи токенҳо кор мекунанд, на дар сатҳи маънои ҷумла.
Ҷаримаи такрор (Repetition Penalty)
Ҷаримаи такрор — танзими маъмул дар Hugging Face Transformers (repetition_penalty) — холҳои ҳамаи токенҳоеро, ки аллакай дар матн (дархост ва ҷавоб) ҳастанд, ба таври зарбӣ паст мекунад: логити мусбат ба қимати ҷарима тақсим ва логити манфӣ ба он зарб карда мешавад. Онро ба нависандае монанд кардан мумкин аст, ки ҳангоми навиштан ба калимаҳои аллакай истифодакардааш нигоҳ мекунад ва кӯшиш мекунад онҳоро бе зарурат такрор накунад.
| Қимат | Таъсир |
|---|---|
1.0 | Ҷарима татбиқ намешавад |
Аз 1.0 зиёд | Такрори токенҳои пешина камтар ташвиқ мешавад |
Байни 0 ва 1.0 | Такрори токенҳои пешина бештар ташвиқ мешавад |
Масалан, 1.1 ҷаримаи сабуктар ва 1.3 ҷаримаи қавитар медиҳад. Дар системаҳои дигар чунин рақамҳо метавонанд маъно ё доираи дигар дошта бошанд.
Мисол — дархост: «Дар бораи фоидаи китобхонӣ ду ҷумла навис.»
- Матни дорои такрори зиёдатӣ: «Китобхонӣ донишро зиёд мекунад. Китобхонӣ хуб аст, зеро китобхонӣ барои зиёд кардани дониш хуб аст.»
- Матни равонтар: «Китобхонӣ донишро зиёд мекунад. Он инчунин ҷаҳонбиниро васеъ карда, ба рушди тафаккур кумак мерасонад.»
Ин мисолҳо сохтаанд: тағйири танзим ҳатман ҳамин натиҷаро намедиҳад.
Ҷаримаи ҳузур (Presence Penalty)
Ҷаримаи ҳузур ба ҳар токене, ки ақаллан як бор дар матн пайдо шудааст, ҷаримаи собит татбиқ мекунад (аз логит қимати муайянро тарҳ мекунад). Ин ҷарима аз он вобаста нест, ки токен чанд маротиба истифода шудааст. Ҳадафи он ташвиқи модел ба истифодаи калимаҳо ва мавзӯъҳои нав аст.
Ҷаримаи басомад (Frequency Penalty)
Ҷаримаи басомад вобаста ба шумораи такрори токен меафзояд: ҳар қадар токен бештар истифода шуда бошад, ҳамон қадар ҷаримааш зиёдтар ва эҳтимоли интихоби дуборааш камтар мешавад. Ҳадафи он кам кардани такрори аз ҳад зиёди ҳамон калимаҳост.
Ҷаримаҳои ҳузур ва басомад дар API-ҳои бисёр провайдерҳо (масалан, presence_penalty ва frequency_penalty дар API-и OpenAI ва серверҳои ба он мувофиқ) маъмуланд; қимати 0 маънои набудани ҷаримаро дорад.
Муқоисаи ҷаримаҳо
| Хусусият | Ҷаримаи такрор | Ҷаримаи ҳузур | Ҷаримаи басомад |
|---|---|---|---|
| Асоси ҷарима | Пайдо шудани токен дар матн | Пайдо шудани токен дар матн | Шумораи такрори токен |
| Андозаи ҷарима | Зарбӣ, собит | Иловагӣ, собит | Иловагӣ, мутаносиб ба басомад |
| Қимати бетаъсир | 1.0 | 0 | 0 |
| Ҳадаф | Кам кардани истифодаи дубора | Ташвиқи калимаҳо ва мавзӯъҳои нав | Кам кардани такрори аз ҳад зиёд |
Чаро ҷаримаи баланд ҳамеша беҳтар нест?
На ҳар такрор зиёдатист:
«Об барои ҳаёт зарур аст. Оби тоза барои саломатӣ муҳим аст.»
Дар ин ҷо такрори «об» табиӣ ва зарурист. Азбаски ҷаримаҳо танҳо токенҳоро пайгирӣ мекунанд, онҳо зарурати маъноии такрорро муайян карда наметавонанд. Ҷаримаи аз ҳад баланд метавонад моделро аз калимаҳои зарурӣ — ҳатто аз аломатҳои китобат ва калимаҳои ёридиҳанда — дур кунад ва матнро ғайритабиӣ созад. Ҳангоми тарҷума ё таҳрир ба такрори номҳо ва истилоҳҳо махсус диққат диҳед: баъзан нигоҳ доштани ҳамон калима барои дақиқии маъно муҳим аст. Беҳтар аст қиматро тадриҷан тағйир дода, равонӣ ва дурустии матнро муқоиса кунед.
Идораи дарозии ҷавоб
Ҳамон тавре ки ҳикояи хуб бояд суръат ва дарозии мувофиқ дошта бошад, мо низ бояд ҳаҷми матни тавлидшавандаро идора карда тавонем: баъзан ҷавоби кӯтоҳ ба андозаи як паёми шабакаи иҷтимоӣ лозим аст, баъзан — мақолаи пурраи блог. Дарозиро бо якчанд роҳ идора мекунанд.
Маҳдудияти токенҳо (Token Limits)
Мо метавонем шумораи ҳадди аксар (ва дар баъзе системаҳо ҳадди ақал) токенҳои тавлидшавандаро муайян кунем. Дар Transformers барои ин max_new_tokens (ва min_new_tokens) истифода мешавад:
outputs = model.generate(**inputs, max_new_tokens=100)
Яъне модел метавонад ҳадди аксар 100 токени нав тавлид кунад. Ин ҳатман 100 калима нест (як калима метавонад аз якчанд токен иборат бошад, хусусан дар забони тоҷикӣ) ва ҷавоб метавонад пештар анҷом ёбад. Агар маҳдудият расад, ҷавоб метавонад дар нимаи ҷумла бурида шавад.
Пайдарпайиҳои боздоранда (Stop Sequences)
Мо метавонем аломатҳо ё пайдарпайиҳои махсусеро муайян кунем, ки ҳангоми пайдо шуданашон тавлид қатъ мешавад. Масалан, агар хоҳем танҳо як сархат тавлид шавад, метавонем ҳадди аксари токенҳоро 100 муқаррар кунем ва ду гузариш ба сатри навро ҳамчун пайдарпайии боздоранда истифода барем:
\n\n
Бо чунин танзимот матни натиҷавӣ бештар ба ҳаҷм ва ҳадафи пешбинишуда мувофиқ мемонад.
Токени анҷоми пайдарпайӣ (End-of-Sequence)
Модел худ низ метавонад анҷоми табиии ҷавобро муайян кунад: вай токени махсуси анҷоми пайдарпайӣ (End-of-Sequence — EOS)-ро тавлид мекунад ва тавлид қатъ мегардад. Масалан, дар модели SmolLM2 токени анҷоми навбати гуфтугӯ чунин аст:
Токенҳои махсуси ҳар модел ба қолаби гуфтугӯи (Chat Template) он вобастаанд (ниг. ба боби 10).
Ҷаримаи дарозӣ ва дастур
Ҷаримаи дарозӣ (Length Penalty), ки дар бахши Beam Search шарҳ дода шуд, шумораи муайяни токенҳоро муқаррар намекунад — он танҳо ба интихоби байни номзадҳои кӯтоҳу дароз таъсир мерасонад. Агар мақсад ҷавоби кӯтоҳу фаҳмо бошад, онро дар дастур низ равшан нависед:
«Фоидаи китобхониро дар ду ҷумла шарҳ деҳ.»
Танзимҳо ба интихоби токенҳо таъсир мекунанд; дастури шумо муайян мекунад, ки ҷавоб бояд чӣ мазмун ва шакл дошта бошад.
Рӯйхати калимаҳои манъшуда (Bad Words List)
Баъзан мехоҳем, ки модел дар ҷавобаш калима ё ибораҳои муайянро истифода накунад. Барои ин рӯйхати калимаҳои манъшуда (Bad Words List) истифода мешавад. Дар Hugging Face Transformers танзими bad_words_ids пайдарпайиҳои муайяни токенҳоро аз тавлид манъ мекунад.
Номи англисии он «рӯйхати калимаҳои бад» аст, аммо ба рӯйхат ҳар калима ё ибораи барои вазифаи шумо номатлубро дохил кардан мумкин аст. Масалан, барои матни расмӣ ибораҳои гуфтугӯии зеринро манъ кардан мумкин аст:
"зӯр-ку"
"гап нест"
Ё ҳангоми омода кардани мақолаи тоҷикӣ баъзе истилоҳҳои англисиро маҳдуд кунед, то модел муодилҳои тоҷикии онҳоро интихоб намояд.
Мисоли тоҷикӣ
Дархост: «Барои як китобхонаи кӯдакона ҷумлаи таблиғотӣ навис.» Фарз мекунем, ки ибораи «беҳтарин дар ҷаҳон» манъ шудааст.
- Ҷавоби дорои ибораи номатлуб: «Китобхонаи мо беҳтарин дар ҷаҳон аст!»
- Ҷавоби мувофиқ: «Дар китобхонаи мо кӯдакон бо қиссаҳои ҷолиб ва донишҳои нав шинос мешаванд.»
Ин мисол шартӣ аст: манъи ибора ҷавоби дуюмро кафолат намедиҳад, балки танҳо ҳамон пайдарпайии токенҳоро аз интихоби модел хориҷ мекунад.
Чӣ гуна кор мекунад?
Калима ё ибора аввал бо токенсози ҳамон модел ба рақамҳои токенҳо табдил дода мешавад ва ин пайдарпайӣ ба рӯйхати манъшуда ворид мегардад. Ба таври шартӣ:
"ибораи номатлуб" → [рақами токени 1, рақами токени 2]
Рақамҳои воқеӣ аз токенсози модел вобастаанд. Дар Transformers ин чунин менамояд:
bad_words = ["беҳтарин дар ҷаҳон"]
bad_words_ids = tokenizer(bad_words, add_special_tokens=False).input_ids
outputs = model.generate(**inputs, bad_words_ids=bad_words_ids)
Маҳдудиятҳо
Ин усул пайдарпайии мушаххаси токенҳоро манъ мекунад, на маънои онро. Аз ин рӯ, шаклҳои дигар бояд алоҳида санҷида шаванд, зеро онҳо метавонанд ба токенҳои дигар табдил ёбанд:
беҳтарин дар ҷаҳон
Беҳтарин дар ҷаҳон
беҳтарин дар ҷаҳон
Ҳатто агар ибораи аввал манъ бошад, модел метавонад ҳамон фикрро бо калимаҳои дигар баён кунад: «Аз ҳамаи китобхонаҳои дунё беҳтар аст.» Пас, рӯйхати калимаҳои манъшуда ҷойи санҷиши мазмунро намегирад (дар бораи бехатарии ҷавобҳо ниг. ба боби 14). Манъи калимаҳои серистеъмол метавонад навиштани ҷавоби равону пурмазмунро душвор созад.
| Танзим | Вазифа |
|---|---|
| Ҷаримаи такрор | Имкони такрори токенҳои пешинаро кам мекунад |
| Рӯйхати калимаҳои манъшуда | Пайдарпайиҳои токенҳои муайяншударо пурра манъ мекунад |
Ҷамъбасти танзимҳо
| Танзим | Вазифа |
|---|---|
| Ҳарорат | Тақсимоти эҳтимолҳои токени навбатиро тағйир медиҳад |
| Top-k / Top-p | Вариантҳои дастрасро барои интихоб маҳдуд мекунанд |
| Ҷаримаҳои такрор, ҳузур ва басомад | Холҳои токенҳои қаблан истифодашударо паст мекунанд |
| Ҷаримаи дарозӣ | Дар Beam Search дарозии пайдарпайиро ҳангоми баҳогузорӣ ба ҳисоб мегирад |
| Ҳадди токенҳо, пайдарпайиҳои боздоранда, EOS | Муайян мекунанд, ки тавлид кай қатъ гардад |
| Рӯйхати калимаҳои манъшуда | Пайдарпайиҳои муайяни токенҳоро манъ мекунад |
Таъсири ин танзимҳо аз стратегияи интихобшуда вобаста аст: масалан, ҳарорат ва Top-p дар Greedy Search ва Beam Search-и бе намунагирӣ таъсир надоранд.
Тавсияҳои амалӣ
Танзимҳои беҳтарин аз вазифа, модел ва забон вобастаанд, бинобар ин қиматҳои зерин нуқтаи оғоз мебошанд, на қоидаи қатъӣ. Ҳамеша якчанд вариантро бо дархостҳои воқеии худ санҷед.
| Вазифа | Стратегия ва танзимҳои тавсияшаванда | Сабаб |
|---|---|---|
| Ҷавобҳои фактӣ, истихроҷи маълумот, гурӯҳбандӣ | Greedy ё ҳарорати паст (наздик ба 0); ҷаримаҳо одатан лозим нестанд | Ҷавоби устувор ва такроршаванда муҳим аст; гуногунӣ фоида надорад |
| Тавлиди рамз (Code) | Ҳарорати паст; ҷаримаҳои такрорро истифода набаред ё хеле сабук кунед | Дар рамз такрори номи тағйирёбандаҳо ва калимаҳои калидӣ табиӣ ва зарурист |
| Тарҷума ва хулосабарорӣ | Greedy ё Beam Search (бо ҷаримаи дарозии мувофиқ), ё ҳарорати паст | Ҷавоби «дуруст» нисбатан муайян аст; муқоисаи чанд роҳ кумак мекунад |
| Чат ва ёрдамчии умумӣ | Намунагирӣ бо ҳарорати миёна ва Top-p; ҷаримаҳои сабук; пайдарпайиҳои боздоранда ва ҳадди токенҳо | Тавозуни табиӣ будан ва устуворӣ |
| Навиштани эҷодӣ, сарлавҳаҳо, ғояҳо | Намунагирӣ бо ҳарорати баландтар ва Top-p; ҷаримаи ҳузур ё басомади сабук; чанд вариантро тавлид карда, беҳтаринро интихоб кунед | Гуногунӣ ва навоварӣ муҳим аст |
| Матни дароз бо хатари такрор | Ҷустуҷӯи муқоисавӣ ё намунагирӣ бо ҷаримаи такрор | Кам кардани ҳалқаҳои такрорӣ |
Чанд маслиҳати умумӣ:
- Дар як вақт як танзимро тағйир диҳед, то таъсири онро фаҳмед.
- Дастури равшан аз танзимҳо муҳимтар аст: агар ҷавоби кӯтоҳ лозим бошад, инро дар дархост нависед, на танҳо бо
max_new_tokensмаҳдуд кунед. - Танзимҳо дурустиро кафолат намедиҳанд: на ҳарорати паст, на холи баланди Beam Search, на рӯйхати калимаҳои манъшуда ҷойи санҷиши мазмунро намегиранд.
- Барои такроршавандагӣ (масалан, ҳангоми арзёбӣ) Greedy ё қимати собити тухми тасодуфӣ (Random Seed)-ро истифода баред.
- Ҳангоми арзёбӣ на танҳо кам шудани такрорро, балки равонӣ, дурустии мазмун ва мувофиқат ба дархост-ро низ санҷед.
Хулоса
Дар ин боб дидем, ки модели забонӣ матнро токен ба токен тавлид мекунад: пас аз марҳилаи Prefill, ки дархостро коркард мекунад, дар марҳилаи Decode барои ҳар токени нав логитҳо ҳисоб шуда, бо softmax ба эҳтимолҳо табдил меёбанд ва сипас яке аз токенҳо интихоб мешавад. Таваҷҷуҳ ба модел имкон медиҳад контекстро ба назар гирад, дарозии контекст бошад, ҳаҷми ин контекстро маҳдуд мекунад.
Тарзи интихоби токенро стратегияи декодкунӣ муайян мекунад:
- ҷустуҷӯи ҳарисона — сода ва устувор, вале якранг;
- намунагирии мултиномиалӣ — гуногун ва табиӣ, вале камтар пешбинишаванда;
- ҷустуҷӯи чандмасира — чанд роҳро муқоиса мекунад ва барои тарҷума ва хулосабарорӣ мувофиқ аст;
- ҷустуҷӯи муқоисавӣ — эҳтимолро бо ҷаримаи монандӣ мувозинат мекунад, то такрор кам шавад.
Дар дохили ин стратегияҳо танзимҳо рафтори моделро дақиқтар месозанд: ҳарорат тақсимотро тезтар ё ҳамвортар мекунад, Top-k ва Top-p доираи номзадҳоро маҳдуд месозанд, ҷаримаҳои такрор, ҳузур ва басомад такрорро кам мекунанд, ҳадди токенҳо, пайдарпайиҳои боздоранда ва токени EOS дарозиро идора мекунанд ва рӯйхати калимаҳои манъшуда ибораҳои номатлубро хориҷ месозад. Ҳеҷ кадоме аз ин воситаҳо дурустии ҷавобро кафолат намедиҳад — онҳо танҳо тарзи интихобро тағйир медиҳанд.
Дар боби 10 мебинем, ки чӣ гуна худи дархост — дастурҳо, мисолҳо ва қолабҳои гуфтугӯ — ба натиҷаи тавлид таъсир мерасонад, ва дар боби 13 ба суръат ва самаранокии марҳилаҳои Prefill ва Decode бармегардем.
Манбаъҳо
Ин боб қисман дар асоси манбаъҳои зерин таҳия шудааст:
- Курси LLM-и Hugging Face (Hugging Face LLM Course). https://huggingface.co/learn/llm-course — марҳилаҳои тавлид ва танзимҳои тавлид.
- Ҳуҷҷатҳои китобхонаи Hugging Face Transformers, «Generation strategies». https://huggingface.co/docs/transformers/generation_strategies — стратегияҳои декодкунӣ.

Барномасозӣ
Олами Афсонаҳо
Ахбор
Саломатӣ
Дунё