เรียนรู้ว่า LLM แปลความกฎธุรกิจ ติดตามสถานะเวิร์กโฟลว์ และยืนยันการตัดสินใจด้วย prompt เครื่องมือ การทดสอบ และการทบทวนโดยมนุษย์—ไม่ใช่แค่โค้ด

เมื่อมีคนถามว่า LLM สามารถ “ให้เหตุผลเกี่ยวกับกฎธุรกิจ” ได้ไหม พวกเขามักหมายถึงสิ่งที่ยากกว่าการเขียน if/else ธรรมดา การให้เหตุผลตามกฎธุรกิจคือความสามารถในการปฏิบัติตามนโยบายอย่างสม่ำเสมอ อธิบายการตัดสินใจ จัดการข้อยกเว้น และยังคงสอดคล้องกับขั้นตอนของเวิร์กโฟลว์—โดยเฉพาะเมื่อข้อมูลนำเข้าไม่สมบูรณ์ สกปรก หรือเปลี่ยนแปลง
การสร้างโค้ดส่วนใหญ่คือการผลิตไวยากรณ์ที่ถูกต้องในภาษาที่ต้องการ แต่การให้เหตุผลตามกฎคือการรักษาเจตนารมณ์
โมเดลอาจสร้างโค้ดที่ถูกต้องตามไวยากรณ์แต่ยังให้ผลลัพธ์ทางธุรกิจผิดพลาดได้ เพราะว่า:
กล่าวคือ ความถูกต้องไม่ได้หมายถึง “คอมไพล์ได้ไหม?” แต่คือ “ตรงกับการตัดสินใจของธุรกิจในทุกครั้งหรือไม่ และเราพิสูจน์ได้หรือเปล่า?”
LLM สามารถช่วยแปลงนโยบายเป็นกฎที่มีโครงสร้าง แนะนำเส้นทางการตัดสินใจ และร่างคำอธิบายสำหรับมนุษย์ แต่พวกมันไม่ได้รู้โดยอัตโนมัติว่ากฎใดมีอำนาจสูงสุด แหล่งข้อมูลใดเชื่อถือได้ หรือกรณีตอนนี้อยู่ในขั้นตอนไหน หากไม่มีข้อจำกัด พวกมันอาจเลือกคำตอบที่ฟังดูเป็นไปได้แทนคำตอบที่ถูกควบคุม
ดังนั้นเป้าหมายไม่ใช่ "ปล่อยให้โมเดลตัดสิน" แต่คือให้โครงสร้างและการตรวจสอบเพื่อให้ช่วยได้อย่างเชื่อถือได้
แนวทางเชิงปฏิบัติจะเป็นเหมือน pipeline:
นั่นแหละความต่างระหว่างสเนปิปต์โค้ดฉลาด ๆ กับระบบที่รองรับการตัดสินใจทางธุรกิจจริง
ก่อนจะพูดถึงว่า LLM "ให้เหตุผล" อย่างไร มีประโยชน์ถ้าแยกสองอย่างที่ทีมมักมัดรวมกัน: กฎธุรกิจ และ เวิร์กโฟลว์
กฎธุรกิจ คือข้อความการตัดสินใจที่องค์กรต้องการให้บังคับใช้อย่างสม่ำเสมอ ปรากฏในรูปแบบนโยบายและตรรกะ เช่น:
กฎมักมีรูปแบบ “IF X, THEN Y” (บางครั้งมีข้อยกเว้น) และควรให้ผลลัพธ์ชัดเจน: อนุมัติ/ปฏิเสธ, ราคา A/ราคา B, ขอข้อมูลเพิ่ม เป็นต้น
เวิร์กโฟลว์ คือกระบวนการที่ย้ายงานจากเริ่มจนเสร็จ มันเกี่ยวกับ จะเกิดอะไรขึ้นต่อไป มากกว่าจะตัดสินว่า อะไรอนุญาต เวิร์กโฟลว์มักมี:
ลองนึกภาพคำขอคืนเงิน
ตัวอย่างกฎ: “คืนเงินได้ภายใน 30 วันหลังซื้อ ข้อยกเว้น: ดาวน์โหลดดิจิทัลไม่สามารถคืนได้หลังจากเข้าถึงแล้ว ข้อยกเว้น: กรณี chargeback ต้องยกระดับ”
ตัวอย่างเวิร์กโฟลว์:
กฎซับซ้อนเมื่อต้อง ขัดแย้ง กัน (“ลูกค้า VIP ได้คืนเสมอ” กับ “ดาวน์โหลดดิจิทัลไม่คืน”) พึ่งพา บริบทที่หายไป (ดาวน์โหลดเข้าถึงแล้วไหม?) หรือซ่อน กรณีมุม (แพ็กเกจ, คืนบางส่วน, กฎหมายพื้นที่) เวิร์กโฟลว์เพิ่มอีกชั้น: การตัดสินใจต้องสอดคล้องกับสถานะปัจจุบัน การกระทำก่อนหน้า และกำหนดเวลา
LLM ไม่ได้ "เข้าใจ" กฎธุรกิจเหมือนมนุษย์ มันสร้างคำถัดไปที่มีความน่าจะเป็นสูงสุดจากข้อมูลที่เรียนรู้มามาก นั่นคือเหตุผลที่ LLM ฟังดูมีเหตุผลแม้กำลังเดา—หรือเติมรายละเอียดที่หายไปโดยไม่ได้รับข้อมูล
ข้อจำกัดนี้มีผลกับเวิร์กโฟลว์และตรรกะการตัดสินใจ โมเดลอาจใช้กฎที่ "ฟังดูถูก" (เช่น “พนักงานต้องได้รับการอนุมัติจากผู้จัดการเสมอ”) แม้นโยบายจริงจะมีข้อยกเว้น (เช่น “เฉพาะมากกว่า $500” หรือ “เฉพาะผู้รับจ้าง”) นี่คือโหมดความล้มเหลวที่พบบ่อย: แน่นใจแต่ผิด
แม้ไม่มี "ความเข้าใจ" จริง LLM ก็ช่วยได้เมื่อคุณใช้งานมันเป็นผู้ช่วยที่มีโครงสร้าง:
กุญแจคือการวางโมเดลในตำแหน่งที่มันไม่สามารถออกนอกเส้นทางได้ง่าย
วิธีปฏิบัติทั่วไปคือ ผลลัพธ์แบบจำกัด: บังคับให้ LLM ตอบในสคีมหรือเทมเพลตคงที่ (เช่น JSON กับฟิลด์เฉพาะ หรือตารางที่มีคอลัมน์บังคับ) เมื่อโมเดลต้องเติม rule_id, conditions, exceptions, และ decision จะง่ายขึ้นที่จะเห็นช่องว่างและตรวจสอบอัตโนมัติ
ฟอร์แมตจำกัดยังชัดเจนเมื่อโมเดลไม่รู้คำตอบ หากฟิลด์ที่ต้องการหายไป คุณสามารถบังคับคำถามติดตามแทนการยอมรับคำตอบไม่แน่ใจ
คติ: LLM "ให้เหตุผล" เป็นการสร้างรูปแบบตามแบบแผนที่มีโครงสร้าง—มีประโยชน์ในการจัดระเบียบและตรวจตรากฎ แต่เสี่ยงหากถือว่าเป็นผู้ตัดสินที่ไม่ผิดพลาด
เอกสารนโยบายเขียนสำหรับมนุษย์: ผสมเป้าหมาย ข้อยกเว้น และ "สามัญสำนึก" ในย่อหน้าเดียว LLM สามารถสรุปข้อความนั้นได้ แต่จะทำตามกฎได้แน่นอนขึ้นเมื่อคุณแปลงนโยบายเป็นอินพุตที่ชัดเจนและทดสอบได้
ตัวแทนกฎที่ดีมีสองคุณสมบัติ: ไม่มีความคลุมเครือ และตรวจสอบได้
เขียนกฎเป็นประโยคที่คุณทดสอบได้:
กฎสามารถให้โมเดลในหลายรูปแบบ:
นโยบายจริงมักขัดแย้งกัน เมื่อสองกฎไม่ตรงกัน โมเดลต้องการสกีมาลำดับความสำคัญ วิธีปฏิบัติที่ใช้บ่อย:
priority: 100)ระบุวิธีแก้ความขัดแย้งโดยตรง หรือเข้ารหัสมัน (เช่น priority: 100) มิฉะนั้น LLM อาจ "เฉลี่ย" กฎ
ต้นฉบับ:
“Refunds are available within 30 days for annual plans. Monthly plans are non-refundable after 7 days. If the account shows fraud or excessive chargebacks, do not issue a refund. Enterprise customers need Finance approval for refunds over $5,000.”
กฎที่มีโครงสร้าง (YAML):
rules:
- id: R1
statement: "IF plan_type = annual AND days_since_purchase <= 30 THEN refund MAY be issued"
priority: 10
- id: R2
statement: "IF plan_type = monthly AND days_since_purchase > 7 THEN refund MUST NOT be issued"
priority: 20
- id: R3
statement: "IF fraud_flag = true OR chargeback_rate = excessive THEN refund MUST NOT be issued"
priority: 100
- id: R4
statement: "IF customer_tier = enterprise AND refund_amount > 5000 THEN finance_approval MUST be obtained"
priority: 50
conflict_resolution: "Higher priority wins; MUST NOT overrides MAY"
ตอนนี้โมเดลจะไม่เดาว่าสิ่งใดสำคัญ—มันจะใช้ชุดกฎที่คุณสามารถตรวจทาน ทดสอบ และจัดเวอร์ชันได้
เวิร์กโฟลว์ไม่ใช่แค่ชุดกฎ แต่มันคือชุดเหตุการณ์ที่ขั้นก่อนหน้าจะเปลี่ยนสิ่งที่ควรเกิดขึ้นต่อไป ความจำนี้คือ สถานะ: ข้อเท็จจริงปัจจุบันเกี่ยวกับเคส (ใครส่งอะไรไปแล้ว อะไรอนุมัติแล้ว อะไรรอ และมีเดดไลน์ใด) หากคุณไม่ติดตามสถานะอย่างชัดเจน เวิร์กโฟลว์จะพังในแบบที่คาดได้—การอนุมัติซ้ำ ข้ามการตรวจสอบที่จำเป็น พลิกการตัดสินใจ หรือใช้กฎผิดเพราะโมเดลเดาไม่ได้ว่าเกิดอะไรไปแล้ว
คิดว่าสถานะเป็นสกอร์บอร์ดของเวิร์กโฟลว์ มันตอบว่า: ตอนนี้เราอยู่ตรงไหน? ทำอะไรไปแล้ว? อนุญาตอะไรต่อไป? สำหรับ LLM การมีสรุปสถานะที่ชัดเจนป้องกันไม่ให้มันพิจารณาขั้นตอนก่อนหน้าใหม่หรือเดาสิ่งที่เกิดขึ้น
เมื่อคุณเรียกโมเดล ให้รวม payload สรุปสถานะที่กะทัดรัดพร้อมคำขอของผู้ใช้ ฟิลด์ที่มีประโยชน์ได้แก่:
manager_review: approved, finance_review: pending)หลีกเลี่ยงการใส่ข้อความประวัติศาสตร์ทั้งหมด ให้ใส่เฉพาะสถานะปัจจุบันกับร่องรอยการตรวจสอบสั้น ๆ ของการเปลี่ยนแปลงสำคัญ
ปฏิบัติเช่นเอนจินเวิร์กโฟลว์ (ฐานข้อมูล ระบบตั๋ว หรือ orchestrator) เป็น แหล่งข้อมูลเดียวของความจริง ให้ LLM อ่าน สถานะจากระบบนั้นและเสนอการกระทำถัดไป แต่ระบบเป็นฝ่ายบันทึกการเปลี่ยนแปลง นี่ช่วยลด "state drift" ที่เรื่องเล่าในโมเดลแตกต่างจากความเป็นจริง
{
"request_id": "TRV-10482",
"workflow": "travel_reimbursement_v3",
"current_step": "finance_review",
"step_status": {
"submission": "complete",
"manager_review": "approved",
"finance_review": "pending",
"payment": "not_started"
},
"actors": {
"employee_id": "E-2291",
"manager_id": "M-104",
"finance_queue": "FIN-AP"
},
"amount": 842.15,
"currency": "USD",
"submitted_at": "2025-12-12T14:03:22Z",
"last_state_update": "2025-12-13T09:18:05Z",
"flags": {
"receipt_missing": false,
"policy_exception_requested": true,
"needs_escalation": false
}
}
ด้วยสแนปช็อตแบบนี้ โมเดลจะคงความสอดคล้อง: มันจะไม่ขออนุมัติผู้จัดการซ้ำ มันจะมุ่งไปที่การตรวจสอบทางการเงิน และอธิบายการตัดสินใจตามแฟล็กและขั้นตอนปัจจุบัน
Prompt ที่ดีไม่ได้แค่ถามคำตอบ—มันกำหนดความคาดหวังว่าโมเดลควรใช้กฎอย่างไรและควรรายงานผลอย่างไร เป้าหมายคือการตัดสินใจที่ทำซ้ำได้ ไม่ใช่ถ้อยคำมีไหวพริบ
ให้โมเดลรับบทบาทที่ผูกกับกระบวนการของคุณ หน้าที่ 3 แบบที่ใช้ดีร่วมกันได้แก่:
คุณสามารถรันตามลำดับเหล่านี้ ("analyst → validator → agent") หรือขอผลลัพธ์ทั้งสามในคำตอบที่มีโครงสร้างเดียว
แทนที่จะขอ “chain-of-thought” ให้กำหนดขั้นตอนและเอกสารที่มองเห็นได้:
นี่ทำให้โมเดลเป็นระเบียบและมุ่งเน้นที่ผลลัพธ์: กฎที่ใช้และผลลัพธ์
คำอธิบายอิสระมักเบี่ยงเบน ให้บังคับเหตุผลสั้น ๆ ที่ชี้ไปยังแหล่ง:
นี่ช่วยให้การทบทวนเร็วขึ้นและดีบักเมื่อมีข้อขัดแย้ง
ใช้เทมเพลตคงที่ทุกครั้ง:
เทมเพลตนี้ลดความคลุมเครือและกระตุ้นให้โมเดลแสดงช่องว่างก่อนที่จะตัดสินใจผิดพลาด
LLM อาจร่างคำตอบที่โน้มน้าวได้แม้ขาดข้อเท็จจริง นั่นมีประโยชน์สำหรับร่าง แต่เสี่ยงสำหรับการตัดสินใจตามกฎ หากโมเดลต้อง เดา สถานะบัญชี ระดับลูกค้า อัตราภาษีภูมิภาค หรือว่าขีดจำกัดถูกใช้ไปแล้ว คุณจะได้ข้อผิดพลาดที่ดูมั่นใจ
เครื่องมือแก้ปัญหานั้นด้วยการเปลี่ยน “การให้เหตุผล” เป็นกระบวนการสองขั้นตอน: ดึงหลักฐานก่อน ตัดสินทีหลัง
ในระบบที่มีกฎและเวิร์กโฟลว์หนัก เครื่องมือไม่กี่อย่างทำงานได้มาก:
จุดสำคัญคือโมเดลไม่ได้ "คิดขึ้น" ข้อเท็จจริงเชิงปฏิบัติ มันขอข้อมูลเหล่านั้น
แม้ว่าคุณจะเก็บนโยบายทั้งหมดไว้ในที่เดียว คุณไม่อยากใส่ทั้งหมดเข้าไปใน prompt เสมอไป การดึงเลือกเฉพาะย่อหน้าที่เกี่ยวข้องกับเคสปัจจุบัน เช่น:
นี่ลดการขัดแย้งและทำให้โมเดลไม่ตามกฎเก่าที่ปรากฏในคอนเท็กซ์ก่อนหน้า
รูปแบบที่เชื่อถือได้คือการถือผลลัพธ์ของเครื่องมือเป็น หลักฐาน ที่โมเดลต้องอ้างอิงในการตัดสิน เช่น:
get_account(account_id) → status="past_due", plan="Business", usage_this_month=12000retrieve_policies(query="overage fee Business plan") → คืนกฎ: “Overage fee applies above 10,000 units at $0.02/unit.”calculate_overage(usage=12000, threshold=10000, rate=0.02) → $40.00ตอนนี้การตัดสินใจไม่ใช่การเดา: มันเป็นข้อสรุปที่ยึดกับอินพุตเฉพาะ ("past_due", "12,000 units", "$0.02/unit") หากตรวจสอบผลลัพธ์ในภายหลัง คุณจะเห็นได้ชัดว่าข้อเท็จจริงใดและเวอร์ชันกฎใดถูกใช้—และแก้ไขส่วนที่ถูกต้องเมื่อมีการเปลี่ยนแปลง
ข้อความอิสระยืดหยุ่น แต่เป็นวิธีที่ง่ายที่สุดที่จะทำให้เวิร์กโฟลว์พัง โมเดลอาจให้คำตอบที่ "สมเหตุสมผล" แต่ไม่สามารถอัตโนมัติได้ ("ดูโอเคสำหรับฉัน") หรือไม่สอดคล้องข้ามขั้นตอน ("approve" vs. "approved") ผลลัพธ์แบบจำกัดแก้ปัญหานั้นด้วยการบังคับให้การตัดสินใจอยู่ในรูปแบบที่คาดเดาได้
รูปแบบปฏิบัติได้คือให้โมเดลตอบเป็นออบเจ็กต์ JSON เดียวที่ระบบของคุณสามารถแยกและส่งต่อได้:
{
"decision": "needs_review",
"reasons": [
"Applicant provided proof of income, but the document is expired"
],
"next_action": "request_updated_document",
"missing_info": [
"Income statement dated within the last 90 days"
],
"assumptions": [
"Applicant name matches across documents"
]
}
โครงสร้างนี้ทำให้ผลลัพธ์มีประโยชน์แม้เมื่อตัวโมเดลยังตัดสินใจไม่ได้ missing_info และ assumptions เปลี่ยนความไม่แน่นอนให้เป็นการติดตามที่ปฏิบัติได้ แทนการเดาเงียบ ๆ
เพื่อลดความแปรปรวน กำหนดค่าที่อนุญาต (enums) สำหรับฟิลด์สำคัญ เช่น:
decision: approved | denied | needs_reviewnext_action: approve_case | deny_case | request_more_info | escalate_to_humanด้วย enums ระบบ downstream ไม่ต้องตีความคำพ้อง ความหมาย หรือเครื่องหมายวรรคตอน พวกมันแยกกิ่งด้วยค่าที่รู้จัก
สคีมาเปรียบเหมือนราวกันตก พวกมัน:
reasons)decision และ next_actionผลลัพธ์คือความคลุมเครือน้อยลง ข้อผิดพลาดมุมที่ลดลง และการตัดสินใจที่เดินผ่านเวิร์กโฟลว์อย่างสม่ำเสมอ
แม้ prompt จะดี โมเดลก็อาจ "ฟังดูถูก" ในขณะที่ละเมิดกฎ ข้ามขั้นตอนที่จำเป็น หรือคิดตัวเลขขึ้นมา การตรวจสอบเป็นตาข่ายนิรภัยที่เปลี่ยนคำตอบที่น่าจะเป็นไปได้ให้เป็นการตัดสินที่เชื่อถือได้
เริ่มจากยืนยันว่ามีข้อมูลขั้นต่ำที่ต้องใช้ในการประยุกต์กฎ การตรวจสอบเบื้องต้นควรทำก่อนที่โมเดลจะตัดสินใจ
การตรวจสอบทั่วไปรวมฟิลด์ที่จำเป็น (ประเภทลูกค้า ยอดคำสั่ง ภูมิภาค) รูปแบบพื้นฐาน (วันที่ ไอดี สกุลเงิน) และช่วงที่อนุญาต (จำนวนไม่ลบ ร้อยละไม่เกิน 100%) หากล้มเหลว ให้คืนข้อผิดพลาดที่ชัดเจนและปฏิบัติได้ ("ขาด 'region'; ไม่สามารถเลือกชุดกฎภาษีได้") แทนการให้โมเดลเดา
หลังโมเดลผลิตผล ให้ตรวจว่าผลสอดคล้องกับชุดกฎของคุณ
มุ่งเน้นที่:
เพิ่ม "รอบสอง" ที่ประเมินคำตอบครั้งแรกอีกครั้ง นี่อาจเป็นการเรียกโมเดลอีกครั้งหรือตรวจสอบด้วย prompt แบบ validator ที่เน้นการตรวจความสอดคล้อง ไม่ใช่ความสร้างสรรค์
รูปแบบง่าย ๆ: รอบแรกผลิตการตัดสินใจ + เหตุผล; รอบสองคืน valid หรือรายการโครงสร้างของความล้มเหลว (ฟิลด์หาย ข้อจำกัดถูกละเมิด การตีความกฎไม่ชัด)
สำหรับการตัดสินใจทุกครั้ง ให้บันทึกอินพุตที่ใช้ เวอร์ชันกฎ/นโยบาย และผลการตรวจสอบ (รวมรอบสอง) เมื่อเกิดปัญหา จะช่วยให้คุณจำลองสภาวะเดิม แก้แม็ปกฎ และยืนยันการแก้ไขได้—โดยไม่ต้องเดาว่าโมเดล "คงหมายความว่า" อะไร
การทดสอบฟีเจอร์ที่ใช้ LLM กับกฎและเวิร์กโฟลว์ไม่ใช่แค่ "มันสร้างอะไรไหม?" แต่คือ "มันตัดสินใจเหมือนมนุษย์ที่รอบคอบในเหตุผลที่ถูกต้องเสมอไหม?" ข้อดีคือคุณสามารถทดสอบด้วยวินัยเดียวกับตรรกะการตัดสินใจแบบเดิม
มองแต่ละกฎเหมือนฟังก์ชัน: ให้ค่าเข้าแล้วควรคืนผลลัพธ์ที่คาด
ตัวอย่าง หากมีกฎคืนเงินว่า “คืนเงินได้ภายใน 30 วันสำหรับสินค้าที่ไม่ได้เปิด” ให้กรณีทดสอบ:
ยูนิตเทสต์เหล่านี้จับข้อผิดพลาด off-by-one ฟิลด์หาย และพฤติกรรม "ช่วยเติม" ของโมเดล
เวิร์กโฟลว์พังเมื่อสถานะไม่สอดคล้องข้ามขั้นตอน เทสต์สถานการณ์จำลองเส้นทางจริง:
เป้าหมายคือยืนยันว่าโมเดลเคารพสถานะปัจจุบันและทำการเปลี่ยนแปลงที่อนุญาตเท่านั้น
สร้างชุดข้อมูลคิวเรตจากตัวอย่างจริงที่ทำให้เป็นนิรนาม พร้อมผลลัพธ์ที่ตกลงกัน (และเหตุผลสั้น ๆ) เก็บเวอร์ชันไว้ และทบทวนเมื่อกฎเปลี่ยน ชุด gold เล็ก ๆ (แม้ 100–500 เคส) ก็ทรงพลังเพราะสะท้อนความเป็นจริงที่ยุ่งเหยิง—ข้อมูลหาย คำพูดแปลก ๆ การตัดสินใจขอบ
ติดตามการแจกแจงการตัดสินใจและสัญญาณคุณภาพเมื่อเวลาผ่านไป:
needs_review หรือการส่งต่อหามนุษย์ (มักเป็นปัญหา prompt, retrieval, หรือ upstream data)จับการมอนิเตอริงกับการย้อนกลับที่ปลอดภัย: เก็บ prompt/แพ็กกฎก่อนหน้า เปิดฟีเจอร์ทีละน้อย ใช้ feature flag และพร้อมย้อนกลับเมื่อเมตริกถดถอย สำหรับ playbook การดำเนินงานและการปล่อยดู /blog/validation-strategies
ถ้าคุณจะนำแนวทางข้างต้นไปใช้ ส่วนใหญ่คุณจะสร้างระบบรอบ ๆ โมเดล: ที่เก็บสถานะ การเรียกเครื่องมือ การดึงข้อมูล การตรวจสคีมา และตัวจัดการเวิร์กโฟลว์ Koder.ai เป็นวิธีปฏิบัติที่ช่วยให้ prototype และส่งมอบผู้ช่วยแบบมีเวิร์กโฟลว์ได้เร็วขึ้น: คุณสามารถอธิบายเวิร์กโฟลว์ในแชท สร้างเว็บแอป (React) พร้อมบริการแบ็กเอนด์ (Go กับ PostgreSQL) และวนปรับอย่างปลอดภัยด้วยสแนปช็อตและการย้อนกลับ
สิ่งนี้สำคัญเพราะ "ราวกันตก" มักอยู่ในแอปมากกว่าใน prompt:
LLM ทำงานได้ค่อนข้างดีสำหรับนโยบายทั่วไป แต่ไม่ใช่เครื่องยนต์กฎเชิงกำหนด จงมองพวกมันเป็นผู้ช่วยการตัดสินใจที่ต้องมีราวกันตก ไม่ใช่อำนาจสุดท้าย
ความล้มเหลวสามแบบปรากฏซ้ำ ๆ ในเวิร์กโฟลว์ที่มีกฎ:
เพิ่มการรีวิวโดยมนุษย์เมื่อ:
แทนที่จะปล่อยให้โมเดล "คิดขึ้น" ให้กำหนดขั้นตอนต่อไปชัด:
ใช้ LLM ในเวิร์กโฟลว์ที่มีนโยบายหนักเมื่อคุณตอบ "ใช่" ต่อคำถามส่วนใหญ่เหล่านี้:
หากไม่ ให้เก็บ LLM ไว้ในบทบาทร่าง/ผู้ช่วยจนกว่าจะมีการควบคุมเหล่านั้น