
พิมพ์คำค้นว่า 'คลื่นทะเลยามพระอาทิตย์ตก' แล้วระบบดึงขึ้นมาได้ทั้งรูปถ่ายชายหาดตอนเย็นและไฟล์เสียงคลื่นซัดฝั่ง ทั้งที่ไม่มีไฟล์ไหนติดป้ายคำนี้ไว้เลย นี่คือตัวอย่างที่ Google ใช้อธิบายโมเดลตัวใหม่ เพราะระบบค้นหาและผู้ช่วย AI ทุกวันนี้ต้องทำงานกับข้อมูลหลายรูปแบบพร้อมกัน ตั้งแต่เอกสารเทคนิค ซอร์สโค้ด ไปจนถึงรูปภาพ คลิปวิดีโอ และไฟล์เสียง โจทย์ที่ยากคือการหาโมเดลที่ค้นได้แม่น ตอบสนองเร็ว และไม่ต้องพึ่งเซิร์ฟเวอร์ขนาดใหญ่ทั้งตอนรันและตอนจัดทำดัชนีข้อมูล
Google จึงเปิดตัว EmbeddingGemma 2 โมเดล Open-weight ภายใต้สัญญาอนุญาต Apache 2.0 ซึ่งเปิดให้ดาวน์โหลดน้ำหนักโมเดลไปใช้งาน ดัดแปลง และนำไปใช้เชิงพาณิชย์ได้ โมเดลนี้พัฒนาต่อยอดจาก Gemma 4 มีขนาดไม่ถึง 1 พันล้านพารามิเตอร์ แต่แปลงได้ทั้งข้อความ โค้ด ภาพ วิดีโอ และเสียงให้อยู่ในพื้นที่เวกเตอร์ (Vector Space) เดียวกันขนาด 768 มิติ จุดเด่นอีกข้อคือโครงสร้างแบบแยกส่วน ทำให้นักพัฒนาเลือกโหลดเฉพาะส่วนที่ต้องใช้ได้ ตั้งแต่ 270 ล้านพารามิเตอร์สำหรับข้อความและโค้ด ไปจนถึง 740 ล้านพารามิเตอร์เมื่อเปิดครบทุกรูปแบบ
ก่อนจะไปถึงความสามารถใหม่ ต้องเข้าใจก่อนว่า Embedding คือการแปลงเนื้อหาให้กลายเป็นชุดตัวเลขยาว ๆ (เวกเตอร์) ที่เก็บ 'ความหมาย' ของเนื้อหานั้นไว้ เนื้อหาที่มีความหมายใกล้กันจะได้ชุดตัวเลขที่อยู่ใกล้กัน ระบบจึงค้นหาตามความหมายได้ โดยไม่ต้องพึ่งคำที่ตรงกันเป๊ะ เทคนิคนี้เป็นหัวใจของระบบค้นหาสมัยใหม่ และของ Retrieval-Augmented Generation (RAG) ซึ่งเป็นวิธีที่ให้ AI ค้นเอกสารที่เกี่ยวข้องมาอ่านก่อนตอบคำถาม เพื่อให้คำตอบอิงข้อมูลจริงมากขึ้น
ปัญหาเดิมคือข้อมูลแต่ละประเภทมักต้องใช้โมเดลคนละตัว แล้วนำมาต่อกันเป็นทอด ๆ แต่ EmbeddingGemma 2 เปลี่ยนแนวทางนี้ โดยให้ข้อมูลแต่ละประเภทผ่านตัวเข้ารหัส (Encoder) เฉพาะทางของมันก่อน จากนั้นจึงส่งต่อเข้าแกนกลางร่วมกัน ผลลัพธ์ทุกชิ้นจึงไปอยู่ในพื้นที่ 768 มิติเดียวกัน เมื่อเป็นเช่นนั้น คำค้นที่เป็นข้อความจึงนำไปเทียบกับรูปภาพหรือไฟล์เสียงได้ตรง ๆ ว่ามีความหมายใกล้เคียงกันแค่ไหน
โครงสร้างแบบแยกส่วนนี้ประกอบด้วยชิ้นส่วนหลัก 3 ชิ้น ชิ้นแรกคือส่วนข้อความและโค้ดขนาด 270 ล้านพารามิเตอร์ ซึ่งดัดแปลงมาจาก Gemma 4 และรับข้อมูลได้ยาวสูงสุด 8,192 โทเคนต่อครั้ง ชิ้นที่สองคือส่วนภาพที่เพิ่มมาอีก 170 ล้านพารามิเตอร์ รองรับทั้งรูปภาพ เอกสารที่มีภาพประกอบอย่างไฟล์ PDF สไลด์ หรือกราฟ รวมถึงเฟรมจากวิดีโอ ส่วนชิ้นสุดท้ายคือส่วนเสียงอีก 300 ล้านพารามิเตอร์ ที่รับไฟล์เสียงดิบได้โดยตรง ทั้งเสียงพูดและเสียงทั่วไป
นักพัฒนาจึงประกอบโมเดลได้ 4 ขนาดตามลักษณะข้อมูล ได้แก่ 270 ล้านพารามิเตอร์สำหรับข้อความล้วน 440 ล้านพารามิเตอร์เมื่อเพิ่มภาพและวิดีโอ 570 ล้านพารามิเตอร์เมื่อเพิ่มเสียง และ 740 ล้านพารามิเตอร์เมื่อเปิดครบทุกรูปแบบ ส่วนที่ปิดไว้จะไม่ถูกโหลดเข้าหน่วยความจำเลย จึงประหยัดได้ทั้งพื้นที่เก็บน้ำหนักโมเดลและหน่วยความจำช่วงที่ใช้งานหนักที่สุด
ที่สำคัญกว่านั้นคือทั้ง 4 แบบโหลดมาจากไฟล์โมเดลชุดเดียวกัน จึงใช้พื้นที่เวกเตอร์เดียวกันทั้งหมด หมายความว่าคำค้นที่แปลงด้วยเวอร์ชันข้อความล้วน 270 ล้านพารามิเตอร์ ยังนำไปจับคู่กับเอกสารที่แปลงด้วยเวอร์ชันเต็มได้ทันที และถ้าวันหนึ่งองค์กรที่เริ่มจากคลังข้อความอย่างเดียวอยากเพิ่มรูปภาพหรือไฟล์เสียงเข้าไป ก็แค่โหลดโมเดลใหม่โดยเปิดส่วนที่ต้องการ โดยไม่ต้องประมวลผลข้อมูลเดิมซ้ำ
นอกจากนี้ EmbeddingGemma 2 ยังใช้ตัวตัดคำ (Tokenizer) และสถาปัตยกรรมส่วนเสียงแบบเดียวกับ Gemma 4 ดังนั้นเมื่อนำทั้งสองโมเดลมาทำระบบ RAG ที่รันบนอุปกรณ์ด้วยกัน จึงใช้หน่วยความจำรวมน้อยลง
นอกจากการรองรับข้อมูลหลายรูปแบบแล้ว อีกจุดที่ Google ชูคือความเข้าใจโค้ดที่ดีขึ้นชัดเจน โดย EmbeddingGemma 2 ทำคะแนนในชุดทดสอบ Massive Text Embedding Benchmark (MTEB) หมวดโค้ดได้สูงกว่า EmbeddingGemma รุ่นแรก 14% ขณะที่ยังรักษาความแม่นยำด้านข้อความหลายภาษาไว้ได้เท่ารุ่นเดิม และยังเพิ่มความสามารถค้นหาภาพ วิดีโอ และเสียงเข้ามา จุดนี้ทำให้โมเดลเหมาะกับการจัดทำดัชนีโค้ดที่เก็บไว้ในเครื่อง และการให้ AI Agent ค้นหาโค้ดได้เอง
Google สาธิตเรื่องนี้ด้วยการนำซอร์สโค้ดทั้งหมดของไลบรารี transformers จาก Hugging Face มาแปลงเป็น Embedding ด้วยเวอร์ชันข้อความล้วน 270 ล้านพารามิเตอร์ จากนั้นให้ AI Agent ที่ขับเคลื่อนด้วย Gemma 4 26B A4B ผ่านเครื่องมือ Pi Agent Harness ค้นหาในโค้ดขนาดใหญ่นี้ โดยเทียบความหมายของคำถามกับโค้ดแต่ละส่วน แทนการไล่หาคำที่ตรงกัน
เมื่อข้อมูลมีปริมาณมหาศาล ต้นทุนที่ตามมาคือพื้นที่เก็บเวกเตอร์ EmbeddingGemma 2 จึงใช้เทคนิค Matryoshka Representation Learning (MRL) ซึ่งตั้งชื่อตามตุ๊กตาแม่ลูกดกของรัสเซีย แนวคิดคือฝึกโมเดลให้เรียงข้อมูลสำคัญไว้ช่วงต้นของเวกเตอร์ เวลาตัดส่วนท้ายทิ้ง ส่วนที่เหลือจึงยังใช้งานได้ ผู้ใช้เลือกตัดจาก 768 มิติลงเหลือ 512, 256 หรือ 128 มิติได้ โดยมีเงื่อนไขว่าคำค้นกับเอกสารต้องใช้จำนวนมิติเท่ากัน
ตัวเลขที่ Google ยกมาให้เห็นภาพคือ การเก็บเวกเตอร์ 768 มิติจำนวน 1 ล้านชุดในรูปแบบตัวเลข bfloat16 ใช้หน่วยความจำราว 1.5 GB แต่ถ้าตัดเหลือ 128 มิติจะใช้เพียงราว 250 MB ส่วนต่าง 6 เท่านี้ทำให้เก็บข้อมูลได้มากขึ้น 6 เท่าในงบหน่วยความจำเท่าเดิม และช่วยให้ดัชนีขนาดใหญ่อยู่ในหน่วยความจำหรือบนอุปกรณ์ได้ง่ายขึ้น
ถึงอย่างนั้น การตัดมิติก็แลกมากับคุณภาพที่ลดลง Google จึงให้แนวทางเลือกไว้ว่า 768 หรือ 512 มิติเหมาะกับการค้นหาข้ามประเภทข้อมูล (เช่น ใช้ข้อความค้นหารูปภาพหรือไฟล์เสียง) และการค้นเอกสารที่มีภาพประกอบ หรืองานที่ต้องการผลค้นหาครบถ้วนมากกว่าการประหยัดพื้นที่ ส่วน 256 มิติช่วยลดพื้นที่เก็บลง 3 เท่า โดยยังรักษาคุณภาพด้านข้อความและโค้ดไว้ได้เกือบทั้งหมด และราว 95% สำหรับการค้นภาพ วิดีโอ และเสียงพูด
สำหรับ 128 มิติ แม้จะลดพื้นที่เก็บได้ 6 เท่าและยังรักษาคุณภาพด้านข้อความและโค้ดไว้ราว 90% แต่การค้นภาพ วิดีโอ และเสียงพูดจะเหลือคุณภาพราว 75% จึงเหมาะกับคลังข้อความขนาดใหญ่ หรือการคัดผลลัพธ์รอบแรกก่อนส่งไปจัดอันดับซ้ำ (Re-ranking) อย่างละเอียด Google แนะนำให้ทดสอบกับข้อมูลจริงก่อนนำ 128 มิติไปใช้กับการค้นหาข้ามประเภทข้อมูล และสรุปหลักง่าย ๆ ไว้ว่า 'โหลดเฉพาะส่วนที่ข้อมูลต้องใช้ และตัดมิติเฉพาะเมื่อพื้นที่เก็บหรือความเร็วบังคับ'
ในฝั่งการใช้งานจริง นักพัฒนาเรียกใช้ EmbeddingGemma 2 ได้ผ่านไลบรารี sentence-transformers ตั้งแต่เวอร์ชัน 6.1.0 ขึ้นไป โดยโหลดโมเดลจากรหัส google/embeddinggemma-2 และถ้าต้องการปิดส่วนภาพหรือส่วนเสียง ก็แค่กำหนดค่าตอนโหลดโมเดลให้ข้ามส่วนนั้นไป
เนื่องจากโมเดลถูกฝึกมาพร้อมคำสั่งสั้น ๆ ที่บอกว่ากำลังทำงานประเภทไหน การค้นหาจึงควรแปลงคำค้นและเอกสารด้วยคำสั่งต่างกัน คือ SearchQuery สำหรับคำค้น และ Document สำหรับเอกสาร ส่วนไฟล์ภาพ วิดีโอ และเสียง สามารถส่งเข้าไปได้ตรง ๆ โดยไม่ต้องมีคำสั่งกำกับ
ความสามารถที่น่าสนใจกว่านั้นคือการรวมข้อมูลหลายรูปแบบไว้ในเวกเตอร์เดียว เช่น หน้าสินค้ารองเท้าเดินป่ากันน้ำที่มีทั้งคำบรรยาย รูปสินค้า และคลิปทดสอบการยึดเกาะบนหินเปียก นักพัฒนาแค่ใส่ตัวระบุตำแหน่งภาพและวิดีโอแทรกไว้ในข้อความ โมเดลก็จะสร้าง Embedding ชุดเดียวที่สรุปความหมายของทั้งหน้า แล้วนำไปจับคู่กับคำค้นอย่าง 'รองเท้าเดินป่ากันน้ำ' ได้ทันที
ทุกรูปแบบข้อมูลใช้โควตา 8,192 โทเคนต่อครั้งร่วมกัน โดยวิดีโอจะถูกดึงภาพมาวิเคราะห์ 1 เฟรมต่อวินาทีเป็นค่าเริ่มต้น และรับเป็นไฟล์ MP4 ส่วนเสียงควรเป็นแบบโมโน 16 kHz ไฟล์ทั้งหมดส่งเข้าไปได้ทั้งในรูปตำแหน่งไฟล์ ลิงก์ (สำหรับภาพและเสียง) หรือข้อมูลที่โหลดไว้ในหน่วยความจำแล้ว
EmbeddingGemma 2 เปิดให้นักพัฒนาดาวน์โหลดไปใช้งานได้แล้วภายใต้สัญญาอนุญาต Apache 2.0 สำหรับทีมที่กำลังสร้างระบบค้นหาหรือระบบ RAG ที่ต้องรองรับทั้งเอกสาร โค้ด รูปภาพ และเสียง โมเดลขนาดไม่ถึง 1 พันล้านพารามิเตอร์ตัวนี้อาจเป็นทางเลือกที่ทำให้ตัวอย่าง 'คลื่นทะเลยามพระอาทิตย์ตก' เกิดขึ้นได้จริงบนเครื่องของตัวเอง
ที่มา: Google Developers Blog, Google
ลงทะเบียนเข้าสู่ระบบ เพื่ออ่านบทความฟรีไม่จำกัด