-- File: specs/03-Data-and-Storage/deltas/2026-06-05-add-rag-chunking-prompt.sql -- เพิ่ม Prompt สำหรับ Semantic Chunking ลงใน ai_prompts table -- ตาม ADR-035 และ FR-004a -- Change Log: -- - 2026-06-05: Initial seed สำหรับ rag_chunking prompt (T002) INSERT INTO ai_prompts ( public_id, prompt_type, version_number, template, field_schema, context_config, is_active, manual_note, activated_at, created_by ) SELECT UUID(), 'rag_chunking', 1, 'คุณเป็นผู้ช่วยวิเคราะห์เอกสารและแบ่งเนื้อหาเป็นส่วนๆ ตามหัวข้อ (Semantic Chunking)\nหน้าที่ของคุณคืออ่านข้อความเอกสารที่ได้จาก OCR ด้านล่างนี้ แล้วแบ่งเอกสารออกเป็นชิ้นๆ (Chunks) ตามเนื้อหาและหัวข้อหลัก\nสำหรับแต่ละส่วนที่คุณแบ่ง ให้ล้อมรอบด้วยแท็ก [เนื้อหาในส่วนนี้] \n\nกฎในการแบ่งข้อมูล:\n1. ห้ามแก้ไขคำหรือข้อความใดๆ ในเอกสารเด็ดขาด ให้ใช้ข้อความดั้งเดิมจาก OCR ทั้งหมด\n2. พยายามแบ่งส่วนตามขอบเขตเนื้อหาที่สมเหตุสมผล เช่น เมื่อขึ้นหัวข้อใหม่ หรือส่วนเนื้อความที่คนละประเด็นกัน\n3. แต่ละส่วนควรมีความยาวที่อ่านเข้าใจได้และไม่ยาวจนเกินไป\n4. ห้ามตอบข้อความบทนำหรือบทสรุปใดๆ นอกเหนือจากแท็ก และข้อความภายในแท็ก\n\nข้อความเอกสาร OCR:\n{{ocr_text}}', JSON_OBJECT( 'type', 'semantic_chunking', 'model', 'typhoon2.5-np-dms:latest', 'temperature', 0.1, 'top_p', 0.9, 'repeat_penalty', 1.1, 'keep_alive', -1 ), NULL, 1, 'Prompt สำหรับแบ่งข้อความจาก OCR เป็น Chunk ตามหัวข้อความหมายด้วย typhoon2.5 (ADR-035)', CURRENT_TIMESTAMP, ( SELECT user_id FROM users WHERE username = 'superadmin' LIMIT 1 ) WHERE NOT EXISTS ( SELECT 1 FROM ai_prompts WHERE prompt_type = 'rag_chunking' AND version_number = 1 ) ON DUPLICATE KEY UPDATE prompt_type = prompt_type;