Feyn AI เปิดตัว SQRL โมเดล Text-to-SQL สายพันธุ์ใหม่ ตรวจสอบฐานข้อมูลจริงก่อนเขียน Query

Feyn AI เปิดตัว SQRL โมเดล Text-to-SQL สายพันธุ์ใหม่ ตรวจสอบฐานข้อมูลจริงก่อนเขียน Query

ระบบ text-to-SQL ส่วนใหญ่มักมองว่างานนี้คือการแปลภาษา แต่ Feyn AI สตาร์ทอัพที่ได้รับการสนับสนุนจาก YC ได้ปรับมุมมองใหม่โดยเน้นไปที่การตรวจสอบ ทีม Feyn ได้เปิดตัว SQRL ตระกูลโมเดลที่เปลี่ยนคำถามภาษาธรรมชาติให้เป็น SQL แทนที่จะสร้างคำสั่ง query ออกมาทันที SQRL จะทำการตรวจสอบฐานข้อมูลก่อนเพื่อแก้ปัญหาความกำกวมและเขียนเฉพาะคำสั่งที่สอดคล้องกับข้อมูลจริงเท่านั้น

ทีม Feyn รายงานว่ารุ่นเรือธง SQRL-35B-A3B มีความแม่นยำในการรันคำสั่ง (execution accuracy) อยู่ที่ 70.6% บน BIRD Dev ซึ่งเฉือนชนะ Claude Opus 4.6 ที่ทำไว้ 68.77% ภายใต้การประเมินเดียวกัน โดยมีการปล่อย checkpoint สามรุ่นแบบเปิดบน Hugging Face ได้แก่ SQRL-4B, SQRL-9B และ SQRL-35B-A3B

คำสั่ง Query อาจเป็น SQL ที่ถูกต้องแต่ยังให้คำตอบที่ผิด

Text-to-SQL มักถูกเข้าใจว่าเป็นปัญหาด้านการแปล แต่กรอบความคิดนี้มองข้ามส่วนที่ยากที่สุดไป เพราะคำสั่งหนึ่งอาจเป็น SQL ที่ถูกต้องตามหลักไวยากรณ์ทุกประการแต่ยังคงส่งคืนคำตอบที่ผิด เช่น การจอย (join) ตารางผิด, อ่านคอลัมน์ที่กำกวมไม่ถูกต้อง หรือการกรองหาค่าที่ไม่มีอยู่จริง ซึ่งข้อผิดพลาดเชิงตรรกะเหล่านี้จะไม่แสดง error ออกมา ทำให้ยากต่อการตรวจพบจากการรันคำสั่งเพียงอย่างเดียว

แม้แต่ข้อมูลฟอร์แมตของตารางหรือ Schema ก็ไม่สามารถป้องกันความผิดพลาดนี้ได้ทั้งหมด เนื่องจาก Schema ระบุเพียงรายชื่อตารางและประเภทข้อมูล แต่ไม่ได้บอกลึกถึงรายละเอียดของข้อมูลภายใน เช่น ชื่อจังหวัดอาจถูกเก็บในรูปแบบ Alameda, Alameda County หรือ ALAMEDA และไม่สามารถบอกได้ว่าการจอยข้อมูลแบบใดจะทำให้เกิดแถวซ้ำ

BIRD benchmark ช่วยให้ข้อผิดพลาดเหล่านี้สามารถวัดผลได้ชัดเจนขึ้น เนื่องจากครอบคลุมฐานข้อมูลในโลกจริงที่มีความซับซ้อน โดยระบบจะให้คะแนนจากการรัน SQL และเปรียบเทียบผลลัพธ์กับค่าอ้างอิง ข้อมูลเชิงลึกจาก Feyn ชี้ให้เห็นว่าความถูกต้องทางไวยากรณ์นั้นไม่เพียงพอ และโมเดลจำเป็นต้องได้รับอนุญาตให้สำรวจฐานข้อมูลเพื่อเติมเต็มข้อมูลที่ขาดหายไป

SQRL ตรวจสอบก่อนจะให้คำตอบ

กระบวนการทำงานของ SQRL เริ่มจากการรับคำถามและ Schema หากข้อมูลเพียงพอจะส่งคำสั่ง query ทันที แต่หากมีความกวม โมเดลจะรัน query แบบอ่านอย่างเดียวและใช้ข้อมูลที่ได้มาร่างคำตอบสุดท้าย การตัดสินใจเข้าตรวจสอบนี้ขึ้นอยู่กับความซับซ้อนของสถานการณ์ เช่น การนับจำนวนแถวทั่วไปอาจไม่ต้องค้นหาข้อมูลเพิ่มเติม SQRL จึงจะตอบโดยตรง

ระบบใช้การโต้ตอบผ่านสองแท็กหลัก คือ บล็อก <sql> สำหรับขอเรียกดูข้อมูลสังเกตการณ์จากฐานข้อมูล และบล็อก <answer> สำหรับส่งคำสั่ง query ขั้นสุดท้าย โดยระบบจะรันในโหมดอ่านอย่างเดียวและส่งข้อมูลคืนภายในแท็ก <observation> ซึ่ง SQRL สามารถตรวจสอบได้สูงสุดห้าครั้งก่อนสรุปผล

โมเดลเดียวที่รวมกลยุทธ์แบบดั้งเดิมเข้าด้วยกัน

ในอดีต Text-to-SQL มักเลือกทางใดทางหนึ่งระหว่างโมเดลแบบ Single-shot ที่สร้าง query รวดเดียวซึ่งมีค่าใช้จ่ายต่ำแต่เสี่ยงต่อความผิดพลาด กับระบบ Frontier pipelines ที่ใช้การดึงบริบทและเรียกใช้โมเดลหลายครั้งเพื่อเพิ่มความแม่นยำแต่มีราคาสูงและใช้เวลานาน

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

การฝึกการตัดสินใจเพื่อเข้าตรวจสอบ เพื่อให้โมเดลรู้ว่าควรตรวจสอบเมื่อใด ทีม Feyn ได้ใช้กระบวนการฝึกฝนที่เข้มงวด โดยเริ่มจากการทำความสะอาดข้อมูลจาก BIRD และ Spider เพื่อตัด SQL ที่ให้ผลลัพธ์ผิดพลาดออก จากนั้นใช้โมเดลตัดสินสามตัวคัดกรองคู่คำถาม-คำตอบที่ตรงประเด็นที่สุดก่อนจะนำไปใช้ฝึกฝนจริง

โมเดลหลัก SQRL-35B-A3B ถูกฝึกด้วยวิธี CISPO ซึ่งเป็นเทคนิค Reinforcement Learning จากงานวิจัย M1 ของ MiniMax ที่ช่วยรักษา gradient signal จากข้อมูลสำคัญที่พบยาก ในแต่ละคำถามโมเดลจะสร้างผลลัพธ์แปดรูปแบบ และให้รางวัลเฉพาะผลลัพธ์ที่รันออกมาตรงกับค่าอ้างอิงเท่านั้น เพื่อสอนให้โมเดลแยกแยะเส้นทางการตัดสินใจที่ถูกต้อง

ทีมงานยังได้ทำการกลั่นกรอง (distillation) พฤติกรรมจากโมเดลหลักมาสู่รุ่นเด็กอย่าง SQRL-4B และ 9B โดยการสุ่มตัวอย่าง trajectory ที่ถูกต้องกว่า 10,200 รายการมาทำการ fine-tuned ซึ่งโมเดลตระกูล SQRL พัฒนาขึ้นโดยต่อยอดจากโครงสร้าง Qwen3.5 และ Qwen3.6

ประสิทธิภาพและหมายเหตุการใช้งาน

จากการประเมินบน BIRD Dev พบว่า SQRL-35B-A3B ทำคะแนนได้ 70.60% ขณะที่รุ่นนักเรียน 9B ทำได้ 69.80% และรุ่นเล็ก 4B ทำได้ 68.80% ซึ่งเทียบเท่ากับ Claude 3.5 Opus โมเดลทั้งหมดมีขนาดเล็กพอที่จะโฮสต์เองได้ ทำให้รักษาความปลอดภัยของข้อมูล Schema และคำสั่ง Query ให้อยู่ภายใต้โครงสร้างพื้นฐานของผู้ใช้เอง

สำหรับการติดตั้งใช้งาน Feyn แนะนำให้รันผ่าน vLLM ด้วยคำสั่ง:

vllm serve feyninc/sqrl-9b \
--served-model-name sqrl-9b \
--gpu-memory-utilization 0.90 \
--max-model-len 32768

ข้อควรระวังสำคัญคือห้ามเปิดตัวแยกการใช้เหตุผล (reasoning parser) ในระดับการให้บริการ เพราะแท็ก <sql> หรือ <answer> จะปรากฏหลังแท็ก </think> หากถูกตัดออกจะทำให้ระบบไม่ทำงาน ซึ่งใน model card จะมีข้อมูลพรมพต์ระบบและชุดคำสั่งอ้างอิงให้ศึกษาเพิ่มเติม

ประเด็นสำคัญ

  • SQRL คือโมเดล text-to-SQL ที่ตรวจสอบฐานข้อมูลแบบอ่านอย่างเดียวก่อนสรุปคำสั่งสุดท้าย
  • รุ่นเรือธง SQRL-35B-A3B ทำความแม่นยำ 70.6% บน BIRD Dev สูงกว่า Claude Opus 4.6
  • มีรุ่นที่กลั่นกรองให้เล็กลง (4B และ 9B) ให้เลือกใช้ โดยรุ่น 4B ยังให้ผลลัพธ์ในระดับแนวหน้า
  • ฝึกฝนด้วยวิธี CISPO และ Reinforcement Learning ที่เน้นผลลัพธ์จากการรันคำสั่งจริง
  • รองรับการใช้งานผ่าน vLLM และเปิดให้ดาวน์โหลด checkpoint ได้บน Hugging Face
  • ติดตามทีมพัฒนาได้ผ่าน GitHub, Hugging Face และ X
Source: MarkTechPost
ดูแลงานแปลและเรียบเรียงโดย NatapolK

ความคิดเห็น (0)

เข้าสู่ระบบเพื่อร่วมแสดงความเห็น

สมัครสมาชิก

มาเป็นคนแรกที่แสดงความเห็นกันเลยโบร