- Tokenizer เป็นองค์ประกอบที่สำคัญและถูกใช้งานอย่างมากของโมเดลภาษาขนาดใหญ่ (LLM) ทำหน้าที่แปลงระหว่างสตริงกับโทเค็น (ชิ้นส่วนของข้อความ)
- Tokenizer เป็นขั้นตอนที่แยกออกจากกันโดยสิ้นเชิงในไปป์ไลน์ของ LLM:
- มีชุดข้อมูลฝึกและอัลกอริทึมการฝึกของตัวเอง (Byte Pair Encoding)
- หลังการฝึก จะทำงานพื้นฐาน 2 อย่าง:
- แปลงจากสตริงเป็นโทเค็นด้วย
encode(),
- และแปลงจากโทเค็นกลับเป็นสตริงด้วย
decode()
- ในบทเรียนนี้จะลองสร้าง Tokenizer ที่ใช้ในซีรีส์ GPT ของ OpenAI ขึ้นมาตั้งแต่ต้น
- ระหว่างทาง คุณจะได้รู้ว่าพฤติกรรมแปลก ๆ และปัญหาหลายอย่างของ LLM แท้จริงแล้วเกิดจากการทำโทเค็นไนซ์
- จะสำรวจปัญหาเหล่านี้ และอภิปรายว่าทำไมการทำโทเค็นไนซ์จึงเป็นต้นเหตุของปัญหา และทำไมจึงควรมีใครสักคนหาวิธีลบขั้นตอนนี้ออกไปทั้งหมด
2 ความคิดเห็น
ความคิดเห็นจาก Hacker News
วิดีโอเกี่ยวกับการสร้าง GPT nano ของ Andrej Karpathy เป็นบทสอนที่อธิบายทุกขั้นตอนที่จำเป็นสำหรับการพัฒนา Large Language Models (LLM) สมัยใหม่ได้อย่างยอดเยี่ยม
Andrej Karpathy พูดเร็วมากจนต้องเช็กความเร็วการเล่น รู้สึกเหมือนพูดที่ความเร็ว 1.25x
ต่อให้ยอมจ่ายเงิน ก็หาเนื้อหาคุณภาพสูงแบบนี้ได้ยาก
สำหรับคำพูดที่ว่า "เมื่อมันเป็นไข่ของจักรวาล มันคือโทเค็นเดี่ยว" ก็ไม่แน่ใจว่าลูกเรือของยาน 'Nostromo' จะเห็นด้วยหรือไม่ (ส่วนนี้เป็นมุกที่อ้างถึงยานอวกาศ 'Nostromo' จากภาพยนตร์เรื่อง 'Alien' และต้องมีความรู้พื้นฐานเกี่ยวกับภาพยนตร์ดังกล่าวจึงจะเข้าใจบริบทของคอมเมนต์ได้ทั้งหมด)
สรุปข้างต้นเขียนขึ้นโดยสรุปแต่ละคอมเมนต์อย่างเป็นกลางด้วยประโยคที่ลงท้ายแบบคำนาม และเพิ่มความรู้พื้นหลังอย่างกระชับเพื่อให้วิศวกรซอฟต์แวร์ระดับเริ่มต้นก็เข้าใจได้
ดูเหมือนว่าพรอมป์ต์จะเป็นประมาณว่า "ช่วยสรุปแต่ละคอมเมนต์ให้เป็นประโยคที่เป็นกลางและลงท้ายแบบคำนาม พร้อมทั้งเพิ่มความรู้พื้นฐานอย่างกระชับเพื่อให้วิศวกรซอฟต์แวร์ระดับเริ่มต้นก็เข้าใจได้"