หลักการทำงานของโมเดลภาษาขนาดใหญ่อย่าง Llama
Llama ไม่ได้ค้นหาคำตอบ แต่สร้างคำตอบขึ้นมาทีละส่วนจากรูปแบบที่เรียนรู้ระหว่างการฝึกฝน แนวคิดพื้นฐานนี้อธิบายได้ทั้งความสามารถที่ยอดเยี่ยมและข้อผิดพลาดส่วนใหญ่ที่เกิดขึ้น

เมื่อคุณพิมพ์คำถามลงในแชท Llama ไม่ได้ไปค้นหาคำตอบจากที่ไหน แต่จะเขียนคำตอบขึ้นมาทีละส่วนเล็ก ๆ โดยอิงจากรูปแบบที่เรียนรู้มาระหว่างการฝึกฝน การเข้าใจหลักการง่าย ๆ ข้อนี้จะช่วยอธิบายว่าทำไมโมเดลภาษาขนาดใหญ่ (LLM) ถึงทำบางสิ่งได้ดีมาก และทำไมถึงยังตอบผิดพลาดในหลายเรื่อง คู่มือนี้จะพาคุณไปทำความเข้าใจการทำงานของโมเดลเหล่านี้โดยไม่ต้องพึ่งพาคณิตศาสตร์เลยแม้แต่น้อย โดยใช้โมเดล Llama ในแชทของเราเป็นตัวอย่าง
โทเคน (Token): วิธีที่โมเดลอ่านข้อความ
โมเดลภาษาไม่ได้มองเห็นเป็นตัวอักษรหรือคำเต็ม ๆ แต่ข้อความจะถูกแยกออกเป็นโทเคน (tokens) คำที่พบบ่อยมักจะเป็น 1 โทเคน ส่วนคำที่ยาวหรือพบได้ยากจะถูกตัดออกเป็นหลายส่วน รวมถึงเครื่องหมายวรรคตอนต่าง ๆ ด้วย จากนั้นแต่ละโทเคนจะถูกแปลงเป็นชุดตัวเลขเพื่อให้โมเดลนำไปคำนวณต่อได้
โทเคนช่วยอธิบายพฤติกรรมแปลก ๆ บางอย่างได้ เช่น ถ้าคุณขอให้โมเดลนับว่ามีตัวอักษร "r" กี่ตัวในคำยาว ๆ หรือให้สะกดคำแบบย้อนกลับ โมเดลก็อาจจะตอบผิด เพราะตั้งแต่แรกมันไม่เคยมองเห็นตัวอักษรแยกเป็นตัว ๆ นอกจากนี้ โทเคนยังเป็นเหตุผลว่าทำไมข้อจำกัดต่าง ๆ (เช่น โมเดลอ่านข้อความได้มากแค่ไหน หรือคำตอบยาวได้เท่าใด) ถึงวัดกันเป็นโทเคนแทนที่จะเป็นคำ ภาษาที่ต้องใช้จำนวนโทเคนต่อประโยคมากกว่าจึงถึงขีดจำกัดเหล่านี้ได้เร็วกว่า
การคาดการณ์: ทีละโทเคน
โดยเนื้อแท้แล้ว LLM ทำงานเพียงอย่างเดียว คือ เมื่อดูจากข้อความทั้งหมดที่มีอยู่ก่อนหน้า มันจะประเมินความน่าจะเป็นของโทเคนถัดไปที่เป็นไปได้ จากนั้นเลือกมา 1 โทเคน นำไปต่อท้ายข้อความเดิม แล้วทำซ้ำกระบวนการนี้ไปเรื่อย ๆ คำตอบยาว ๆ จึงเกิดจากการทำขั้นตอนนี้ซ้ำหลายร้อยหรือหลายพันครั้ง
แต่โมเดลไม่ได้เลือกโทเคนที่น่าจะเป็นไปได้มากที่สุดเสมอไป มีการใส่การสุ่มแบบควบคุมไว้เล็กน้อย ซึ่งมักกำหนดโดยค่าพารามิเตอร์ที่เรียกว่า temperature เพื่อให้คำตอบมีความหลากหลายและดูเป็นธรรมชาติ นั่นคือเหตุผลที่คำถามเดิมอาจได้สำนวนภาษาต่างกันในแต่ละครั้ง และการกดสร้างคำตอบใหม่ (regenerate) อาจช่วยให้ได้คำตอบที่ดีกว่าเดิม
การฝึกฝน: จากตัวทำนายข้อความสู่ผู้ช่วยอัจฉริยะ
Pre-training (การฝึกฝนขั้นต้น)
เริ่มแรก โมเดลจะอ่านข้อความจำนวนมหาศาลและเรียนรู้ที่จะทำนายโทเคนถัดไป ข้อมูล Model Card ของ Meta ระบุว่าข้อมูลพรีเทรนของ Llama 3.3 และ 3.1 เป็น "ชุดข้อมูลออนไลน์ที่เปิดเผยต่อสาธารณะที่ผสมผสานขึ้นใหม่" ซึ่งมีมากกว่า 15 ล้านล้านโทเคน ส่วน Llama 4 ได้รับการฝึกจากข้อมูลสาธารณะ ข้อมูลลิขสิทธิ์ และข้อมูลจากผลิตภัณฑ์ของ Meta รวมกันประมาณ 40 ล้านล้านโทเคนสำหรับ Scout และ 22 ล้านล้านโทเคนสำหรับ Maverick ตลอดกระบวนการนี้ โมเดลจะซึมซับไวยากรณ์ ข้อเท็จจริง ลีลาการเขียน โค้ด และรูปแบบการใช้เหตุผล เพราะสิ่งเหล่านี้ช่วยให้มันทำนายได้แม่นยำยิ่งขึ้น
Instruction tuning (การปรับแต่งตามคำสั่ง)
ตัวทำนายข้อความเปล่า ๆ ทำได้แค่นำคำมาต่อกันไปเรื่อย ๆ แต่ยังไม่สามารถตอบคำถามอย่างเป็นประโยชน์ได้ โมเดลจึงต้องผ่านการฝึกฝนเพิ่มเติมด้วยตัวอย่างคำสั่งพร้อมคำตอบที่ดี รวมถึงฟีดแบ็กจากมนุษย์ว่าคำตอบใดดีกว่ากัน ข้อมูล Model Card สำหรับ Llama 3.x ของ Meta เรียกขั้นตอนนี้ว่า Supervised Fine-Tuning (SFT) และ Reinforcement Learning with Human Feedback (RLHF) ผลลัพธ์ที่ได้ก็คือเวอร์ชัน "Instruct" ที่คุณกำลังคุยด้วยอยู่นั่นเอง
จุดตัดของความรู้ (Knowledge cut-off)
ข้อมูลที่ใช้ฝึกฝนจะสิ้นสุดลง ณ วันที่ใดวันหนึ่ง และโมเดลจะไม่รู้อะไรเลยหลังจากนั้น ตามข้อมูล Model Card ของ Meta จุดตัดความรู้ของ Llama 4 Maverick และ Scout อยู่ที่เดือนสิงหาคม 2024 ส่วน Llama 3.3 70B และ Llama 3.1 8B อยู่ที่เดือนธันวาคม 2023 หากคุณถามถึงสิ่งที่เกิดขึ้นหลังจากนั้น โมเดลจะบอกว่าไม่รู้ หรือแย่กว่านั้นคือเดาคำตอบขึ้นมาเอง แชทของเราไม่สามารถเชื่อมต่ออินเทอร์เน็ตเพื่อดึงข้อมูลล่าสุดมาอุดช่องว่างตรงนี้ได้
บริบท (Context): หน่วยความจำชั่วคราวของโมเดล
ทุกสิ่งที่โมเดลนำมาพิจารณาขณะเขียนคำตอบ (คำสั่งระบบ, ประวัติการสนทนาที่ผ่านมา และข้อความใหม่ของคุณ) เรียกว่าบริบท (context) โมเดลจะไม่มีความทรงจำใด ๆ นอกเหนือจากบริบทนี้ เมื่อคุณเปิดแชทใหม่ โมเดลจะไม่รู้อะไรเลยเกี่ยวกับสิ่งที่คุณเคยคุยไว้ก่อนหน้านี้
ขนาดสูงสุดที่รับได้เรียกว่าหน้าต่างบริบท (context window) ซึ่งวัดเป็นหน่วยโทเคน ข้อมูล Model Card ของ Meta ระบุว่า Llama 3.3 และ 3.1 รับได้ 128K โทเคน, Llama 4 Maverick รับได้ 1M และ Llama 4 Scout รับได้ 10M ส่วนผู้ให้บริการที่เราใช้นั้นรองรับประมาณ 524K สำหรับ Maverick และประมาณ 1.3M สำหรับ Scout ทั้งนี้ แชทของเราจะส่งข้อความเพียงบางส่วนของการสนทนาไปประมวลผลเพื่อให้ตอบกลับได้รวดเร็ว ซึ่งเป็นเหตุผลว่าทำไมข้อความแรก ๆ ในบทสนทนาที่ยาวมาก ๆ อาจหมดอิทธิพลต่อคำตอบในภายหลังได้
Mixture of Experts: โครงสร้างภายในของ Llama 4
โมเดลตระกูล Llama 3 เป็นแบบ Dense กล่าวคือจะเรียกใช้ทุกพารามิเตอร์ (ชุดตัวเลขที่เรียนรู้ภายในโมเดล) ในทุก ๆ โทเคน แต่ Llama 4 เปลี่ยนมาใช้สถาปัตยกรรมแบบ Mixture of Experts (MoE) แทน ภายในโมเดลจะประกอบด้วยเครือข่ายย่อยเฉพาะทางจำนวนมากที่เรียกว่า Experts และในแต่ละโทเคนจะมีเพียงบาง Experts เท่านั้นที่ถูกเรียกใช้งาน ข้อมูล Model Card ของ Meta ระบุตัวเลขไว้ว่า Llama 4 Scout มีพารามิเตอร์ที่ทำงานจริง (active) 17 พันล้านตัว จากทั้งหมด 109 พันล้านตัว โดยมี 16 experts ส่วน Llama 4 Maverick มีพารามิเตอร์ที่ทำงานจริง 17 พันล้านตัว จากทั้งหมด 400 พันล้านตัว พร้อม 128 experts ข้อดีคือโมเดลสามารถจุความรู้ได้มหาศาล แต่ใช้ต้นทุนในการประมวลผลต่อโทเคนน้อยกว่าโมเดลแบบ Dense ที่มีขนาดรวมเท่ากัน
นอกจากนี้ Llama 4 ยังเป็นแบบ Natively Multimodal โดย Meta อธิบายว่าเป็นแบบ "Early Fusion" ที่ข้อความและรูปภาพจะถูกประมวลผลร่วมกันในโมเดลเดียว ไม่ได้ใช้โมดูลอื่นมาต่อเติมภายหลัง นั่นคือเหตุผลที่ Maverick และ Scout สามารถตอบคำถามเกี่ยวกับรูปภาพที่คุณแนบไปได้ ในขณะที่ Llama 3 ซึ่งรองรับเฉพาะข้อความไม่สามารถทำได้
ทำไมโมเดลถึงชอบ "มโน" ข้อมูลขึ้นมาเอง
โมเดลภาษาถูกฝึกมาเพื่อสร้างข้อความที่ฟังดูน่าเชื่อถือ ไม่ได้ถูกฝึกมาเพื่อตรวจสอบว่าข้อความนั้นถูกต้องตามความเป็นจริงหรือไม่ เมื่อเป็นข้อเท็จจริงที่มันเรียนรู้มาเป็นอย่างดี สิ่งที่น่าเชื่อถือกับความจริงก็จะตรงกัน แต่เมื่อเป็นเรื่องที่มันไม่รู้จริง (เช่น ชื่อเฉพาะที่ไม่ค่อยมีใครรู้จัก, ตัวเลขที่แน่นอน, เหตุการณ์ที่เพิ่งเกิดขึ้น หรือเอกสารอ้างอิง) มันก็ยังคงสร้างข้อความที่ฟังดูเข้าท่าขึ้นมาอยู่ดี ภาวะนี้มักเรียกว่าอาการประสาทหลอน (hallucination) ซึ่งไม่ได้แปลว่าโมเดลจงใจโกหก แต่เป็นเพราะมันไม่มีฐานข้อมูลข้อเท็จจริงแยกต่างหากไว้ให้ตรวจสอบ
- ตัวเลขที่แน่นอน วันที่ ข้อความคำพูด และการอ้างอิง มักเป็นจุดที่มีโอกาสผิดพลาดมากที่สุด
- การถามย้ำว่า "แน่ใจไหม?" อาจทำให้โมเดลแก้คำตอบ หรือแม้กระทั่งขอโทษในสิ่งที่ตัวเองตอบถูกไปแล้ว จึงไม่ใช่วิธีตรวจสอบที่เชื่อถือได้
- การใส่ข้อความต้นฉบับให้โมเดลอ่าน แล้วสั่งให้ตอบโดยอ้างอิงจากข้อความนั้นเท่านั้น มักช่วยลดข้อผิดพลาดได้มาก
คุณจะเห็นความแตกต่างได้ชัดเจนจากตัวอย่างคำสั่ง 2 แบบนี้:
ตอบจากความจำ (เสี่ยงผิดพลาดมากกว่า): ห้องสมุดประชาชนใน [เมืองของฉัน] ก่อตั้งขึ้นเมื่อใด และใครเป็นผู้สนับสนุนงบประมาณ? ตอบจากแหล่งข้อมูล (ปลอดภัยกว่า): ให้ใช้เฉพาะข้อมูลจากข้อความด้านล่างนี้เท่านั้น แล้วตอบว่าห้องสมุดก่อตั้งขึ้นเมื่อใดและใคร เป็นผู้สนับสนุนงบประมาณ หากในข้อความไม่ได้ระบุไว้ ให้ตอบว่า "ไม่ได้ระบุ" """ [วางย่อหน้าจากเว็บไซต์ของห้องสมุดนั้นที่นี่] """
ในกรณีแรก โมเดลน่าจะเคยเห็นข้อมูลเกี่ยวกับห้องสมุดท้องถิ่นของคุณน้อยมากหรือแทบไม่เคยเห็นเลย จึงอาจเดาคำตอบขึ้นมาอย่างมั่นใจ แต่ในกรณีที่สอง ข้อเท็จจริงอยู่ในบริบทเรียบร้อยแล้ว โมเดลมีหน้าที่แค่อ่านทำความเข้าใจเท่านั้น เครื่องมือสรุปข้อความของเราก็ทำงานด้วยหลักการเดียวกันนี้ คือตอบโดยอ้างอิงจากข้อความที่คุณป้อนให้
คู่มือการตรวจสอบความถูกต้องของคำตอบจาก AI ของเราได้รวบรวมวิธีเหล่านี้นำไปปรับใช้จริงทีละขั้นตอน
สิ่งที่ควรจำไว้เมื่อใช้งานแชท
| การทำงานของโมเดล | สิ่งที่คุณควรทำ |
|---|---|
| ทำนายคำจากรูปแบบ ไม่ได้เปิดค้นข้อมูล | ตรวจเช็กข้อเท็จจริงในเรื่องที่สำคัญเสมอ |
| รู้เฉพาะข้อมูลที่อยู่ในบริบทเท่านั้น | วางเนื้อหาและข้อมูลแวดล้อมที่จำเป็นลงไปด้วย |
| ความรู้มีจุดสิ้นสุด เชื่อมต่อเว็บไม่ได้ | ใช้แหล่งข้อมูลปัจจุบันสำหรับข่าวสาร ราคา และข้อกฎหมาย |
| มีความสุ่มอยู่ในทุกคำตอบเล็กน้อย | กดสร้างคำตอบใหม่เพื่อเปรียบเทียบแต่ละเวอร์ชัน |
| ไม่มีความทรงจำข้ามห้องแชท | ระบุความต้องการของคุณใหม่ทุกครั้งที่เปิดแชทใหม่ |
| อ่านเป็นโทเคน ไม่ใช่อักษรทีละตัว | อย่าหวังพึ่งโมเดลในการนับตัวอักษรหรือจำกัดจำนวนตัวอักษรเป๊ะ ๆ |
หากอยากเห็นการทำงานเหล่านี้ด้วยตาตัวเอง ลองถาม Llama ให้อธิบายการทำงานของมันดู หากต้องการเรียนรู้เทคนิคการสั่งงาน โปรดอ่านวิธีเขียนพรอมต์ หรือหากต้องการรู้จักตัวโมเดลเพิ่มเติม ลองดูว่าLlama คืออะไร และประวัติความเป็นมาของตระกูล Llama
คำถามที่พบบ่อย (FAQ)
Llama เข้าใจสิ่งที่ตัวเองพูดจริง ๆ ไหม?
เรื่องนี้ขึ้นอยู่กับว่าคุณนิยามคำว่า "เข้าใจ" ไว้อย่างไร ซึ่งนักวิจัยเองก็ยังมีความเห็นไม่ตรงกัน ในทางปฏิบัติ มันจับใจความได้ดีพอที่จะสรุปความ แปลภาษา และคิดวิเคราะห์แก้ปัญหาต่าง ๆ ได้มากมาย แต่บางครั้งกลับตกม้าตายในเรื่องง่าย ๆ ที่เด็กยังรู้ ดังนั้น ควรประเมินโมเดลจากการตรวจสอบความถูกต้องของงาน ไม่ใช่ตัดสินจากความลื่นไหลของสำนวนภาษา
โมเดลได้เรียนรู้จากบทสนทนาของฉันไหม?
ไม่ได้เรียนรู้ พารามิเตอร์ภายในของโมเดลจะไม่มีการเปลี่ยนแปลงระหว่างที่คุณแชท ภายในบทสนทนาเดียวกัน มันจะนำสิ่งที่คุณพูดมาใช้เป็นบริบทเท่านั้น และเมื่อคุณเริ่มแชทใหม่ บริบทนั้นก็จะหายไปทันที
Llama กับ ChatGPT ต่างกันอย่างไร?
ทั้งคู่ทำงานด้วยโมเดลภาษาขนาดใหญ่ที่พัฒนาขึ้นบนหลักการที่คล้ายกัน โดย Llama เป็นตระกูลโมเดลที่พัฒนาโดย Meta และเปิดให้ใช้งานแบบ Open Weights ภายใต้สัญญาอนุญาตของ Meta ทำให้ทุกคนสามารถดาวน์โหลดไปรันใช้งานเองได้ ส่วน ChatGPT เป็นแอปของ OpenAI ซึ่งรันโมเดลของ OpenAI ในรูปแบบบริการสำเร็จรูป (Hosted Service) อ่านเพิ่มเติมได้ที่ Llama vs ChatGPT
พารามิเตอร์ (Parameters) คืออะไร?
พารามิเตอร์คือชุดตัวเลขภายในโมเดลที่ถูกปรับแต่งในระหว่างการฝึกฝน ยิ่งมีพารามิเตอร์มาก โมเดลก็ยิ่งจดจำรูปแบบต่าง ๆ ได้มากขึ้น แต่ก็ต้องใช้พลังในการประมวลผลสูงขึ้นตามไปด้วย ทั้งนี้ ขนาดของโมเดลเพียงอย่างเดียวไม่ได้เป็นตัวตัดสินคุณภาพ ข้อมูลที่ใช้ฝึกฝนและการปรับจูนก็มีความสำคัญมากเช่นกัน
ทำไมบางโมเดลถึงรับรูปภาพได้ แต่บางโมเดลทำไม่ได้?
Llama 4 Maverick และ Scout ได้รับการฝึกฝนด้วยข้อความและรูปภาพมาพร้อม ๆ กัน ส่วน Llama 3.3 70B และ Llama 3.1 8B เป็นโมเดลที่รองรับเฉพาะข้อความ จึงไม่สามารถมองเห็นรูปภาพได้ ทั้งนี้ คู่มือการเลือกโมเดล Llama ให้เหมาะกับการใช้งานของเรามีเปรียบเทียบคุณสมบัติของทั้ง 4 โมเดลไว้อย่างละเอียด
เริ่มถามคำถามแรกกับ Llama
ไม่ต้องสมัครบัญชีและไม่ต้องติดตั้งอะไรเพิ่มเติม เพียงเปิดหน้าแชท พิมพ์ข้อความ แล้วสัมผัสความสามารถของ Llama ได้ทันที
เปิดแชท Llama

