SLM Distillation ແມ່ນຫຍັງ? ວິທີການສ້າງແບບຈຳລອງຂະໜາດນ້ອຍສະເພາະທາງຈາກ LLM ຂະໜາດໃຫຍ່

SLM Distillation ແມ່ນເຕັກນິກການຖ່າຍທອດຄວາມຮູ້ຈາກ Large Language Model (LLM) ໄປສູ່ Small Language Model (SLM). ບົດຄວາມນີ້ຈະອະທິບາຍຢ່າງເປັນລະບົບຕັ້ງແຕ່ພື້ນຖານຂອງ Knowledge Distillation, ຂັ້ນຕອນການປະຕິບັດ, ຂໍ້ຜິດພາດທີ່ພົບເລື້ອຍ ແລະ ວິທີຫຼີກລ່ຽງສຳລັບວິສະວະກອນ ແລະ ສະຖາປະນິກທີ່ກຳລັງພິຈາລະນາການນຳໃຊ້ Private AI ໃນສະພາບແວດລ້ອມ On-premise ຫຼື Edge.
SLM Distillation ແມ່ນເຕັກນິກທີ່ຖ່າຍທອດຄວາມຮູ້ທີ່ Large Language Model (LLM) ໄດ້ຮຽນຮູ້ ໄປສູ່ Small Language Model (SLM) ທີ່ມີຂະໜາດນ້ອຍກວ່າ ຢ່າງມີປະສິດທິພາບ. ໃນຖານະທີ່ເປັນວິທີໜຶ່ງຂອງ Knowledge Distillation, ເຕັກນິກນີ້ໄດ້ພັດທະນາຂຶ້ນໂດຍມີຈຸດເລີ່ມຕົ້ນຈາກບົດຄວາມທີ່ Hinton ແລະ ຄະນະໄດ້ເຜີຍແຜ່ໃນປີ 2015, ແລະ ໃນຊ່ວງທີ່ຜ່ານມາໄດ້ຖືກນຳໃຊ້ຢ່າງກວ້າງຂວາງເພື່ອສ້າງ SLM ທີ່ມີພາຣາມິເຕີ 7B ຫຼືໜ້ອຍກວ່າ ໃຫ້ເປັນ model ສະເພາະສຳລັບວຽກງານທຸລະກິດ.
ບົດຄວາມນີ້ຖືກຂຽນຂຶ້ນສຳລັບ engineer ແລະ architect ທີ່ກຳລັງພິຈາລະນານຳໃຊ້ Private AI ເຂົ້າສູ່ສະພາບແວດລ້ອມ on-premise ຫຼື Edge AI. ເມື່ອອ່ານຈົບແລ້ວ, ທ່ານຈະສາມາດເຂົ້າໃຈ 3 ຈຸດຕໍ່ໄປນີ້ຢ່າງເປັນລະບົບ.
ສະຫຼຸບ: SLM Distillation ແມ່ນເຕັກນິກທີ່ຖ່າຍທອດຄວາມຮູ້ຂອງ LLM ຂະໜາດໃຫຍ່ໄປສູ່ model ຂະໜາດນ້ອຍ ແລະ ເປັນວິທີການຫຼັກໃນການສ້າງ Private AI.
ເຕັກນິກນີ້ ເຊິ່ງໄດ້ນຳແນວຄິດຂອງ Knowledge Distillation ມາປັບໃຊ້ກັບ LLM, ມີພື້ນຖານມາຈາກຫຼັກການທີ່ Hinton ແລະ ຄະນະໄດ້ສະເໜີໃນປີ 2015.
ຄວາມແຕກຕ່າງລະຫວ່າງ Knowledge Distillation ແລະ Knowledge Transfer
ໃນຕອນທຳອິດ ຄົນມັກຄິດວ່າ "Knowledge Transfer ແລະ Knowledge Distillation ມີຄວາມໝາຍຄືກັນ", ແຕ່ໃນຄວາມເປັນຈິງແລ້ວ distillation ແມ່ນວິທີການ implement ຢ່າງໜຶ່ງຂອງ knowledge transfer, ໂດຍມີຈຸດປະສົງ, ຂັ້ນຕອນ ແລະ ຜົນຜະລິດທີ່ແຕກຕ່າງກັນຢ່າງຊັດເຈນ.
ຄວາມແຕກຕ່າງຫຼັກລະຫວ່າງທັງສອງມີດັ່ງນີ້.
- Knowledge Transfer: ຄຳສັບໃນຄວາມໝາຍກວ້າງ ທີ່ໝາຍເຖິງແນວຄິດການຖ່າຍທອດຄວາມຮູ້ລະຫວ່າງຄົນ, ອົງກອນ ຫຼື ລະບົບໂດຍລວມ. ຮວມທັງການຈັດທຳເອກະສານ, ການຝຶກອົບຮົມ ແລະ ການສຳເນົາ weight ຂອງ model ນຳ
- Knowledge Distillation (knowledge distillation): ວິທີການ machine learning ທີ່ເປັນຮູບປະທຳ ເຊິ່ງໃຊ້ output distribution (soft label) ຂອງ teacher model ເພື່ອຝຶກ student model. ໄດ້ຖືກສ້າງເປັນສູດຢ່າງເປັນທາງການໃນບົດຄວາມ "Distilling the Knowledge in a Neural Network" (arXiv:1503.02531) ທີ່ Geoffrey Hinton ແລະ ຄະນະໄດ້ເຜີຍແຜ່ໃນປີ 2015
ຫົວໃຈຂອງ distillation ຢູ່ທີ່ "soft label". ໃນ supervised learning ທົ່ວໄປ ຈະໃຊ້ hard label ທີ່ກຳນົດຄ່າ 1 ໃຫ້ກັບ class ຄຳຕອບທີ່ຖືກຕ້ອງ ແລະ 0 ໃຫ້ກັບ class ອື່ນໆ. ໃນທາງກົງກັນຂ້າມ, distillation ໃຊ້ probability distribution ທັງໝົດທີ່ LLM ໃຫ້ອອກມາ (ຕົວຢ່າງ: "ແມວ:0.7, ໝາ:0.2, ເສືອ:0.1") ເປັນ learning signal ໂດຍກົງ, ຈຶ່ງເຮັດໃຫ້ຄວາມຮູ້ທີ່ແຝງຢູ່ ເຊັ່ນ ຄວາມສຳພັນຄ້າຍຄືກັນລະຫວ່າງ class ຕ່າງໆ ຖືກຖ່າຍທອດໄປສູ່ student model ນຳ.
ຄວາມແຕກຕ່າງນີ້ ສົ່ງຜົນໂດຍກົງຕໍ່ການຕັດສິນໃຈໃນຂັ້ນຕອນ implement.
ບົດບາດຂອງ Teacher Model ແລະ Student Model
ໃນ Knowledge Distillation, LLM ຂະໜາດໃຫຍ່ຖືກເອີ້ນວ່າ "teacher model" ແລະ SLM (Small Language Model) ທີ່ຖືກເຮັດໃຫ້ນ້ອຍລົງຖືກເອີ້ນວ່າ "student model". ບົດບາດຂອງທັງສອງແບ່ງແຍກກັນຢ່າງຊັດເຈນ ໂດຍ teacher ເປັນແຫຼ່ງສະໜອງຄວາມຮູ້ ແລະ student ເປັນຜູ້ຮັບເອົາຄວາມຮູ້ນັ້ນ ແລ້ວເຮັດວຽກໃນສະພາບແວດລ້ອມການໃຊ້ງານຈິງ.
ບົດບາດຫຼັກຂອງ teacher model ມີດັ່ງນີ້.
- ສ້າງ "soft label" (probability distribution ຂອງແຕ່ລະ token) ຕໍ່ input
- ໃຫ້ຂໍ້ມູນທີ່ອຸດົມສົມບູນ ບໍ່ພຽງແຕ່ຖືກ/ຜິດ ແຕ່ຮວມເຖິງຄວາມສຳພັນຄ້າຍຄືກັນລະຫວ່າງ class ນຳ
- ຖ່າຍທອດ "ຄວາມຮູ້ທີ່ແຝງຢູ່" ທີ່ student ຄວນຮຽນແບບ ຜ່ານ probability distribution
ບົດບາດຫຼັກຂອງ student model ມີດັ່ງນີ້.
- ຮຽນຮູ້ໂດຍໃຊ້ soft label ຂອງ teacher ເປັນ teacher signal ແລະ ຜະລິດ output distribution ທີ່ຄ້າຍຄືກັນຄືນ
- ບັນລຸຄວາມແມ່ນຍຳໃກ້ຄຽງກັບ teacher ໃນ task ສະເພາະ ໃນຂະນະທີ່ຄວບຄຸມຈຳນວນພາຣາມິເຕີໃຫ້ໜ້ອຍ
- ດຳເນີນການ inference ໃນສະພາບແວດລ້ອມທີ່ມີຂໍ້ຈຳກັດດ້ານ resource ເຊັ່ນ on-premise ຫຼື edge
ແກນການຕັດສິນໃຈທີ່ສຳຄັນ ແມ່ນຄວາມເປັນສາກົນ (generality) ຂອງ task. ຫາກຕ້ອງການຄອບຄຸມ domain ທີ່ກວ້າງຂວາງ ຄວນເລືອກ open-weight model ຂະໜາດໃຫຍ່ເປັນ teacher, ແຕ່ຫາກຈຳກັດຢູ່ເອກະສານພາຍໃນ ຫຼື ວຽກງານສະເພາະ ການໃຫ້ຮຽນຮູ້ຢ່າງເຂັ້ມຂຸ້ນດ້ວຍ synthetic data ທີ່ສ້າງຈາກ output ຂອງ teacher ຈະມີປະສິດທິພາບກວ່າ.
ໃນການຮຽນຮູ້ຂອງ student, ຈະໃຊ້ "distillation loss" ທີ່ຮວມທັງ output probability distribution ຂອງ teacher ແລະ label ຄຳຕອບທີ່ຖືກຕ້ອງ ເຂົ້າໃນ loss function.
ຄວາມແຕກຕ່າງດ້ານສະຖາປັດຕະຍະກຳລະຫວ່າງ SLM ແລະ LLM
ມີ engineer ຈຳນວນບໍ່ໜ້ອຍທີ່ສັບສົນວ່າ "SLM ແລະ LLM ຕ່າງກໍໃຊ້ Transformer ເປັນພື້ນຖານຄືກັນ ແຕ່ເປັນຫຍັງການເຮັດວຽກຈຶ່ງແຕກຕ່າງກັນຫຼາຍປານນີ້". ການເຂົ້າໃຈຄວາມແຕກຕ່າງລະຫວ່າງທັງສອງ ຈະເປັນຈຸດເລີ່ມຕົ້ນຂອງການອອກແບບ distillation.
ຄວາມແຕກຕ່າງພື້ນຖານທີ່ສຸດແມ່ນຈຳນວນພາຣາມິເຕີ. LLM ມີພາຣາມິເຕີຫຼາຍສິບຕື້ຈົນເຖິງຫຼາຍພັນຕື້, ໃນຂະນະທີ່ SLM ຕາມທີ່ລະບຸໄວ້ໃນ research note ນັ້ນ ມີການຄົ້ນຄວ້າຈຳນວນຫຼາຍທີ່ເນັ້ນເປົ້າໝາຍໄປທີ່ 7B (7 ພັນລ້ານ) ພາຣາມິເຕີ ຫຼືໜ້ອຍກວ່າ, ຂະໜາດ model ຕ່າງກັນຢ່າງມະຫາສານ.
ຄວາມແຕກຕ່າງຫຼັກໃນດ້ານ architecture ມີດັ່ງນີ້.
- ຈຳນວນ layer ແລະ ຈຳນວນ head: LLM ມີທັງຈຳນວນ block ຂອງ Transformer ແລະ ຈຳນວນ attention head ຫຼາຍ, ຈຶ່ງມີ expressiveness ສູງ. SLM ຫຼຸດສ່ວນເຫຼົ່ານີ້ລົງຢ່າງຫຼວງຫຼາຍ ເພື່ອຄວບຄຸມ memory footprint
- Context window: LLM ມີ context window ທີ່ກວ້າງ ເພື່ອຮອງຮັບບໍລິບົດຍາວ, ແຕ່ SLM ມັກຈະຖືກຫຍໍ້ລົງ ຈຶ່ງເກີດຂໍ້ຈຳກັດໃນການປະມວນຜົນປະຫວັດການສົນທະນາ ຫຼື ເອກະສານທີ່ຍາວ
- ການນຳໃຊ້ MoE (Mixture of Experts): model ຂະໜາດໃຫຍ່ບາງຕົວນຳໃຊ້ໂຄງສ້າງ MoE ເພື່ອຄວບຄຸມຕົ້ນທຶນ inference, ແຕ່ໃນ SLM ໂຄງສ້າງແບບ Dense Model (dense model) ເປັນທີ່ນິຍົມ
ຂໍ້ຈຳກັດເຫຼົ່ານີ້ ນຳໄປສູ່ຄວາມຫຍຸ້ງຍາກຂອງ distillation ໂດຍກົງ. ເພາະຕ້ອງບີບອັດ ແລະ ຖ່າຍທອດ intermediate representation ອັນອຸດົມສົມບູນຂອງ teacher model ໄປສູ່ student model ທີ່ມີຈຳນວນ layer ໜ້ອຍກວ່າ.
ເປັນຫຍັງ SLM Distillation ຈຶ່ງໄດ້ຮັບຄວາມສົນໃຈໃນປັດຈຸບັນ?

ສະຫຼຸບ: ຄວາມຕ້ອງການ 3 ຂໍ້ ຄື ຕົ້ນທຶນ, ຄວາມເປັນສ່ວນຕົວ ແລະ ການ deploy ໄປສູ່ edge ໄດ້ຊ້ອນທັບກັນ, ເຮັດໃຫ້ຄວາມສົນໃຈຕໍ່ SLM Distillation ເພີ່ມຂຶ້ນຢ່າງໄວວາ.
ຄວາມຕ້ອງການ 3 ຂໍ້ ຄື ການຫຼຸດພົ້ນຈາກການເພິ່ງພາ cloud API, ການຮັບປະກັນ data sovereignty ໃນການດຳເນີນງານແບບ on-premise ແລະ ການ deploy model ຂະໜາດເບົາໄປສູ່ edge device ໄດ້ປາກົດຂຶ້ນພ້ອມກັນ. ໃນແຕ່ລະ H3, ພວກເຮົາຈະເຈາະເລິກເຖິງເບື້ອງຫຼັງ ແລະ ບໍລິບົດການນຳໃຊ້ຢ່າງເປັນຮູບປະທຳ.
ຄວາມຕ້ອງການດ້ານ Private AI ແລະ ການດຳເນີນງານແບບ On-premise
ໃນຂະນະທີ່ການນຳໃຊ້ generative AI ໄດ້ຂະຫຍາຍຕົວ, ສຽງທີ່ວ່າ "ບໍ່ຢາກສົ່ງຂໍ້ມູນພາຍໃນຂຶ້ນ cloud" ຍັງຄົງມີຢູ່ຢ່າງໜຽວແໜ້ນໃນໜ້າວຽກ. ໃນທຸລະກິດທີ່ມີການກຳກັບດູແລເຂັ້ມງວດ ເຊັ່ນ ການແພດ, ການເງິນ ແລະ ການຜະລິດ, ການສົ່ງຂໍ້ມູນສ່ວນບຸກຄົນ ຫຼື ຄວາມລັບທາງທຸລະກິດ ໄປໃຫ້ external API ເອງ ກໍເປັນຄວາມສ່ຽງດ້ານ compliance ໃນຫຼາຍໆກໍລະນີ.
ໃນຕອນທຳອິດ ຄົນມັກຄິດວ່າ "ໃຊ້ cloud API ພ້ອມກັບຄວບຄຸມດ້ວຍ prompt ກໍພຽງພໍແລ້ວ", ແຕ່ໃນຄວາມເປັນຈິງ ພັນທະໜ້າທີ່ໃນການ audit log ການສົ່ງຂໍ້ມູນ ແລະ ຂໍ້ຈຳກັດຕາມສັນຍາ ໄດ້ກາຍເປັນອຸປະສັກ, ຈຶ່ງມີອົງກອນຫຼາຍຂຶ້ນທີ່ເລືອກສ້າງພາຍໃນຢ່າງສົມບູນແບບ ໄປສູ່ on-premise ຫຼື private cloud. SLM Distillation ເປັນວິທີການທີ່ມີພະລັງໃນການຕອບສະໜອງຄວາມຕ້ອງການນີ້.
ບັນຫາຫຼັກໃນການດຳເນີນງານ Private AI ແບບ on-premise ມີດັ່ງນີ້.
- ຕົ້ນທຶນ inference: ການ run model ຂະໜາດໃຫຍ່ໂດຍກົງແບບ on-premise ຕ້ອງມີ GPU server ປະສິດທິພາບສູງ, ຈຶ່ງມີແນວໂນ້ມທີ່ຕົ້ນທຶນການຈັດຫາ ແລະ ບຳລຸງຮັກສາຈະສູງ
- Latency: ໃນການເຊື່ອມຕໍ່ແບບ real-time ກັບລະບົບພາຍໃນ, ມີບາງກໍລະນີທີ່ຄວາມລ່າຊ້າໃນການໄປ-ກັບ cloud ບໍ່ສາມາດຍອມຮັບໄດ້
- Data governance: ການເກັບ log ແລະ ປະຫວັດ inference ໄວ້ພາຍໃຕ້ການຄຸ້ມຄອງຂອງບໍລິສັດເອງ ເຮັດໃຫ້ການ audit ແລະ ການຮັບມືກັບ GDPR ຫຼື ການກຳກັບດູແລຂອງອຸດສາຫະກຳ ງ່າຍຂຶ້ນ
ຫາກໃຊ້ SLM Distillation, ຈະສາມາດບີບອັດຄວາມຮູ້ຂອງ model ຂະໜາດໃຫຍ່ ເຂົ້າສູ່ model ຂະໜາດນ້ອຍທີ່ມີພາຣາມິເຕີ 7B ຫຼືໜ້ອຍກວ່າ ໄດ້, ຈຶ່ງເຮັດໃຫ້ສາມາດ inference ໄດ້ຢ່າງໃຊ້ງານໄດ້ຈິງ ແມ່ນແຕ່ໃນສະພາບແວດລ້ອມ on-premise server ທີ່ມີຢູ່ ຫຼື GPU 1~2 ໃບ. ຈຸດທີ່ສາມາດຮັກສາຄວາມແມ່ນຍຳສະເພາະສຳລັບວຽກງານໄວ້ໄດ້ ໃນຂະນະທີ່ຕັດການເພິ່ງພາ cloud ອອກ ແມ່ນເຫດຜົນຫຼັກທີ່ເຮັດໃຫ້ເຕັກນິກນີ້ໄດ້ຮັບຄວາມສົນໃຈ.
ການນຳໃຊ້ກັບ Edge AI ແລະ ການຫຼຸດຕົ້ນທຶນ GPU
ຜົນປະໂຫຍດຂອງ SLM Distillation ປາກົດຊັດເຈນທີ່ສຸດ ໃນສະຖານະການ deploy ໄປສູ່ Edge AI.
model ຂະໜາດນ້ອຍທີ່ໄດ້ຈາກ distillation ສາມາດ inference ໃຫ້ຈົບພາຍໃນ device (on-device) ໄດ້ ໂດຍບໍ່ຕ້ອງເພິ່ງພາ cloud API. ດ້ວຍເຫດນີ້ ຈຶ່ງໄດ້ຮັບຜົນປະໂຫຍດ 3 ຂໍ້ພ້ອມກັນ ຄື ການກຳຈັດ network latency, ການຫຼຸດຕົ້ນທຶນການສື່ສານ ແລະ ການເຮັດໃຫ້ຂໍ້ມູນຈົບພາຍໃນ on-premise. ມີປະສິດທິພາບເປັນພິເສດໃນການໃຊ້ງານທີ່ຕ້ອງການທັງ latency ແລະ ຄວາມເປັນສ່ວນຕົວ ເຊັ່ນ ການກວດຈັບຄວາມຜິດປົກກະຕິໃນສາຍການຜະລິດ ຫຼື ການຕັດສິນແບບ real-time ໃນສະຖານທີ່ການແພດ.
ໃນມຸມມອງຂອງຕົ້ນທຶນ GPU, ການແຍກເງື່ອນໄຂຕໍ່ໄປນີ້ ຈະເປັນເກນໃນການຕັດສິນໃຈ.
- ກໍລະນີ inference ໃນປະລິມານຫຼາຍ ແລະ ຢ່າງຕໍ່ເນື່ອງ: ຄ່າໃຊ້ຈ່າຍຕາມການໃຊ້ງານຂອງ cloud GPU ມີແນວໂນ້ມສະສົມຂຶ້ນໄດ້ງ່າຍ, ການ run SLM ຂະໜາດ 7B ຫຼືໜ້ອຍກວ່າ ໃນ GPU ຂະໜາດນ້ອຍແບບ on-premise (ຕົວຢ່າງ: ໃຊ້ T4 class ແທນ NVIDIA A100) ມີແນວໂນ້ມທີ່ຈະຄວບຄຸມຕົ້ນທຶນລວມໄດ້ດີກວ່າ.
- ກໍລະນີຢູ່ໃນຂັ້ນຕອນ PoC ທີ່ມີຄວາມຖີ່ inference ຕ່ຳ: ການໃຊ້ cloud API ໂດຍກົງ ແລະ ຍ້າຍໄປໃຊ້ SLM ຕອນກ່ອນ production ຈິງ ຈະປະຢັດຕົ້ນທຶນການພັດທະນາໄດ້.
ໃນຂັ້ນຕອນການຮຽນຮູ້ (distillation) ເອງ, ການສ້າງ inference ຂອງ teacher model ໄວ້ລ່ວງໜ້າເປັນ offline synthetic data ຈະສາມາດບີບອັດເວລາ GPU ທີ່ຈຳເປັນສຳລັບການຮຽນຮູ້ຂອງ student model ໄດ້. ມີການລາຍງານກໍລະນີທີ່ສາມາດຮອງຮັບໄດ້ດ້ວຍ spot instance ຫຼື burst usage ໂດຍບໍ່ຕ້ອງຈັດຫາ GPU cluster ຂະໜາດໃຫຍ່ໄວ້ຕະຫຼອດເວລາ.
ການປຽບທຽບກັບ Fine-tuning ແລະ Quantization
ມີໜ້າວຽກຈຳນວນບໍ່ໜ້ອຍທີ່ສັບສົນວ່າ "ເມື່ອມີ distillation, fine-tuning ແລະ quantization ວາງຮຽງກັນຢູ່ 3 ຢ່າງ, ຄວນເລີ່ມຈາກອັນໃດກ່ອນ". ຫາກເຂົ້າໃຈຈຸດປະສົງ ແລະ ຂັ້ນຕອນການນຳໃຊ້ຂອງແຕ່ລະຢ່າງໄວ້ ຈະຕັດສິນໃຈໄດ້ງ່າຍຂຶ້ນ.
ກ່ອນອື່ນ fine-tuning ແມ່ນວິທີການ update ພາຣາມິເຕີຂອງ model ທີ່ມີຢູ່ ດ້ວຍການຮຽນຮູ້ເພີ່ມ ເພື່ອປັບໃຫ້ເໝາະກັບ domain ສະເພາະ. ຍ້ອນຂະໜາດຂອງ model ເອງບໍ່ປ່ຽນແປງ, ຈຶ່ງເໝາະກັບສະຖານະການທີ່ "ຕ້ອງການເພີ່ມຄວາມແມ່ນຍຳ ແຕ່ຮັກສາຂະໜາດໄວ້ຄືເກົ່າ". quantization (Quantization) ຫຼຸດ memory usage ແລະ ຕົ້ນທຶນການຄິດໄລ່ຕອນ inference ດ້ວຍການຫຼຸດຄວາມແມ່ນຍຳຂອງຄ່າຕົວເລກຂອງ weight (ຕົວຢ່າງ ຈາກ FP32 ໄປ INT8). ຈຸດເດັ່ນຄືສາມາດເຮັດໃຫ້ເບົາລົງໄດ້ໃນຂະນະທີ່ຮັກສາໂຄງສ້າງຂອງ model ໄວ້. ແລະ knowledge distillation ແມ່ນວິທີການທີ່ຝຶກ student model ຂະໜາດນ້ອຍກວ່າ ຈາກສູນ ໂດຍໃຊ້ output distribution ຂອງ teacher model ຂະໜາດໃຫຍ່ເປັນເບາະແສ, ເຊິ່ງມີລັກສະນະແຕກຕ່າງຈາກອີກ 2 ຢ່າງ ຕໍ່ຈຸດທີ່ສາມາດບີບອັດຂະໜາດຂອງ model ໄດ້ໂດຍກົງ.
ຫາກຈັດລະບຽບ, ຫາກຈຸດປະສົງແມ່ນ domain adaptation ໃຫ້ໃຊ້ fine-tuning, ຫາກຕ້ອງການເຮັດໃຫ້ model ທີ່ມີຢູ່ໄວ ແລະ ເບົາລົງໂດຍໃຊ້ຄືເກົ່າ ໃຫ້ໃຊ້ quantization, ຫາກຕ້ອງການໂອນຄວາມສາມາດຂອງ model ຂະໜາດໃຫຍ່ໄປສູ່ model ຂະໜາດນ້ອຍ ໃຫ້ໃຊ້ knowledge distillation, ນີ້ຄືການແບ່ງໃຊ້ພື້ນຖານ.
ນອກຈາກນີ້, ວິທີການເຫຼົ່ານີ້ບໍ່ໄດ້ຂັດແຍ້ງກັນ. ການ fine-tuning ເພື່ອ domain adaptation ເພີ່ມ ໃສ່ student model ທີ່ຖືກເຮັດໃຫ້ນ້ອຍລົງດ້ວຍ distillation, ແລ້ວສຸດທ້າຍ ຫຼຸດຕົ້ນທຶນ inference ດ້ວຍ quantization, ນີ້ຄືການປະສົມທີ່ຖືກນຳມາໃຊ້ຢ່າງແທ້ຈິງໃນທາງປະຕິບັດ. ຫາກຕ້ອງການ optimize ຄວາມແມ່ນຍຳ, ຄວາມໄວ ແລະ ຂະໜາດ ພ້ອມກັນ, ຄວນພິຈາລະນາການຊ້ອນທັບກັນນີ້.
ຕ້ອງກຽມຫຍັງແດ່ກ່ອນເລີ່ມຕົ້ນ Distillation?

ສະຫຼຸບ: ກຸນແຈຄວາມສຳເລັດຂອງ distillation ຢູ່ໃນຂັ້ນຕອນການກຽມກ່ອນເລີ່ມການຮຽນຮູ້.
ການກຽມ 3 ຢ່າງ ຄື ການເລືອກ teacher model, ການຄວບຄຸມຄຸນນະພາບຂອງ synthetic data ແລະ ການຈັດຕັ້ງ MLOps pipeline ຈະກຳນົດຄຸນນະພາບສຸດທ້າຍຂອງ student model.
ການເລືອກ Teacher Model ແລະ ການນຳໃຊ້ Open-weight Model
ການເລືອກ teacher model ແມ່ນການຕັດສິນໃຈຄັ້ງທຳອິດ ທີ່ກຳນົດຄຸນນະພາບຂອງ distillation ໂດຍລວມ. ໃນຕອນທຳອິດ ຄົນມັກຄິດວ່າ "ໃຊ້ cloud API model ທີ່ມີປະສິດທິພາບສູງທີ່ສຸດເປັນ teacher ກໍພຽງພໍ", ແຕ່ໃນຄວາມເປັນຈິງ ການ run open-weight model ໃນສະພາບແວດລ້ອມ local ມັກຈະສົມດຸນໄດ້ງ່າຍກວ່າ ໃນສາມດ້ານ ຄື license, ຕົ້ນທຶນ ແລະ data sovereignty.
ແກນການຕັດສິນໃຈຫຼັກໃນການເລືອກມີ 3 ຈຸດ ດັ່ງນີ້.
- ຄວາມເໝາະສົມກັບ task: ກວດສອບວ່າ teacher model ມີຄວາມຮູ້ພຽງພໍກ່ຽວກັບ domain ເປົ້າໝາຍ (ກົດໝາຍ, ການແພດ, ການຜະລິດ ແລະ ອື່ນໆ) ຫຼືບໍ່. ໃນ domain ສະເພາະທີ່ model ທົ່ວໄປບໍ່ສາມາດຮັບມືໄດ້, ການເລືອກ model ທີ່ໄດ້ຮຽນຮູ້ເພີ່ມໃນ domain ດຽວກັນ ຈະມີປະສິດທິພາບ
- ຄວາມເຂົ້າກັນໄດ້ຂອງ license: ຫາກໃຊ້ soft label ຫຼື synthetic data ທີ່ສ້າງຂຶ້ນ ໃນທາງການຄ້າ, ໃຫ້ກວດສອບລ່ວງໜ້າວ່າ license ຂອງ teacher model ອະນຸຍາດຫຼືບໍ່. ແມ່ນແຕ່ open-weight model ກໍອາດມີຂໍ້ຈຳກັດໃນການໃຊ້ງານທາງການຄ້າ ຂຶ້ນກັບ license
- ຕົ້ນທຶນ inference ແລະ ຄວາມໄວ output: ການສ້າງ soft label ຕ້ອງປະມວນຜົນ sample ຈຳນວນຫຼາຍ, ຈຶ່ງເຮັດໃຫ້ model ທີ່ມີ inference throughput ຕ່ຳ ກາຍເປັນ bottleneck ຂອງ pipeline ໂດຍລວມ
ໃນຖານະວິທີການປະຕິບັດຕົວຈິງໃນການນຳໃຊ້ open-weight model, ການ deploy ຂະໜາດແບບເປັນຂັ້ນຄືກັບ LLaMA series (7B / 13B / 33B / 65B) ເປັນຕົວຢ່າງທີ່ອ້າງອີງໄດ້. ໂຄງສ້າງທີ່ໃຊ້ 13B class ເປັນ teacher ກ່ອນ ແລ້ວ distillation ໄປສູ່ student ຂະໜາດ 7B ຫຼືໜ້ອຍກວ່າ ເປັນການອອກແບບທີ່ຮັກສາຄຸນນະພາບໄດ້ງ່າຍ ໃນຂະນະທີ່ຄວບຄຸມຕົ້ນທຶນ GPU.
ການສ້າງ Synthetic Data ແລະ ການຄວບຄຸມຄຸນນະພາບ
ຫາກ teacher model ມີຄຸນນະພາບສູງ ແຕ່ຂໍ້ມູນການຮຽນຮູ້ອ່ອນແອ, ຜົນຂອງ distillation ຈະຖືກທຳລາຍລົງຢ່າງຫຼວງຫຼາຍ. ໃນທາງປະຕິບັດ ມີຫຼາຍກໍລະນີທີ່ຂໍ້ມູນພາຍໃນຢ່າງດຽວມີປະລິມານບໍ່ພຽງພໍ, ຈຶ່ງເຮັດໃຫ້ການນຳໃຊ້ synthetic data (Synthetic Data) ເປັນສິ່ງທີ່ຂາດບໍ່ໄດ້.
ໃນການສ້າງ synthetic data, ຫຼັກໆແມ່ນໃຊ້ 2 ວິທີການຕໍ່ໄປນີ້.
- ການສ້າງໂດຍ teacher ເອງ: ວິທີການໃຫ້ prompt ທີ່ຫຼາກຫຼາຍແກ່ teacher model ແລ້ວໃຫ້ output ທັງຄຳຕອບ ແລະ soft label ພ້ອມກັນ. ດ້ວຍການກຽມ template ຄຳຖາມສະເພາະ domain, ຈະສາມາດເກັບຮວບຮວມຂໍ້ມູນທີ່ສອດຄ່ອງກັບວຽກງານໄດ້ຢ່າງມີປະສິດທິພາບ
- ການແປງ corpus ທີ່ມີຢູ່: ວິທີການສົ່ງຄູ່ມືພາຍໃນ ຫຼື FAQ ໃຫ້ LLM ແລ້ວແປງເປັນຄູ່ຄຳຖາມ-ຄຳຕອບ. ການກວດສອບລິຂະສິດ ແລະ ຄວາມລັບຂອງຂໍ້ມູນຕົ້ນສະບັບລ່ວງໜ້າ ເປັນສິ່ງສຳຄັນ
ໃນການຄວບຄຸມຄຸນນະພາບ, ຄວນຫຼີກລ່ຽງການໃຊ້ຂໍ້ມູນທີ່ສ້າງຂຶ້ນໂດຍກົງ. ໃນຖານະເກນ filtering ຢ່າງເປັນຮູບປະທຳ, ແນະນຳໃຫ້ຕັ້ງມຸມມອງຕໍ່ໄປນີ້.
- ການກວດສອບຄວາມສອດຄ່ອງ: ກວດສອບວ່າ teacher ໄດ້ໃຫ້ຄຳຕອບທີ່ຂັດແຍ້ງກັນຕໍ່ຄຳຖາມດຽວກັນ ຫຼືບໍ່
- Hallucination (Hallucination) screening: ຄັດແຖວທີ່ມີຂໍ້ອ້າງທີ່ຍາກຕໍ່ການກວດສອບຄວາມຈິງ ອອກ
- ການຮັບປະກັນຄວາມຫຼາກຫຼາຍ: ຫຼຸດການຊ້ຳກັນຂອງ sample ທີ່ຄ້າຍຄືກັນ ເພື່ອບໍ່ໃຫ້ student model ຮຽນຮູ້ distribution ທີ່ລຳອຽງ
ໃນມຸມມອງການແຍກເງື່ອນໄຂ, ຫາກ domain ແຄບ ແລະ ມີຂໍ້ມູນພາຍໃນພຽງພໍ ວິທີການແປງ ຈະມີປະສິດທິພາບ ແລະ ຕົ້ນທຶນຕ່ຳ, ແຕ່ຫາກເປັນ domain ໃໝ່ ຫຼື ຂໍ້ມູນພາຍໃນມີໜ້ອຍ ການວາງ teacher generation ເປັນແກນຫຼັກ ແລ້ວອອກແບບ prompt ທີ່ຫຼາກຫຼາຍ ຈະນຳໄປສູ່ການເພີ່ມຄວາມແມ່ນຍຳໄດ້ງ່າຍກວ່າ.
MLOps ຂະບວນການ ຫຼື Pipeline ແລະ ໂຄງສ້າງພື້ນຖານ ຫຼື Infrastructure ທີ່ຈຳເປັນ
"ຕ້ອງກຽມສະພາບແວດລ້ອມ inference ຂອງ teacher model ແລະ ສະພາບແວດລ້ອມການຮຽນຮູ້ຂອງ student ແຍກກັນ ຫຼືບໍ່" — ໃນໜ້າວຽກທີ່ທ້າທາຍ distillation ຄັ້ງທຳອິດ, ຄຳຖາມແບບນີ້ມັກຈະເປັນອຸປະສັກທຳອິດ.
ໃນການອອກແບບ MLOps pipeline, ໂດຍລວມແມ່ນຈັດຕັ້ງ 3 layer ຕໍ່ໄປນີ້.
- Data layer: ການສ້າງ, filtering ແລະ version management ຂອງ synthetic data. ຫາກໃຊ້ feature store ຫຼື data version management tool ເຊັ່ນ DVC, ຈະຕິດຕາມການປ່ຽນແປງຄຸນນະພາບໄດ້ງ່າຍ
- Learning layer: ແຍກ job ການສ້າງ soft label ໂດຍ teacher model ແລະ job ການຮຽນຮູ້ຂອງ student model ອອກເປັນ pipeline. ຫາກ GPU memory ຈຳກັດ, ວິທີການ batch process inference ຂອງ teacher ໄວ້ລ່ວງໜ້າ ແລ້ວ cache label ໄວ້ ຈະມີປະສິດທິພາບ
- Evaluation/Deploy layer: ຮວມການຄິດໄລ່ metric ອັດຕະໂນມັດ, ການ register ໃສ່ model registry ແລະ ການ deploy ໄປສູ່ສະພາບແວດລ້ອມ on-premise ຫຼື edge ເຂົ້າໃນ CI/CD flow
ໃນດ້ານ infrastructure, GPU ຂະໜາດ NVIDIA A100 ເປັນອຸດົມຄະຕິ, ແຕ່ຫາກປະສົມ PEFT (parameter efficient fine-tuning) ຫຼື LoRA, ກໍມີກໍລະນີທີ່ສາມາດຮຽນຮູ້ໄດ້ດ້ວຍ GPU ຂະໜາດນ້ອຍກວ່າ. ຫາກຕັ້ງໃຈໃຫ້ດຳເນີນງານແບບ on-premise, ການຮວມການອອກແບບທີ່ບໍ່ສົ່ງ artifact ຂອງ model ແລະ ຂໍ້ມູນການຮຽນຮູ້ ອອກໄປສູ່ external cloud ຕັ້ງແຕ່ຕົ້ນ ເປັນສິ່ງສຳຄັນ.
ຂັ້ນຕອນການປະຕິບັດ SLM Distillation ຄວນດຳເນີນການແນວໃດ?

ສະຫຼຸບ: ການ implement ດຳເນີນເປັນ 3 step ຄື "ການສ້າງ soft label → ການຮຽນຮູ້ຂອງ student → ການປະເມີນ·ຈັດຕັ້ງ". ລຳດັບ ແລະ ການຄວບຄຸມຄຸນນະພາບຂອງແຕ່ລະຂັ້ນຕອນ ຈະກຳນົດຄວາມແມ່ນຍຳຂອງ model ສຸດທ້າຍ.
ເມື່ອກຽມພ້ອມແລ້ວ, ຈຶ່ງເລື່ອນໄປສູ່ຂັ້ນຕອນ implement ຢ່າງເປັນຮູບປະທຳ. ພວກເຮົາຈະອະທິບາຍ 3 step ຕາມລຳດັບ ຄື ການສ້າງ soft label ຈາກ teacher model, ການຮຽນຮູ້ຂອງ student ໂດຍນຳໃຊ້ PEFT·LoRA, ແລະ ການປະເມີນ ພ້ອມທັງການຈັດຕັ້ງ model card.
Step 1: ການສ້າງ Soft Label ຈາກ Teacher Model
ການສ້າງ soft label ແມ່ນ step ທີ່ສຳຄັນທີ່ສຸດ ທີ່ກຳນົດຄຸນນະພາບຂອງ distillation ໂດຍລວມ.
ໃນຕອນທຳອິດ ຄົນມັກຄິດວ່າ "ໃຊ້ hard label (ພຽງແຕ່ class ຄຳຕອບທີ່ຖືກຕ້ອງ) ຂອງ teacher model ໂດຍກົງກໍພຽງພໍ", ແຕ່ໃນຄວາມເປັນຈິງ ການໃຊ້ soft label (probability distribution ຂອງແຕ່ລະ token) ຈະເຮັດໃຫ້ generalization performance ຂອງ student model ດີຂຶ້ນຢ່າງຫຼວງຫຼາຍ. ຍ້ອນວ່າ hard label ຖິ້ມຂໍ້ມູນນອກເໜືອຈາກຄຳຕອບທີ່ຖືກຕ້ອງ, ໃນຂະນະທີ່ soft label ໄດ້ບີບອັດຄວາມໃກ້ຄຽງທາງຄວາມໝາຍ ແລະ ຄວາມຄຸມເຄືອ ລະຫວ່າງ vocabulary ທີ່ teacher model ໄດ້ຮຽນຮູ້ ໄວ້ນຳ.
ຂັ້ນຕອນພື້ນຖານໃນການສ້າງ soft label
- ຕັ້ງ temperature parameter (Temperature): ເຮັດໃຫ້ output probability distribution ລຽບຂຶ້ນດ້ວຍ temperature T. ຫາກ T=1 ຈະເປັນ distribution ເດີມ, ຫາກ T>1 ຂໍ້ມູນຈະປາກົດຢູ່ token ທີ່ມີ probability ຕ່ຳນຳ, ເຮັດໃຫ້ student ຮຽນຮູ້ໄດ້ງ່າຍຂຶ້ນ. ໃນບົດຄວາມຕົ້ນສະບັບຂອງ Hinton ແລະ ຄະນະ (arXiv:1503.02531) ກໍລາຍງານວ່າ ການເພີ່ມ T ໃຫ້ໃຫຍ່ຂຶ້ນ ຈະເພີ່ມປະສິດທິພາບການຖ່າຍທອດ.
- ບັນທຶກ logit: ຕອນ inference, ຂຽນ logit ຂອງ layer ສຸດທ້າຍ (raw score ກ່ອນ softmax) ອອກໃສ່ file ຫຼື feature store. ດ້ວຍການເກັບໄວ້ເປັນ probability distribution ຂອງແຕ່ລະ token, ຈະສາມາດຄິດໄລ່ KL divergence loss ໃນ step ການຮຽນຮູ້ຕໍ່ໄປໄດ້.
- ປະເມີນ batch size ແລະ ຕົ້ນທຶນ inference: ຫາກປະມວນຜົນ corpus ຂະໜາດໃຫຍ່, ຕົ້ນທຶນ inference ຂອງ teacher model ອາດເພີ່ມຂຶ້ນເກີນຄາດ. ຫາກນຳໃຊ້ synthetic data ເພື່ອຈຳກັດເປົ້າໝາຍ inference ໃຫ້ຢູ່ໃນ domain ວຽກງານ, ຈະສົມດຸນລະຫວ່າງຕົ້ນທຶນ ແລະ ຄຸນນະພາບໄດ້ງ່າຍ.
Step 2: ການຮຽນຮູ້ຂອງ Student Model ແລະ ການນຳໃຊ້ PEFT/LoRA
ເມື່ອກຽມ soft label ແລ້ວ, ຕໍ່ໄປແມ່ນຂັ້ນຕອນການຮຽນຮູ້ຂອງ student model. ຍ້ອນການຮຽນຮູ້ໃໝ່ແບບ full parameter ມີຕົ້ນທຶນ GPU ສູງ, ໃນທາງປະຕິບັດ ໂດຍທົ່ວໄປແມ່ນປະສົມ LoRA ເຊິ່ງເປັນວິທີການຕົວແທນຂອງ PEFT (parameter efficient fine-tuning).
LoRA ເປັນວິທີການເພີ່ມ low-rank difference matrix ໃສ່ weight matrix, ເຊິ່ງສາມາດຈຳກັດພາຣາມິເຕີເປົ້າໝາຍໃນການ update ໄວ້ພຽງແຕ່ປະມານໄມ່ເປີເຊັນຂອງທັງໝົດ. ດ້ວຍເຫດນີ້, ແມ່ນແຕ່ student model ຂະໜາດ 7B class ກໍມີກໍລະນີທີ່ສາມາດຮຽນຮູ້ໃຫ້ຈົບໄດ້ດ້ວຍ consumer GPU 1 ໃບ.
ໃນຖານະແກນການຕັດສິນໃຈຂອງການຕັ້ງຄ່າການຮຽນຮູ້, ການແຍກເງື່ອນໄຂຕໍ່ໄປນີ້ ຈະເປັນປະໂຫຍດໃນທາງປະຕິບັດ.
- ກໍລະນີມີ domain-specific data ຢ່າງອຸດົມສົມບູນ: ຕັ້ງ LoRA rank ໃຫ້ສູງ (ຕົວຢ່າງ: rank=64) ແລະ ເພີ່ມຈຳນວນ epoch ການຮຽນຮູ້ ເພື່ອໃຫ້ດູດຊັບຄວາມຮູ້ສະເພາະຢ່າງເລິກເຊິ່ງ
- ກໍລະນີປະລິມານຂໍ້ມູນຈຳກັດ: ຄວບຄຸມ rank ໃຫ້ຕ່ຳ (ຕົວຢ່າງ: rank=8~16), ແລະ ດຳເນີນການ early stopping ພ້ອມທັງ monitoring validation loss ຢ່າງເຂັ້ມງວດ ເພື່ອປ້ອງກັນ overfitting
loss function ໂດຍມາດຕະຖານແມ່ນໂຄງສ້າງທີ່ປະສົມ KL divergence ຕໍ່ soft label ແລະ cross entropy ຕໍ່ hard label. hyperparameter ທີ່ປັບອັດຕາສ່ວນຂອງທັງສອງ (ເຊັ່ນ temperature T ຂອງ temperature scaling) ຈະຖືກປັບໂດຍເບິ່ງ performance ຂອງ validation set.
ໃນລະຫວ່າງການຮຽນຮູ້ ໃຫ້ monitor ຈຸດຕໍ່ໄປນີ້ຢ່າງຕໍ່ເນື່ອງ.
Step 3: ການປະເມີນຜົນ, ການກວດສອບ ແລະ ການຈັດກຽມ Model Card
ເມື່ອຄິດວ່າ "distillation ຈົບແລ້ວ, ຍັງເຫຼືອແຕ່ deploy ເທົ່ານັ້ນ", ການຂ້າມຂັ້ນຕອນການປະເມີນ ແມ່ນຮູບແບບຄວາມລົ້ມເຫຼວທີ່ພົບເລື້ອຍທີ່ສຸດ. ຄຸນນະພາບຂອງ student model ບໍ່ສາມາດຮັບປະກັນໄດ້ ໂດຍບໍ່ມີການປະເມີນປຽບທຽບກັບ teacher model.
metric ຫຼັກໃນການປະເມີນ
- ຄວາມແມ່ນຍຳ task: ປຽບທຽບ score ຂອງ teacher ແລະ student ດ້ວຍ benchmark ຂອງວຽກງານເປົ້າໝາຍ (QA, classification, summarization ແລະ ອື່ນໆ)
- ອັດຕາ Hallucination (Hallucination): ໃນ domain ທີ່ຕ້ອງການການກວດສອບຄວາມຈິງ, ໃຫ້ວັດແທກອັດຕາຄຳຕອບຜິດແຍກຕ່າງຫາກ
- Latency·throughput: ວັດແທກຄວາມໄວ inference ໃນສະພາບແວດລ້ອມ Edge AI ຫຼື on-premise ຈິງ ແລ້ວກວດສອບວ່າຕອບສະໜອງເງື່ອນໄຂ ຫຼືບໍ່
- ການຮອງຮັບ Context Window (Context Window): ທົດສອບວ່າມີການເສື່ອມຄຸນນະພາບຄວາມແມ່ນຍຳໃນ input ຍາວ ຫຼືບໍ່
ຂໍ້ມູນການປະເມີນ ໂດຍພື້ນຖານແມ່ນຕ້ອງກຽມ holdout set ທີ່ບໍ່ໄດ້ໃຊ້ໃນການຮຽນຮູ້. ຫາກປະເມີນດ້ວຍ synthetic data (Synthetic Data) ຢ່າງດຽວ, ຈະເຫັນຄວາມແຕກຕ່າງກັບການໃຊ້ງານຈິງໄດ້ຍາກ, ຈຶ່ງແນະນຳໃຫ້ຮວມ sample ທີ່ໃກ້ຄຽງກັບວຽກງານຈິງ ໃນຈຳນວນໜຶ່ງ.
ການຈັດຕັ້ງ Model Card (Model Card)
ເມື່ອປະເມີນຈົບແລ້ວ, ໃຫ້ບັນທຶກສິ່ງຕໍ່ໄປນີ້ໃສ່ model card.
- ຊື່·version ຂອງ teacher model
- ແຫຼ່ງທີ່ມາຂອງຂໍ້ມູນການຮຽນຮູ້ ແລະ ອັດຕາສ່ວນຂອງ synthetic data
- metric ການປະເມີນ ແລະ ຄ່າທີ່ບັນລຸ
- ຂໍ້ຈຳກັດທີ່ຮູ້ຢູ່ແລ້ວ (domain·ພາສາ ທີ່ບໍ່ຮອງຮັບ ແລະ ອື່ນໆ)
- license ແລະ ຂໍ້ຈຳກັດການໃຊ້ງານ
model card ຍັງເຊື່ອມໂຍງໂດຍກົງກັບ AI governance ແລະ ການຮັບມືກັບ audit ພາຍໃນ.
ຂໍ້ຜິດພາດທີ່ພົບເລື້ອຍ ແລະ ວິທີຫຼີກລ່ຽງ?

ສະຫຼຸບ: ຄວາມລົ້ມເຫຼວຂອງ distillation ສາມາດສະຫຼຸບໄດ້ເປັນ 3 ຮູບແບບ ຄື ການເສື່ອມຄຸນນະພາບ, ຄວາມຄາດເຄື່ອນຂອງ token ແລະ ການຫຼຸດລົງຂອງຄວາມແມ່ນຍຳໃນການ inference. ດ້ວຍການຮູ້ວິທີຮັບມືໄວ້ລ່ວງໜ້າ ຈະສາມາດປ້ອງກັນການເຮັດວຽກຄືນໄດ້.
ເມື່ອດຳເນີນ implement ໄປ, ບັນຫາສະເພາະ ເຊັ່ນ ການເພີ່ມຂຶ້ນຂອງ hallucination ຫຼື ຄວາມຄາດເຄື່ອນຂອງ token distribution ມັກຈະປາກົດຂຶ້ນ. ໃນແຕ່ລະ H3, ພວກເຮົາຈະອະທິບາຍຮູບແບບຄວາມລົ້ມເຫຼວທົ່ວໄປ ແລະ ວິທີຫຼີກລ່ຽງຢ່າງເປັນຮູບປະທຳ.
ການຮັບມືກັບ Hallucination ທີ່ເພີ່ມຂຶ້ນ ແລະ ຄຸນນະພາບທີ່ຫຼຸດລົງ
ບັນຫາທຳອິດທີ່ student model ຫຼັງ distillation ມັກຈະປະເຊີນ ຄື ການເພີ່ມຂຶ້ນຂອງ hallucination (Hallucination). ມີການລາຍງານກໍລະນີທີ່ "ຄວາມສາມາດໃນການຕອບໂດຍຮັກສາຄວາມຄຸມເຄືອໄວ້" ທີ່ teacher model ມີ ບໍ່ໄດ້ຖືກຖ່າຍທອດຢ່າງພຽງພໍ ໃນຂະບວນການ distillation.
ໃນຕອນທຳອິດ ຄົນມັກຄິດວ່າ "ຫາກເພີ່ມຂະໜາດ student model ໃຫ້ໃຫຍ່ຂຶ້ນ ຈະແກ້ໄຂໄດ້", ແຕ່ໃນຄວາມເປັນຈິງ ການປັບປຸງຄຸນນະພາບຂໍ້ມູນ ແລະ ການເສີມສ້າງ evaluation loop ມັກຈະມີປະສິດທິພາບກວ່າ ໃນຫຼາຍໆກໍລະນີ. ແທນທີ່ຈະເພີ່ມຂະໜາດ model, ວິທີການ filter ຂໍ້ມູນດ້ວຍ confidence score ຂອງ soft label ທີ່ teacher ສ້າງຂຶ້ນ ແລ້ວຄັດ sample ຄຸນນະພາບຕ່ຳ ອອກ ຈະນຳໄປສູ່ການຄວບຄຸມການເສື່ອມຄຸນນະພາບ.
ຄວາມຄາດເຄື່ອນຂອງ Token Distribution ແລະ ຂໍ້ຄວນລະວັງຂອງ BPE Tokenizer
ຫາກ vocabulary (vocabulary) ຂອງ teacher model ແລະ student model ບໍ່ກົງກັນ, ຈະເກີດບັນຫາທີ່ບໍ່ສາມາດຖ່າຍທອດ token probability distribution ຂອງ soft label ໄດ້ໂດຍກົງ. ຍ້ອນ BPE tokenizer (Byte-Pair Encoding Tokenizer) ມີ vocabulary size ແລະ ກົດການແບ່ງ ທີ່ແຕກຕ່າງກັນໃນແຕ່ລະ model, ຈຶ່ງມີກໍລະນີບໍ່ໜ້ອຍທີ່ຄຳດຽວກັນ ຖືກແປງເປັນ token sequence ທີ່ຕ່າງກັນ.
ສະຖານະການທົ່ວໄປທີ່ບັນຫານີ້ມັກເກີດຂຶ້ນ ມີດັ່ງນີ້.
- ຫາກ teacher ໃຊ້ tokenizer ທີ່ມີ vocabulary 32,000 ຄຳ ແລະ student ໃຊ້ 16,000 ຄຳ, ຈະເກີດການຂາດຫາຍໃນ probability mapping
- ໃນ domain ພາສາຍີ່ປຸ່ນ·ຫຼາຍພາສາ, tokenizer ທີ່ຖືກຮຽນຮູ້ໂດຍເນັ້ນພາສາອັງກິດ ອາດແບ່ງ kanji ຫຼື kana ຢ່າງລະອຽດເກີນໄປ, ຈຶ່ງມີກໍລະນີທີ່ 1 ຕົວອັກສອນ ກາຍເປັນຫຼາຍ token
- ຫາກຄຳສັບສະເພາະ (ການແພດ, ກົດໝາຍ, ການຜະລິດ ແລະ ອື່ນໆ) ຖືກປະຕິບັດເປັນ unknown token (UNK), ປະລິມານຂໍ້ມູນຂອງ soft label ຈະຫຼຸດລົງຢ່າງຫຼວງຫຼາຍ
ໃນຖານະແກນການຕັດສິນໃຈໃນການຮັບມື, ຫາກ teacher ແລະ student ໃຊ້ tokenizer ໃນ series ດຽວກັນຮ່ວມກັນ ຈະສາມາດໃຊ້ probability distribution ໄດ້ໂດຍກົງ, ແຕ່ຫາກໃຊ້ tokenizer ທີ່ຕ່າງກັນ ໃຫ້ພິຈາລະນາການ re-alignment ຂອງ token sequence ຫຼື ປ່ຽນໄປໃຊ້ distillation ທີ່ອີງໃສ່ hard label (label ຄຳຕອບທີ່ຖືກຕ້ອງ) ແທນ soft label.
ຂໍ້ຄວນລະວັງໃນຂັ້ນຕອນ implement ສະຫຼຸບໄດ້ດັ່ງນີ້.
ຄວາມຖືກຕ້ອງໃນການອະນຸມານ (Inference) ທີ່ຫຼຸດລົງເນື່ອງຈາກການຫຍໍ້ Context Window
ທ່ານເຄີຍມີປະສົບການສົງໄສວ່າ "ເປັນຫຍັງ model ຫຼັງ distillation ຈຶ່ງມີຄຸນນະພາບຄຳຕອບຫຼຸດລົງທັນທີ ເມື່ອສົ່ງເອກະສານຍາວໃຫ້" ຫຼືບໍ່. ນີ້ຄືບັນຫາທົ່ວໄປທີ່ເກີດຈາກການຫຍໍ້ context window.
teacher model ບາງກໍລະນີມີ context window ທີ່ຍາວເຖິງຫຼາຍໝື່ນ token, ແຕ່ student model ຍ້ອນການຫຼຸດຈຳນວນພາຣາມິເຕີ, ຈຶ່ງມີແນວໂນ້ມທີ່ຈຳນວນ token ທີ່ຈັດການໄດ້ ຈະຖືກຈຳກັດນຳ. ຫາກສ້າງ soft label ດ້ວຍ input sequence ສັ້ນໆ ພຽງຢ່າງດຽວ ຕອນຮຽນຮູ້, student model ຈະບໍ່ສາມາດຮຽນຮູ້ inference pattern ຂອງ long-range dependency ໄດ້ຢ່າງພຽງພໍ.
ສະຖານະການທີ່ບັນຫາມັກເກີດຂຶ້ນຢ່າງເປັນຮູບປະທຳ ມີດັ່ງນີ້.
- ການອ້າງອີງຂ້າມເອກະສານຫຼາຍໆສະບັບ: summarization·Q&A task ທີ່ຕ້ອງນຳບໍລິບົດຊ່ວງຕົ້ນ ມາໃຊ້ໃນຄຳຕອບຊ່ວງທ້າຍ
- Multi-step inference: ໃນບັນຫາທີ່ມີ CoT (chain of thought), ກໍລະນີທີ່ inference step ຊ່ວງກາງ ຖືກຕັດຖິ້ມ
- ການຄົ້ນຫາເອກະສານພາຍໃນທີ່ຍາວ: ກໍລະນີທີ່ chunk size ເກີນຂີດຈຳກັດ window ເມື່ອປະສົມກັບ RAG
ວິທີການທີ່ມີປະສິດທິພາບໃນການຫຼີກລ່ຽງ ໄດ້ສະແດງໄວ້ດັ່ງນີ້.
- ຮວມ input sample ທີ່ຍາວ ໂດຍເຈດຕະນາ ເຂົ້າໃນ dataset ສຳລັບ distillation.
FAQ

Q1. ຄວນເຮັດ distillation ຫຼື fine-tuning ກ່ອນ?
ໂດຍຫຼັກການແລ້ວ, ແນະນຳໃຫ້ເຮັດ distillation ກ່ອນ ເພື່ອສ້າງ model ຂະໜາດນ້ອຍທີ່ສະເພາະສຳລັບ domain ວຽກງານ ແລ້ວຈຶ່ງເຮັດ fine-tuning ສະເພາະ task ຊ້ອນທັບ ຕາມລຳດັບ. ຫຼັງຈາກຖ່າຍທອດຄວາມຮູ້ທົ່ວໄປຂອງ teacher model ດ້ວຍ distillation ແລ້ວ, ການ fine-tuning ດ້ວຍຂໍ້ມູນວຽກງານຄຸນນະພາບສູງ ໃນປະລິມານໜ້ອຍ ຈະເຮັດໃຫ້ສົມດຸນລະຫວ່າງຄວາມແມ່ນຍຳ ແລະ ຕົ້ນທຶນໄດ້ງ່າຍ. ແຕ່ຫາກ open-weight model ທີ່ມີຢູ່ ພຽງພໍທີ່ຈະເປັນ base, ກໍມີກໍລະນີທີ່ຂ້າມ distillation ແລ້ວຮັບມືດ້ວຍ fine-tuning ຢ່າງດຽວ.
Q2. ຄວນເລືອກໃຊ້ Local LLM ຫຼື SLM distillation ຢ່າງໃດ?
Local LLM ແມ່ນວິທີການ run open-weight model ໂດຍກົງ ໃນ on-premise ຫຼື server ຂອງບໍລິສັດເອງ, ໂດຍມີຂໍ້ດີຄືຄວາມສະດວກໃນການນຳໃຊ້. ໃນທາງກົງກັນຂ້າມ, SLM distillation ເປັນວິທີການສ້າງ model ສະເພາະຂອງຕົນເອງ ທີ່ສະເພາະສຳລັບວຽກງານໃດໜຶ່ງ, ຈຶ່ງເໝາະກັບສະຖານະການທີ່ຕ້ອງການ optimize ເພີ່ມ ໃນມຸມມອງຄວາມໄວ inference, ຕົ້ນທຶນ ແລະ ຄວາມເປັນສ່ວນຕົວ. ວິທີການທີ່ເປັນຈິງແມ່ນ ປະເມີນ model ທີ່ມີຢູ່ກ່ອນທີ່ ການປຽບທຽບການນຳໃຊ້ Local LLM / SLM — ການໃຊ້ AI ໂດຍບໍ່ເພິ່ງພາ cloud API, ແລ້ວຕັດສິນໃຈເລື່ອນໄປສູ່ distillation ຫາກຄວາມແມ່ນຍຳ·ຄວາມໄວ ບໍ່ຕອບສະໜອງເງື່ອນໄຂ.
Q3. resource GPU ທີ່ຈຳເປັນສຳລັບ distillation ຢູ່ໃນລະດັບໃດ?
ຈະແຕກຕ່າງກັນຢ່າງຫຼວງຫຼາຍ ຂຶ້ນກັບຂະໜາດພາຣາມິເຕີຂອງ student model. ຫາກເປົ້າໝາຍແມ່ນ SLM ທີ່ມີພາຣາມິເຕີ 7B ຫຼືໜ້ອຍກວ່າ, ໃນຂັ້ນຕອນການຮຽນຮູ້ ໂດຍທົ່ວໄປແມ່ນໃຊ້ GPU ຂະໜາດທຽບເທົ່າ NVIDIA A100. ດ້ວຍການປະສົມວິທີການ PEFT ເຊັ່ນ LoRA ຫຼື QLoRA, ຈະມີແນວໂນ້ມທີ່ຈະຫຼຸດ memory usage ໄດ້ຢ່າງຫຼວງຫຼາຍ ເມື່ອທຽບກັບ full fine-tuning. ໃນຂັ້ນຕອນ inference, ມີການລາຍງານກໍລະນີທີ່ ຫາກ apply quantization (Quantization) ກໍສາມາດດຳເນີນງານໄດ້ ແມ່ນແຕ່ດ້ວຍ server GPU ທົ່ວໄປ.
Q4. distillation ສາມາດເຮັດສຳເລັດໄດ້ ດ້ວຍ synthetic data ຢ່າງດຽວ ຫຼືບໍ່?
ການຮຽນຮູ້ດ້ວຍ synthetic data ທີ່ teacher model ສ້າງຂຶ້ນ ຢ່າງດຽວ ກໍເປັນໄປໄດ້, ແຕ່ຫາກການຄວບຄຸມຄຸນນະພາບບໍ່ພຽງພໍ ຈະມີຄວາມສ່ຽງທີ່ hallucination (Hallucination) ຈະເພີ່ມຂຶ້ນ. ໃນທາງປະຕິບັດ, ວິທີການປະສົມ real data ໃນປະລິມານໜ້ອຍ ຫຼື sample ທີ່ຄົນ review ດ້ວຍມື ເຂົ້າໃນ synthetic data ຖືວ່າມີປະສິດທິພາບ ໃນການເຮັດໃຫ້ຄຸນນະພາບໝັ້ນຄົງ. ການບັນທຶກເງື່ອນໄຂການສ້າງ synthetic data (temperature parameter ຫຼື ການອອກແບບ prompt) ແລະ ລະບຸໄວ້ຢ່າງຊັດເຈນໃນ model card (Model Card) ເພື່ອຮັບປະກັນ reproducibility ແລະ ຄວາມໂປ່ງໃສ ເປັນສິ່ງສຳຄັນ.
Q5. ຄວນຮັກສາຄຸນນະພາບ model ທີ່ຜ່ານ distillation ແລ້ວ ຢ່າງຕໍ່ເນື່ອງ ໄດ້ແນວໃດ?
ຫຼັງການດຳເນີນງານ production, ແນະນຳໃຫ້ຮວມກົນໄກ AI Observability (AI Observability) ເຂົ້າໄປ ແລະ ດຳເນີນການ monitoring ຄຸນນະພາບ output ຢ່າງເປັນປະຈຳ. ຫາກ distribution ຂອງຂໍ້ມູນວຽກງານປ່ຽນແປງ, cycle ການສ້າງ synthetic data ເພີ່ມ ດ້ວຍ teacher model ແລ້ວຮັບມືດ້ວຍ differential fine-tuning ຈະມີປະສິດທິພາບ. ດ້ວຍການຮວມ flow ການປະເມີນ·ຮຽນຮູ້ໃໝ່ ເຂົ້າໃນ MLOps pipeline ໄວ້, ຈະສາມາດປ້ອງກັນການລ້າສະໄໝຂອງ model ໄດ້ຢ່າງຕໍ່ເນື່ອງ.
ຄວນເຮັດ Distillation ຫຼື Fine-tuning ກ່ອນ?
ໃນຕອນທຳອິດ ມີຫຼາຍກໍລະນີທີ່ພະຍາຍາມເລີ່ມຈາກ fine-tuning, ແຕ່ໃນຄວາມເປັນຈິງ ການເຮັດ distillation ກ່ອນ ມັກຈະໄດ້ປຽບໃນທັງສອງດ້ານ ຄື ຄວາມແມ່ນຍຳ ແລະ ປະສິດທິພາບສຸດທ້າຍ ໃນຫຼາຍໆກໍລະນີ.
ເຫດຜົນຢູ່ທີ່ "ຈຸດເລີ່ມຕົ້ນ" ຂອງການຮຽນຮູ້. fine-tuning ນຳໃຊ້ຄວາມຮູ້ທີ່ base model (Foundation Model) ມີ ໂດຍກົງ, ແຕ່ຫາກ student model ນ້ອຍຢູ່ແລ້ວ, base model ຢ່າງດຽວ ມັກຈະມີຄວາມໜາແໜ້ນຂອງຄວາມຮູ້ທີ່ຈຳເປັນສຳລັບ task ວຽກງານ ບໍ່ພຽງພໍ. ຫາກໃຫ້ຮຽນຮູ້ soft label ຂອງ teacher LLM ກ່ອນ ດ້ວຍ distillation, expressiveness ຂອງ student model ຈະຖືກຍົກສູງຂຶ້ນ, ເຮັດໃຫ້ fine-tuning ຫຼັງຈາກນັ້ນ ເຮັດວຽກໄດ້ຢ່າງມີປະສິດທິພາບກວ່າ.
ລຳດັບທີ່ແນະນຳ ມີດັ່ງນີ້.
- Step 1 — Distillation: ສ້າງ soft label ຈາກ teacher LLM ແລ້ວຖ່າຍທອດຄວາມຮູ້ທົ່ວໄປໄປສູ່ student model
- Step 2 — Fine-tuning (PEFT / LoRA): ຮຽນຮູ້ເພີ່ມດ້ວຍ domain-specific data ເພື່ອເຮັດໃຫ້ສະເພາະສຳລັບ task ວຽກງານ
- Step 3 — Quantization (Quantization): ບີບອັດຂະໜາດ model ເພີ່ມເຕີມ ສຳລັບສະພາບແວດລ້ອມ Edge AI ຫຼື on-premise
ແຕ່ຫາກໃຊ້ open-weight model ທີ່ມີຂະໜາດພຽງພໍຢູ່ແລ້ວ ເປັນ base, ກໍມີກໍລະນີທີ່ຂ້າມ distillation ແລ້ວບັນລຸຄວາມແມ່ນຍຳເປົ້າໝາຍໄດ້ ດ້ວຍ fine-tuning ຢ່າງດຽວ.
ວິທີການເລືອກໃຊ້ລະຫວ່າງ Local LLM ແລະ SLM Distillation?
ທັງສອງຢ່າງ ຫາກຄິດໃນແກນທີ່ວ່າ "ໃຊ້ຂອງສຳເລັດຮູບ ຫຼື ສ້າງຂອງສະເພາະ" ຈະຈັດລະບຽບໄດ້ງ່າຍ.
Local LLM ເປັນວິທີການ run open-weight model ໂດຍກົງ ໃນສະພາບແວດລ້ອມ on-premise ຫຼື edge. ສາມາດໃຊ້ໄດ້ທັນທີ ໂດຍບໍ່ຕ້ອງຮຽນຮູ້ເພີ່ມ ແລະ ໃຫ້ performance ພຽງພໍ ສຳລັບ task ຖາມ-ຕອບ ຫຼື summarization ທົ່ວໄປ. ໃນທາງກົງກັນຂ້າມ, SLM distillation ຖ່າຍທອດຄວາມຮູ້ ຫຼື output style ຂອງ domain ສະເພາະ ໄປສູ່ student model, ຈຶ່ງໄດ້ຄວາມແມ່ນຍຳສະເພາະສຳລັບວຽກງານ ໂດຍແລກກັບຕົ້ນທຶນການສ້າງເບື້ອງຕົ້ນ.
ຈຸດແຍກໃນການຕັດສິນໃຈ ສາມາດຈັດລະບຽບໄດ້ດັ່ງນີ້.
- ກໍລະນີຕ້ອງການ run ໄດ້ທັນທີ ໃນ task ທົ່ວໄປ ໃຫ້ນຳໃຊ້ Local LLM ໂດຍກົງ
- ກໍລະນີຕ້ອງການຄວາມແມ່ນຍຳສູງ ໃນ domain ສະເພາະ (ກົດໝາຍ, ການແພດ, ການຜະລິດ ແລະ ອື່ນໆ) ໃຫ້ສ້າງ model ສະເພາະ ດ້ວຍ SLM distillation
- ໃນການໃຊ້ງານ Edge AI ທີ່ຕ້ອງການຫຼຸດຕົ້ນທຶນ inference ຫຼື latency ໃຫ້ຕ່ຳສຸດ, model ຂະໜາດນ້ອຍທີ່ຜ່ານ distillation ແລ້ວ ຈະມີແນວໂນ້ມທີ່ຈະໄດ້ປຽບ
ໃນຂັ້ນຕອນ PoC, ວິທີການແບບເປັນຂັ້ນ ຄື ກວດສອບເງື່ອນໄຂດ້ວຍ Local LLM ກ່ອນ ແລ້ວຍ້າຍໄປສູ່ distillation ຫາກຄວາມແມ່ນຍຳ ຫຼື ຄວາມໄວການຕອບສະໜອງ ບໍ່ຕອບສະໜອງເກນ ກໍມີປະສິດທິພາບ. ຫາກເລີ່ມ distillation ຕັ້ງແຕ່ຕົ້ນ, ຈະມີຄວາມສ່ຽງທີ່ຈະໃຊ້ແຮງງານຫຼາຍເກີນໄປ ໃນການສ້າງ synthetic data ຫຼື ການຈັດຕັ້ງ MLOps pipeline.
ນອກຈາກນີ້, ທັງສອງວິທີການບໍ່ໄດ້ຂັດແຍ້ງກັນ. ໂຄງສ້າງທີ່ໃຊ້ Local LLM ເປັນ teacher model ແລ້ວແຍກ model ຂະໜາດນ້ອຍ ອອກມາຈາກນັ້ນ ດ້ວຍ distillation ກໍເປັນທາງເລືອກທີ່ໃຊ້ໄດ້ຈິງ.
ຜູ້ຂຽນ・ຜູ້ກວດສອບ
Yusuke Ishihara
ເລີ່ມຂຽນໂປຣແກຣມຕັ້ງແຕ່ອາຍຸ 13 ປີ ດ້ວຍ MSX. ຫຼັງຈົບການສຶກສາຈາກມະຫາວິທະຍາໄລ Musashi, ໄດ້ເຮັດວຽກໃນການພັດທະນາລະບົບຂະໜາດໃຫຍ່ ລວມທັງລະບົບຫຼັກຂອງສາຍການບິນ ແລະ ໂຄງສ້າງ Windows Server Hosting/VPS ທຳອິດຂອງຍີ່ປຸ່ນ. ຮ່ວມກໍ່ຕັ້ງ Site Engine Inc. ໃນປີ 2008. ກໍ່ຕັ້ງ Unimon Inc. ໃນປີ 2010 ແລະ Enison Inc. ໃນປີ 2025, ນຳພາການພັດທະນາລະບົບທຸລະກິດ, NLP ແລະ ແພລດຟອມ. ປັດຈຸບັນສຸມໃສ່ການພັດທະນາຜະลິດຕະພັນ ແລະ ການສົ່ງເສີມ AI/DX ໂດຍນຳໃຊ້ generative AI ແລະ LLM.


