Skip to main content

OpenThai-SystemOne

โมเดล System One ภาษาไทย-อังกฤษแบบเปิดที่รันบนโน้ตบุ๊กได้ ไม่เขียน แต่ตัดสินใจ

iapp/OpenThai-SystemOne · 0.8B พารามิเตอร์ · Apache 2.0

ส่ง state (ข้อความหรือ JSON อะไรก็ได้: ticket ฝ่ายสนับสนุน คอมเมนต์ เอกสาร accessibility tree ของหน้าจอ) พร้อม คำถาม เชิงโครงสร้างหนึ่งข้อขึ้นไป โมเดลจะคืนความน่าจะเป็นที่ปรับเทียบแล้วของทุกตัวเลือกในทุกคำถามในการคำนวณรอบเดียว โดยไม่มีโทเคนขาออกเลย คำถามมีสามประเภท: choice (ตัวเลือกที่ตั้งชื่อไว้สูงสุด 255 ตัวเลือก), score (ระดับเรียงลำดับ 2 ถึง 10 ระดับ) และ noul (ใช่หรือไม่)

น้ำหนักโมเดลเปิด เปิดตัว 20 กันยายน 2569 · Apache 2.0

สร้างโดย iApp Technology ร่วมกับชุมชน OpenThaiGPT โมเดลฐาน: ส่วนประมวลผลข้อความของ Qwen3.5-0.8B (Apache 2.0) เทรนต่อด้วยข้อความไทยราว 5 พันล้านโทเคน ข้อมูลเทรน สคริปต์ และคอนฟิกเผยแพร่พร้อมน้ำหนักโมเดล

โมเดล System One คืออะไร

โมเดลภาษาตอบด้วยการสร้างข้อความทีละโทเคน และพูดอะไรก็ได้ รวมถึงตัวเลือกที่คุณไม่เคยให้ โมเดล System One ตอบคำถามเชิงโครงสร้างโดยตรง: หัวโมเดลภาษาถูกแทนที่ด้วยหัวตัดสินใจ 256 ช่อง ทุกตำแหน่งคำตอบถูกฉายลงบนตัวเลือกที่คุณให้ และ softmax ให้การแจกแจง โมเดลจึงตอบตัวเลือกที่ไม่ถูกต้องไม่ได้ แต่ยังผิดได้ นี่คือเหตุผลที่ทุกคำตอบมีค่า confidence ให้คุณใช้ตัดสินใจส่งต่อ

หมวดนี้ริเริ่มโดย TypeSafe AI ด้วย Jev เมื่อ 15 กันยายน 2569 OpenThai-SystemOne คือการสร้างขึ้นใหม่แบบเปิดสำหรับภาษาไทยและอังกฤษ เปิดตัวห้าวันต่อมา พร้อมสถาปัตยกรรม สูตรการเทรน และข้อมูลที่เปิดเผยทั้งหมด รูปแบบ HTTP เหมือนกับ POST /v1/systemone ดังนั้นโค้ด SDK ที่เขียนไว้สำหรับ API นั้นชี้มาที่โมเดลนี้ได้โดยไม่ต้องแก้

หนึ่งคำขอ สามการตัดสินใจ

ticket ฝ่ายสนับสนุนภาษาไทย สามคำถาม หนึ่งการเรียก ผลลัพธ์ที่วัดได้จริงจากโมเดลที่เผยแพร่:

คำถามประเภทคำตอบความมั่นใจ
ทีมใดควรรับผิดชอบchoice (billing, technical, sales)billing, 96.3%0.83
ลูกค้าหงุดหงิดแค่ไหนscore (ใจเย็น, หงุดหงิดแต่สุภาพ, โกรธมาก)1.95 จาก 20.82
ลูกค้าขอเงินคืนอย่างชัดเจนหรือไม่noulP(ใช่) = 0.946

166 โทเคนขาเข้า 0 โทเคนขาออก ไป-กลับผ่านเกตเวย์ 0.23 วินาที คำขอและคำตอบเต็มอยู่ในหน้า API

กรณีใช้งาน

  • จัดเส้นทาง ticket ไปทีมที่ถูกต้อง พร้อมให้คะแนนความเร่งด่วนในคราวเดียว
  • คัดกรองคอมเมนต์: ความเป็นพิษเป็นใช่/ไม่ใช่ ความรู้สึกเป็นตัวเลือก
  • ตรวจว่าคำตอบของ LLM อ้างอิงข้อความที่ค้นมาจริงหรือไม่
  • เลือกองค์ประกอบหน้าจอที่ agent ควรกดถัดไป และควรทำอะไร จาก accessibility tree
  • จัดหมวดเอกสารและฟิลด์ได้สูงสุด 255 หมวดในคำถามเดียว
  • ให้คะแนนรีวิวบนสเกลเรียงลำดับ ได้ค่าเฉลี่ยเป็นทศนิยม ไม่ใช่แค่ป้ายชื่อ

แต่ละงานคือหนึ่งคำขอในหลักสิบมิลลิวินาทีบน GPU เซิร์ฟเวอร์ ธุรกิจไทยตัดสินใจแบบนี้วันละหลายล้านครั้ง และไม่สามารถเรียก LLM เต็มรูปแบบทุกครั้งได้

ประสิทธิภาพ

การตั้งค่าค่าที่วัดได้
GPU เซิร์ฟเวอร์ (H100) batch 1, 3 คำถาม40 ถึง 70 มิลลิวินาที
GPU โน้ตบุ๊ก (MacBook M3 Max, MPS)154 มิลลิวินาที
ไป-กลับผ่านเกตเวย์ ตัวอย่าง ticket ด้านบน0.23 วินาที
โทเคนขาออก0

ผลการวัด

ค่าเฉลี่ย macro 61.9 บน public benchmark 13 ชุดของ Bespoke Labs สำหรับโมเดล System One เทียบกับ 74.8 ของ Bespoke-Nimble-9B, 76.0 ของ Jev 1.13.0 และ 45.4 ของ Qwen3.5-0.8B ดิบ ใช้ชุดข้อมูล การแบ่ง คำสั่ง และตัวสุ่มเดียวกับ benchmark ที่ Bespoke เผยแพร่ ตัวเลขของพวกเขาตามที่เผยแพร่เมื่อ 18 ก.ย. 2569 ส่วนของเราวัดด้วยสคริปต์ประเมินผลที่เปิดเผย ตัวหนาคือชุดที่โมเดล 0.8B นำโมเดล 9B

ชุดข้อมูลประเภทnOpenThai-SystemOne 0.8BNimble-9BJev 1.13.0
aegis2noul25058.081.280.4
boolqnoul30063.786.089.7
civil_commentsnoul30078.070.381.0
helpsteer2score25042.839.034.1
massive-de-DEchoice35064.683.486.9
massive-en-USchoice35075.786.987.4
multinlichoice29985.685.382.9
pawsnoul25067.282.889.2
pubmedqachoice25053.675.677.2
squad2noul29950.280.682.9
summeval-consistencyscore14484.075.781.2
summeval-relevancescore24013.849.235.0
vitaminc-devchoice59967.176.680.1
ค่าเฉลี่ย macro61.974.876.0

อ่านตามจริง: นำโมเดล 9B ใน 4 จาก 13 ชุด (NLI, ความสอดคล้องของบทสรุป, การให้คะแนนความช่วยเหลือ, ข้อความเป็นพิษ) และตามหลังชัดเจนในงานใช่/ไม่ใช่แบบอ่านจับใจความ (squad2 เท่าการสุ่ม, boolq, pubmedqa) และการให้คะแนนความเกี่ยวข้องของบทสรุป ซึ่งหัวคะแนนยังปรับเทียบไม่ดี (ECE 0.79)

ชุดทดสอบภาษาไทยที่กันไว้ ไม่เคยใช้เทรน (ECE = ค่าความคลาดเคลื่อนของการปรับเทียบ ยิ่งต่ำยิ่งดี):

ชุดข้อมูลประเภทnความแม่นยำECE
MASSIVE-th intent (60 หมวด)choice5,00786.40.048
หัวข้อข่าว Prachathai67kchoice3,50197.70.005
XNLI-thchoice2,49076.50.028
หัวข้อ SIB-200 ภาษาไทย (7 หมวด) กันทั้งชุดchoice20477.50.074
ดาวรีวิว Wongnai (1 ถึง 5)score6,20363.30.010
การเลือกเครื่องมือ xLAM (อังกฤษ)choice88499.40.007
ความรู้สึก Wisesight (4 หมวด) กันทั้งชุดchoice2,67138.70.341
intent banking77 (77 หมวด, อังกฤษ) กันทั้งชุดchoice3,07632.70.165

หลังปรับเทียบ ค่า confidence เชื่อถือได้บนชุดภาษาไทยและงาน NLI/หัวข้อ (ECE ไม่เกิน 0.05) การปรับเทียบภาษาอังกฤษอ่อนกว่า (ECE มัธยฐาน 0.15 บน public bench) เพราะตั้งใจให้ข้อมูลเทรนหนักไปทางภาษาไทย ความหน่วง batch 1 สำหรับหนึ่งคำถาม 255 ตัวเลือกบน H100 ที่ใช้ร่วมกัน: 44 มิลลิวินาที ตารางเต็ม Brier score และการเปรียบเทียบก่อน/หลังปรับเทียบอยู่ในmodel card

API แบบโฮสต์ใช้ฟรี

endpoint บน api.iapp.co.th ใช้ฟรีในช่วงพรีวิวด้วย iApp API key ใดก็ได้ (สมัครฟรี) จำกัด 1,000 การตัดสินใจต่อวันต่อ key ราคาต่อการตัดสินใจจะประกาศในเดือนตุลาคม 2569

EndpointPOST https://api.iapp.co.th/v3/store/openthai/systemone
การยืนยันตัวตนheader apikey
Body{"state": ..., "questions": {...}}
เอกสารและสนามทดลอง/docs/llm/openthai-systemone

รันด้วยตัวเอง

pip install "git+https://github.com/iapp-technology/openthai-systemone"
OPENTHAI_SYSTEMONE_MODEL=iapp/OpenThai-SystemOne uvicorn openthai_systemone.server:app --port 8000

จากนั้น POST http://localhost:8000/v1/systemone ด้วย body เดียวกับ API แบบโฮสต์

สถาปัตยกรรม

ส่วนประมวลผลข้อความของ Qwen3.5-0.8B (ตัดตัวเข้ารหัสภาพออก) เทรนต่อด้วยข้อความไทยราว 5 พันล้านโทเคน หัวโมเดลภาษาขนาด 248K โทเคนถูกแทนที่ด้วยหัวตัดสินใจแบบ linear 1024 ไป 256 ช่อง ตัวเลือกถูกแนะนำด้วยโทเคนควบคุม ทุกตำแหน่งคำตอบถูกอ่านออกเป็น 256 logit ช่องที่เกินจำนวนตัวเลือกถูกปิด และช่อง 255 คือ "ไม่มีตัวเลือกใดเหมาะ" (abstain) choice ใช้ค่าสูงสุด score คือดัชนีระดับถ่วงน้ำหนักด้วยความน่าจะเป็น noul คือ P(ใช่) ลำดับตัวเลือกถูกสลับระหว่างเทรน จึงไม่มีอคติตามตำแหน่ง เทรนด้วยชุดข้อมูลสาธารณะด้านการจัดหมวดหมู่ NLI ถาม-ตอบ และ agent รวมกับงานตัดสินใจภาษาไทยและอังกฤษที่สังเคราะห์ขึ้น แล้วผ่านการปรับเทียบ

ข้อจำกัด บอกไว้ก่อน

  • เวอร์ชัน 0.1 โมเดลขนาด 0.8B ไม่ใช่โมเดลคิดวิเคราะห์
  • ตอบตัวเลือกที่ไม่ถูกต้องไม่ได้ แต่ยังเลือกผิดได้ ส่งคำตอบที่ confidence ต่ำไปโมเดลใหญ่หรือคน
  • รับข้อความอย่างเดียว
  • สูงสุด 255 ตัวเลือกต่อ choice, 2 ถึง 10 ระดับต่อ score, 64K โทเคนต่อคำขอ
  • จุดอ่อนที่รู้แล้วใน v0.1: ความรู้สึกในโซเชียลไทย (Wisesight 38.7), intent ภาษาอังกฤษละเอียด 77 หมวด (banking77 32.7), ใช่/ไม่ใช่แบบถาม-ตอบจากข้อความ (squad2 เท่าการสุ่ม) และการให้คะแนนความเกี่ยวข้องของบทสรุป v0.2 เพิ่มชุดข้อมูลความรู้สึกภาษาไทยสังเคราะห์และการเทรนรอบสอง มุ่งแก้ข้อแรก
  • "System One" เป็นชื่อหมวด นี่ไม่ใช่ผลิตภัณฑ์ของ TypeSafe AI

ลิงก์