นักพัฒนาได้นำโมเดลภาษาขนาด 350 ล้านพารามิเตอร์มาทำการ fine-tune และนำไปใช้งานในรูปแบบผู้ช่วย AI ที่ทำงานได้อย่างสมบูรณ์ภายในเว็บเบราว์เซอร์สมัยใหม่ทุกตัว โดยไม่ต้องเรียกใช้เซิร์ฟเวอร์ ไม่ต้องใช้ API key และไม่มีค่าใช้จ่ายคลาวด์

โปรเจกต์นี้มาพร้อมกับน้ำหนักของโมเดล (model weights) ในรูปแบบหน้าเว็บสแตติก (static webpage) ช่วยให้เอเจนต์สามารถเลือกเครื่องมือ (tools), ผูกอาร์กิวเมนต์ (bind arguments), ตีความการอ้างอิงอย่างเช่น “อันที่สอง” และปฏิเสธที่จะตอบเมื่อขาดข้อมูล ทั้งหมดนี้เกิดขึ้นโดยที่ข้อมูลของคุณยังคงอยู่บนอุปกรณ์ของคุณเอง

วิธีการสร้างเอเจนต์บนเบราว์เซอร์

จุดเริ่มต้นคือตระกูล LFM2.5 ของ LiquidAI โดยเฉพาะรุ่นที่มีพารามิเตอร์ขนาด 230 ล้าน และ 350 ล้าน

แทนที่จะยัดข้อมูลแคตตาล็อกสินค้าหรือตารางราคาลงไปในโมเดล ผู้ฝึกสอน (trainer) ได้สอนให้โมเดลเรียนรู้ รูปแบบ (patterns) ของการโต้ตอบ เอเจนต์จะไม่รู้จัก SKU เฉพาะเจาะจง แต่จะเรียนรู้วิธีการ:

  • เลือกเครื่องมือที่เหมาะสมสำหรับคำขอที่ได้รับ
  • ผูกอาร์กิวเมนต์และตัวระบุ (identifiers) ที่ถูกต้องเข้ากับเครื่องมือนั้น
  • ตีความการอ้างอิงที่กำกวม (เช่น “หนึ่งโหล”, “อันที่สอง”)
  • ดึงข้อความจากภายนอกมาใช้เพื่อตอบคำถาม
  • ปฏิเสธเมื่อข้อมูลที่จำเป็นขาดหายไป
  • รักษาหัวข้อการสนทนาให้อยู่ในประเด็น

ชุดเครื่องมือถูกกำหนดไว้แบบคงที่ (static) อย่างตั้งใจ ได้แก่ list_items, get_item, search_knowledge, add_to_cart, remove_from_cart, clear_cart, checkout และ navigate การกำหนดรายการเครื่องมือให้คงที่ช่วยป้องกันไม่ให้โมเดลจดจำ ID ของเครื่องมือ และช่วยให้ข้อมูลที่ใช้ในการ fine-tuning มีขนาดเล็ก

ทางเลือกทางวิศวกรรม 3 ประการที่ทำให้ระบบมีน้ำหนักเบา:

  1. รายการเครื่องมือแบบคงที่ (Frozen tool roster) – โมเดลจะเห็นรายการการทำงานที่กำหนดไว้ตายตัว จึงไม่จำเป็นต้องมีคลังคำศัพท์สำหรับชื่อเครื่องมือจำนวนมาก
  2. RAG ในฐานะเครื่องมือ – การสร้างแบบเสริมการสืบค้น (Retrieval-augmented generation หรือ RAG) ทำหน้าที่เหมือนฟังก์ชันอื่นๆ เอเจนต์จะเรียกใช้ search_knowledge เพื่อดึงข้อความ แล้วนำข้อความนั้นใส่ลงในคำตอบโดยตรง ช่วยหลีกเลี่ยงการใช้ไปป์ไลน์การสืบค้นแยกต่างหากซึ่งจะเพิ่มความหน่วง (latency) และภาระการใช้หน่วยความจำ (memory overhead)
  3. การถอดรหัสแบบจำกัดด้วยไวยากรณ์ (Grammar-constrained decoding) – ในระหว่างการสร้างคำตอบ ตัวถอดรหัส (decoder) จะปฏิบัติตามไวยากรณ์ที่เรียบง่ายซึ่งบังคับให้ผลลัพธ์อยู่ในโครงสร้างการเรียกใช้เครื่องมือ (tool-call) ที่ถูกต้อง ข้อจำกัดนี้ช่วยกำจัดโทเคน (tokens) ที่สูญเปล่าและลดคำสั่งที่ผิดรูปแบบ

การฝึกฝนใช้การกลั่นกรองข้อมูลสังเคราะห์ (synthetic data distillation) ผู้เขียนได้กำหนดสูตรการโต้ตอบไว้ 18 รูปแบบ โดยแต่ละรูปแบบจะอธิบายการแลกเปลี่ยนระหว่างผู้ใช้และผู้ช่วยที่เกิดขึ้นทั่วไป โมเดล "ครู" (teacher model) ที่มีขนาดใหญ่กว่าจะเป็นผู้สร้างส่วนที่เป็นภาษาธรรมชาติ ในขณะที่สคริปต์แบบกำหนดค่าตายตัว (deterministic script) จะสร้างรูปแบบการเรียกใช้เครื่องมือที่แม่นยำ การ fine-tuning ใช้โทเคนประมาณ 30 ล้านโทเคน และสามารถรันได้บน GPU เพียงตัวเดียวที่มีหน่วยความจำ 16 GB

ทำไมการทำงานบนอุปกรณ์ (on-device) จึงสำคัญ

  • ความเป็นส่วนตัว (Privacy) – คำสั่ง (prompts) ทั้งหมดของผู้ใช้จะอยู่ในหน่วยความจำของเบราว์เซอร์ ไม่มีการส่งข้อมูลโทรมาตร (telemetry) ออกจากอุปกรณ์ ซึ่งสำคัญมากสำหรับการสอบถามข้อมูลที่ละเอียดอ่อน
  • ความสามารถในการทำงานแบบออฟไลน์ (Offline capability) – เนื่องจากโมเดลถูกแคช (cached) ไว้ในเครื่อง ผู้ช่วยจึงสามารถทำงานได้โดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต ซึ่งเปิดโอกาสสำหรับการทำงานภาคสนามหรือการเดินทาง
  • ต้นทุน (Cost) – การส่งไฟล์โมเดลแบบสแตติกช่วยกำจัดความจำเป็นในการใช้เซิร์ฟเวอร์ประมวลผล (inference servers) ที่ขับเคลื่อนด้วย GPU แบบรายเดือน หรือค่าธรรมเนียม API ต่อการเรียกใช้งาน
  • การเข้าถึง (Accessibility) – การนำทางอินเทอร์เฟซเว็บที่ซับซ้อนด้วยเสียงจะสามารถทำได้บนอุปกรณ์สเปกต่ำ ช่วยขยายขอบเขตของเว็บแอปพลิเคชันไปยังผู้ใช้ที่ต้องพึ่งพาเทคโนโลยีสิ่งอำนวยความสะดวก

ข้อได้เปรียบเหล่านี้เปลี่ยนหัวข้อการสนทนาจาก "โมเดลยักษ์ใหญ่จะตอบคำถามนี้ได้ไหม?" เป็น "โมเดลจะสามารถมีขนาดเล็กได้แค่ไหน ในขณะที่ยังคงให้ความช่วยเหลือที่มีประโยชน์ได้?"

ข้อจำกัดที่อาจเกิดขึ้น

โมเดลขนาดนี้ไม่สามารถจดจำข้อเท็จจริงเชิงสารานุกรมได้ เมื่อผู้ใช้ถามหาราคาผลิตภัณฑ์เฉพาะเจาะจงหรือหัวข้อข่าวล่าสุด ผู้ช่วยจะดึงข้อมูลผ่าน search_knowledge หรือปฏิเสธอย่างสุภาพ การออกแบบเช่นนี้ช่วยปกป้องความเป็นส่วนตัว แต่ก็ทำให้ระบบขึ้นอยู่กับคุณภาพและความสดใหม่ของแหล่งข้อมูลความรู้ภายนอกด้วย

สิ่งที่น่าติดตามต่อไป

เดโมสาธารณะสามารถเข้าชมได้ที่ URL ของ GitHub Pages และซอร์สโค้ดก็เปิดให้ใช้งานได้อย่างอิสระ

บทสรุป: ด้วยการสอนให้ LLM ขนาดพอเหมาะปฏิบัติตามไวยากรณ์เครื่องมือที่เข้มงวด และการปฏิบัติกับการสืบค้นข้อมูลให้เป็นเพียงอีกหนึ่งฟังก์ชัน นักพัฒนาสามารถส่งมอบผู้ช่วย AI ที่มีประโยชน์ซึ่งทำงานภายในเบราว์เซอร์ทั้งหมด โดยมอบความเป็นส่วนตัว การใช้งานแบบออฟไลน์ และไม่มีค่าใช้จ่ายคลาวด์ โดยไม่สูญเสียความสามารถหลักในการสนทนา