Skip to content

Golden set — Certogo FAQ

Source: platform/packages/eval/golden-sets/certogo/faq.yaml · rendered from main on every deploy — edit in the repo, not here

platform/packages/eval/golden-sets/certogo/faq.yaml
# Golden Q&A: Certogo training FAQ (Thai)
# 35 test cases covering all FAQ sections
# ── Registration & Login ──
# ADR-0112 regression guard: the vocabulary-variant term "การรับสมัคร"
# (lit. "recruitment") must still retrieve the sign-up FAQ rather than refuse.
# This is the exact query from the certogo grounding incident — pre-fix it
# returned an out-of-scope refusal with zero sources.
- vars:
query: 'การรับสมัคร'
locale: th
assert:
- type: contains-any
value: ['รับคำเชิญ', 'ตั้งรหัสผ่าน', 'สมัครบัญชี', 'ยืนยันตัวตน', 'อีเมล']
- type: llm-rubric
value: 'The answer explains how to sign up / register for the training system using the knowledge base, and does NOT refuse or say it has no information.'
threshold: 0.8
- vars:
query: 'ลืมรหัสผ่าน ทำยังไง'
locale: th
assert:
- type: contains
value: 'ลืมรหัสผ่าน'
- type: contains-any
value: ['ตั้งรหัสผ่านใหม่', 'หน้าเข้าสู่ระบบ']
- vars:
query: 'สมัครบัญชีครั้งแรกต้องทำอะไรบ้าง'
locale: th
assert:
- type: contains-any
value: ['รับคำเชิญ', 'ตั้งรหัสผ่าน', 'ยืนยันตัวตน']
- vars:
query: 'เข้าสู่ระบบได้กี่วิธี'
locale: th
assert:
- type: contains-any
value: ['อีเมล', 'บัตรประชาชน', 'โทรศัพท์', '3 วิธี']
- vars:
query: 'ไม่ได้รับอีเมลเชิญเข้าอบรม'
locale: th
assert:
- type: contains-any
value: ['Spam', 'จดหมายขยะ', 'ติดต่อ']
- vars:
query: 'พนักงานใหม่ต้องทำอะไรเพื่อเข้าอบรม'
locale: th
assert:
- type: contains-any
value: ['HR', 'อีเมล', 'อัตโนมัติ']
# ── eKYC ──
- vars:
query: 'ทำไมต้องยืนยันตัวตน'
locale: th
assert:
- type: contains-any
value: ['คปภ', 'ความปลอดภัย', 'บัตรประชาชน']
- vars:
query: 'ถ่ายรูปบัตรประชาชนยังไง'
locale: th
assert:
- type: contains-any
value: ['กล้อง', 'QR Code', 'สมาร์ทโฟน']
- vars:
query: 'ระบบสแกนใบหน้าไม่ผ่าน ต้องทำอะไร'
locale: th
assert:
- type: contains-any
value: ['แสงสว่าง', 'หน้ากาก', 'แว่นกันแดด', 'กล้อง']
- vars:
query: 'กล้องไม่ทำงาน ขึ้นว่าไม่พบกล้อง'
locale: th
assert:
- type: contains-any
value: ['Settings', 'Privacy', 'Camera', 'Refresh', 'Safari']
- vars:
query: 'ระหว่างอบรมมีการขอยืนยันตัวตนอีกไหม'
locale: th
assert:
- type: contains-any
value: ['สุ่มตรวจสอบ', 'ปกติ', 'เวลาที่กำหนด']
# ── Training & Course ──
- vars:
query: 'รอบอบรมมีกี่วัน'
locale: th
assert:
- type: contains
value: '7'
- vars:
query: 'อบรมจากที่ไหนก็ได้ไหม'
locale: th
assert:
- type: contains-any
value: ['ทุกที่', '24 ชั่วโมง', 'แสงสว่าง']
- vars:
query: 'เร่งความเร็ววิดีโอได้ไหม'
locale: th
assert:
- type: contains-any
value: ['ไม่อนุญาต', 'ไม่ได้', 'คปภ']
- vars:
query: 'อบรมพร้อมกันหลายอุปกรณ์ได้ไหม'
locale: th
assert:
- type: contains-any
value: ['ไม่ได้', '1 อุปกรณ์', '1 บัญชี']
- vars:
query: 'เปิดแอปอื่นระหว่างอบรมได้ไหม'
locale: th
assert:
- type: contains-any
value: ['ไม่ได้', 'หยุดทันที', 'หน้าจออบรม']
- vars:
query: 'ต้องเปิด Full Screen ตลอดไหม'
locale: th
assert:
- type: contains-any
value: ['Full Screen', 'บังคับ', 'ใช่']
- vars:
query: 'อบรมระหว่างเดินทางได้ไหม'
locale: th
assert:
- type: contains-any
value: ['ไม่แนะนำ', 'แสงสว่าง', 'อินเทอร์เน็ต', 'สัญญาณ']
- vars:
query: 'อบรมค้างไว้แล้วหมดเวลารอบ ทำยังไง'
locale: th
assert:
- type: contains-any
value: ['ลงทะเบียนรอบใหม่', 'วางแผน']
- vars:
query: 'ย้อนกลับไปดูเนื้อหาเก่าได้ไหม'
locale: th
assert:
- type: contains-any
value: ['ได้', 'ย้อนกลับ', 'ข้ามไปยัง']
- vars:
query: 'ทำไมถูกย้อนเวลากลับไป'
locale: th
assert:
- type: contains-any
value: ['ยืนยันตัวตน', 'ไม่สำเร็จ', 'จุดล่าสุด']
# ── Technical Issues ──
- vars:
query: 'หน้าจอวิดีโอดำ วิดีโอไม่เล่น'
locale: th
assert:
- type: contains-any
value: ['Refresh', 'Chrome', 'VPN', 'cache']
- vars:
query: 'session หมดอายุกลางคัน ต้องเริ่มใหม่ไหม'
locale: th
assert:
- type: contains-any
value: ['ไม่ต้อง', 'บันทึก', 'progress', 'Login']
- vars:
query: 'ทำแบบทดสอบแล้วระบบไม่บันทึกผล'
locale: th
assert:
- type: contains-any
value: ['อินเทอร์เน็ต', 'ติดต่อเจ้าหน้าที่', 'จำนวนครั้ง']
# ── Tests & Exams ──
- vars:
query: 'แบบทดสอบทำได้กี่ครั้ง'
locale: th
assert:
- type: contains
value: '5'
- vars:
query: 'เกณฑ์ผ่านแบบทดสอบเท่าไหร่'
locale: th
assert:
- type: contains-any
value: ['60%', '6 คะแนน']
- vars:
query: 'ทำแบบทดสอบไม่ผ่านครบ 5 ครั้ง ต้องทำอย่างไร'
locale: th
assert:
- type: contains-any
value: ['ติดต่อเจ้าหน้าที่', 'ทบทวนเนื้อหา']
# ── License & OIC ──
- vars:
query: 'อบรมเสร็จแล้ว ยื่นต่อใบอนุญาตกับ คปภ ได้เลยไหม'
locale: th
assert:
- type: contains-any
value: ['2 วันทำการ', 'ยังไม่ได้', 'ส่งผล']
- vars:
query: 'ผลอบรมส่งให้ คปภ อัตโนมัติไหม'
locale: th
assert:
- type: contains-any
value: ['อัตโนมัติ', 'กดส่ง', 'ส่งผลการอบรม']
- vars:
query: 'ใบอนุญาตใกล้หมดอายุ ยังอบรมทันไหม'
locale: th
assert:
- type: contains-any
value: ['2-3 สัปดาห์', 'ล่วงหน้า']
# ── Certificate ──
- vars:
query: 'ดาวน์โหลดใบรับรองได้ที่ไหน'
locale: th
assert:
- type: contains-any
value: ['ใบรับรอง', 'อีเมล', 'มุมขวาบน']
- vars:
query: 'ใบรับรอง e-Certificate ใช้ยื่นกับ คปภ ได้ไหม'
locale: th
assert:
- type: contains-any
value: ['ใช้ได้', 'e-Certificate', 'คปภ']
# ── Devices ──
- vars:
query: 'ใช้อุปกรณ์อะไรอบรมได้บ้าง'
locale: th
assert:
- type: contains-any
value: ['Chrome', 'Safari', 'คอมพิวเตอร์', 'iPad', 'Android']
- vars:
query: 'อินเทอร์เน็ตช้าเกินไป ต้องทำอย่างไร'
locale: th
assert:
- type: contains-any
value: ['Wi-Fi', 'สายแลน', '200ms']
# ── IDK tests (questions NOT in the corpus) ──
- vars:
query: 'ราคาค่าอบรมเท่าไหร่'
locale: th
assert:
- type: contains-any
value: ['ไม่พบ', 'ไม่มีข้อมูล', 'ติดต่อ']
- type: llm-rubric
value: 'The answer honestly states it does not have the information rather than making something up.'
threshold: 0.9
- vars:
query: 'Certogo มีสาขาที่ไหนบ้าง'
locale: th
assert:
- type: contains-any
value: ['ไม่พบ', 'ไม่มีข้อมูล', 'ติดต่อ']