Category: Prompt Engineering

  • Prompt Engineer : ทักษะสำคัญที่ไม่ควรมองข้าม

    Prompt Engineer : ทักษะสำคัญที่ไม่ควรมองข้าม

    มีคนเคยพูดว่า เดี๋ยวนี้เค้าไม่คุยกันถึงเรื่อง Prompt Engineering แล้ว เค้าเลิกพูดแล้ว ….แต่ในปัจจุบัน ผมก็ยังเชื่อว่า หากเราจะให้ AI เป็นผู้ช่วยงานเรา ทักษะนี้ ก็ยังสำคัญ🔊🎤

    ทำไมทักษะนี้ ยังสำคัญ…คนที่ชนะในยุคนี้ คือ ความสามารถในการออกแบบคำสั่งให้ AI ทำสิ่งที่เราต้องการได้ อย่างแม่นยำ

    ทักษะนี้ .. ไม่ใช่การเขียนโค๊ด แต่เป็นศิลปะของ “การคิดอย่างเป็นระบบ + การสื่อสาร + การออกแบบระบบ”

    ทุกคนเข้าถึง และสามารถมี AI ได้เหมือนกัน แต่ไม่ใช่ทุกคน “ใช้มันให้เหนือกว่าได้

    ดังนั้นผมก็ยังยืนยันว่า “Prompt Engineer หรือ นักออกแบบคำสั่ง” ยังสำคัญ โดยจะต้องทักษะที่เรียกว่า

    “Prompt Engineering = ระบบการคิด + การสื่อสาร + การออกแบบระบบ

    Prompt คือ “ระบบการคิด” ไม่ใช่แค่ “ประโยคคำสั่ง”

    เป็นระบบ ที่แสดงให้เห็นว่าเราคิดอย่างไร เราจัดการข้อมูลอย่างไร และ เรามีเป้าหมายอย่างไร

    สรุป ไม่ว่าใครจะว่าอย่างไร ผมก็ยังยืนยันว่า การจะที่เราจะใช้งาน AI เป็นผู้ช่วย ทำสิ่งที่เราต้องการได้อย่างแม่นย้ำ เราจะต้องเป็น Prompt Engineer ที่มีทักษะ Prompt Engineering

    หลาย ๆ คนเข้าใจผิดว่า Prompt Engneer ต้องเก่งโค๊ด ต้องเป็นโปรแกรมเมอร์ ต้องเขียน Python เป็น ต้องเข้าใจ Model Architecture แบบ Transformer ต้อง Debug API ได้ ต้องเรียนจบด้าน Data ต้อง…ต้อง…ต้อง….

    ไม่ต้องครับ.. Prompt Engineer ที่ดี เก่ง ไม่จำเป็นต้องรู้จักแม้คำว่า JSON แต่สิ่งที่เราต้องรู้และเก่ง คือ “การออกแบบการสั่งงาน” ให้แก่ AI อย่างมีเป้าหมาย และให้ได้ผลลัพธ์ที่แม่นกว่าคนทั่วไปคิดว่าจะทำอะไร

    AI ไม่ได้ฉลาดกว่าเรา แค่ “เรายังสั่งมันไม่เป็น”

    องค์ประกอบขอคำสั่งที่ดี (Prompt ที่เม่น)

    1. เป้าหมายชัดเจน (Goal)
    2. ขอบเขตงาน(Scope)
    3. บริบทที่เพียงพอ(Context)
    4. สไตล์และน้ำเสียง(Tone / Style)
    5. ข้อจำกัดหรือเงื่อนไข(Constraints)

    👉 สนใจอ่านเพิ่มได้ที่นี้ Prompt Engineering for Generative AI – ศิลปะและศาสตร์ของการสั่งงาน AI

    ที่มาข้อมูล : หนังสือ Prompt Engineer ทักษะเงินล้านในยุค AI

  • แนวคิดในการออกแบบ Prompt ที่มีประสิทธิภาพ หรือ “Design prompts that work”

    แนวคิดในการออกแบบ Prompt ที่มีประสิทธิภาพ หรือ “Design prompts that work”

    Prompt Engineering คือกระบวนการสร้างและปรับแต่งคำสั่ง (prompt) ที่เฉพาะเจาะจงและละเอียด เพื่อให้ได้การตอบสนองที่ต้องการจากโมเดล AI เชิงสร้างสรรค์. กระบวนการนี้มักถูกเปรียบกับการ “เขียนโค้ดด้วยภาษาอังกฤษ” ซึ่งบ่งชี้ถึงความซับซ้อนและความละเอียดอ่อนที่จำเป็นในการสื่อสารกับปัญญาประดิษฐ์ การทำความเข้าใจและเชี่ยวชาญในทักษะนี้จึงเป็นสิ่งสำคัญอย่างยิ่งในการดึงศักยภาพสูงสุดจาก AI ที่มีอยู่ในปัจจุบัน

    “Design prompts that work”

    สรุปเป็นขั้นตอน 5 ขั้นตอนดังนี้ครับ

    1. Task (ภารกิจ)

    ขั้นตอนนี้คือการกำหนด ภารกิจหลัก ที่คุณต้องการให้ AI ทำอย่างชัดเจนที่สุด คุณต้องบอก AI ว่าคุณต้องการอะไร และต้องการให้มันแสดงออกมาในรูปแบบไหน

    • อธิบายอย่างชัดเจน: ระบุว่าคุณต้องการให้เครื่องมือ AI สร้างอะไร
    • กำหนด Persona: ให้ AI สวมบทบาทเป็นใคร เช่น ผู้เชี่ยวชาญด้านการตลาด, นักเขียนเชิงสร้างสรรค์, หรือที่ปรึกษาด้านการเงิน การกำหนดบุคลิกนี้จะช่วยให้ AI สร้างคำตอบที่เหมาะสมกับบริบทมากขึ้น
    • ระบุ Format: บอกรูปแบบของผลลัพธ์ที่ต้องการ เช่น บทความ, อีเมล, รายชื่อ, ตาราง หรือแม้กระทั่งบทกวี

    ตัวอย่าง: “เขียนอีเมลในฐานะผู้จัดการฝ่ายการตลาด เพื่อแจ้งลูกค้าถึงโปรโมชันใหม่ โดยใช้ภาษาที่กระชับและเป็นกันเอง”

    2. Context (บริบท)

    บริบทคือข้อมูลเพิ่มเติมที่จำเป็นทั้งหมด เพื่อให้ AI เข้าใจและทำงานได้อย่างถูกต้องและตรงตามความต้องการของคุณ

    • ให้รายละเอียดที่จำเป็น: ระบุข้อมูลที่เกี่ยวข้องทั้งหมด เช่น กลุ่มเป้าหมาย, จุดประสงค์, ข้อมูลพื้นฐานของเรื่องที่ต้องการ, หรือข้อจำกัดต่างๆ
    • สร้างความเข้าใจ: ช่วยให้ AI เข้าใจว่าคุณต้องการให้มันทำอะไรในเชิงลึกมากขึ้น

    ตัวอย่าง: “โปรโมชันใหม่นี้สำหรับลูกค้าที่ซื้อสินค้าเกิน 1,000 บาท ภายในสิ้นเดือนนี้เท่านั้น” (ข้อมูลนี้จะช่วยให้ AI ไม่ส่งอีเมลหาลูกค้าที่ไม่ตรงกลุ่มเป้าหมาย)

    3. References (ข้อมูลอ้างอิง)

    หากคุณมีตัวอย่างหรือข้อมูลอ้างอิงที่ต้องการให้ AI นำมาใช้ประกอบการสร้างผลงาน ให้ระบุในขั้นตอนนี้

    • ให้ตัวอย่าง: มอบตัวอย่างรูปแบบประโยค, สไตล์การเขียน, หรือโครงสร้างที่คุณชื่นชอบ
    • ช่วย AI ในการเรียนรู้: การให้ข้อมูลอ้างอิงจะช่วยให้ AI สามารถสร้างผลลัพธ์ที่มีสไตล์หรือโทนเสียงที่ใกล้เคียงกับที่คุณต้องการได้

    ตัวอย่าง: “ให้ใช้ภาษาที่มีลักษณะคล้ายกับตัวอย่างบทความนี้: [แนบลิงก์หรือข้อความตัวอย่าง]”

    4. Evaluate (ประเมินผล)

    หลังจากที่ AI สร้างผลลัพธ์ออกมาแล้ว คุณต้องทำการประเมินว่าผลลัพธ์นั้นมีประโยชน์และตรงตามความต้องการของคุณหรือไม่

    • ประเมินผลลัพธ์: ตรวจสอบความถูกต้อง, ความครบถ้วน, และคุณภาพของผลลัพธ์ที่ได้จาก AI
    • ตัดสินว่ามีประโยชน์หรือไม่: พิจารณาว่าผลลัพธ์ที่ได้สามารถนำไปใช้งานได้จริงตามวัตถุประสงค์ของคุณหรือไม่

    ตัวอย่าง: “ผลลัพธ์ที่ได้ตรงตามที่ต้องการหรือไม่? ภาษาที่ใช้เหมาะสมกับกลุ่มเป้าหมายหรือยัง?”

    5. Iterate (ปรับปรุง)

    หากผลลัพธ์ที่ได้จากการประเมินยังไม่เป็นที่พอใจ คุณต้องกลับไปแก้ไข Prompt และให้ AI ลองสร้างผลลัพธ์ใหม่อีกครั้ง

    • ปรับแต่ง Prompt: ระบุส่วนที่ต้องการแก้ไขหรือทำให้ชัดเจนขึ้นใน Prompt เดิมของคุณ
    • ทำซ้ำจนกว่าจะพอใจ: ทำตามวงจรนี้ไปเรื่อยๆ จนกว่าจะได้ผลลัพธ์ที่ดีที่สุด

    ตัวอย่าง: “ช่วยแก้ไขส่วนท้ายของอีเมลให้สั้นลงและเพิ่มปุ่ม Call to Action ที่ชัดเจนขึ้น”

    ตารางกรอบแนวคิด TCREI

    โดยสรุปแล้ว หลักการที่ใช้ในการจดจำ 5 ขั้นตอนข้างต้นคือ Thoughtfully Create Really Excellent Inputs หรือ TCREI ซึ่งย่อมาจาก Task, Context, References, Evaluate, และ Iterate นั่นเองครับ


    ตัวอย่าง TCREI

    👉การสืบสวนธุรกรรมคริปโต

    Task: ทำหน้าที่เป็นนักสืบสอบสวนด้านอาชญากรรมไซเบอร์ สร้างขั้นตอนติดตามธุรกรรม Bitcoin ที่เกี่ยวข้องกับบัญชีต้องสงสัย พร้อมวิเคราะห์ความเสี่ยงทางกฎหมาย

    Context: คดีเกี่ยวข้องกับการฟอกเงินผ่านตลาดมืด ใช้ข้อมูลจาก Blockchain Explorer (เช่น Blockchair, Mempool.space) ต้องจัดทำรายงานให้พนักงานสอบสวนเข้าใจได้ใน 15 นาที

    References: แนบตัวอย่างรายงานการติดตามธุรกรรมจากคดีเก่า พร้อมรูปแบบตารางที่ใช้สรุป (Transaction ID, Time, Amount, Link)

    Evaluate: ตรวจความครบถ้วนของการระบุเส้นทางการโอน (อย่างน้อย 3 hop), ความถูกต้องของเวลา/จำนวน, การอ้างอิงแหล่งข้อมูล

    Iterate: หากไม่ครบข้อมูล ให้ถามกลับเฉพาะจุดที่ขาด เช่น รายละเอียดวอลเล็ตหรือช่วงเวลาของธุรกรรม


    👉การวิเคราะห์ข้อมูลอาชญากรรมพื้นที่

    Task: ทำหน้าที่เป็นนักวิเคราะห์ข้อมูล สร้าง Heatmap การเกิดคดีลักทรัพย์ในเขตเมืองจากข้อมูลตำรวจ

    Context: ข้อมูลย้อนหลัง 12 เดือน มีพิกัด GPS ของจุดเกิดเหตุ ต้องเน้นช่วงเวลาที่คดีเพิ่มสูงผิดปกติ เพื่อใช้วางกำลังสายตรวจ

    References: แนบตัวอย่าง Heatmap และตารางสรุปที่เคยใช้ในโครงการวิเคราะห์คดีชิงทรัพย์

    Evaluate: ตรวจว่าผลลัพธ์มีการไฮไลต์ช่วงเวลาความเสี่ยงสูง และใช้สเกลสีที่เข้าใจง่าย

    Iterate: หากยังไม่ชัดเจน ให้ปรับการแสดงผลเป็น Time-series + Heatmap ควบคู่กัน

    😊 คิดว่าน่าจะมีประโยชน์นะครับ ของดีจาก Google : พัฒนาโดยผู้เชียวชาญด้าน AI ของ Google ผ่านหลักสูตร “Prompting Essentials”

  • หลักการพื้นฐานของ Prompt ใน Generative AI  เบื้องต้น : part 1

    หลักการพื้นฐานของ Prompt ใน Generative AI เบื้องต้น : part 1

    คำว่า “Prompt” และความสำคัญของมันในบริบทของ “บทนำ” สามารถอธิบายได้ดังนี้:

    1. คำนิยามของ “Prompt”

    • Prompt คืออินพุตที่ให้กับโมเดล Generative AI (GenAI) เพื่อชี้นำผลลัพธ์ของมัน
    • Prompt สามารถประกอบด้วย ข้อความ, รูปภาพ, เสียง หรือสื่อรูปแบบอื่น ๆ
    • แม้ว่า Prompt มักจะมีส่วนประกอบที่เป็นข้อความ แต่สิ่งนี้อาจเปลี่ยนแปลงได้เมื่อรูปแบบที่ไม่ใช่ข้อความกลายเป็นเรื่องปกติมากขึ้น
    • ตัวอย่างของ Prompt ได้แก่:
      • ข้อความ เช่น “เขียนบทกวีเกี่ยวกับต้นไม้” หรือ “เขียนอีเมลสามย่อหน้าสำหรับแคมเปญการตลาดของบริษัทบัญชี”
      • รูปภาพ เช่น ภาพถ่ายกระดาษที่เขียนว่า “10*179 คืออะไร”
      • การบันทึกเสียง เช่น การบันทึกการประชุมออนไลน์พร้อมคำสั่ง “สรุปสิ่งนี้”
    • ในอดีต บางงานวิจัยเคยพิจารณาเฉพาะส่วนหนึ่งของอินพุตเป็น Prompt (เช่น คำว่า “llama” ใน “Translate English to French: llama”) และเรียกส่วนอื่นว่า “คำอธิบายงาน” แต่ปัจจุบัน เอกสารฉบับนี้และงานวิจัยล่าสุดอื่น ๆ อ้างถึงสตริงทั้งหมดที่ส่งไปยัง LLM ว่าเป็น Prompt

    2. ความสำคัญของ Prompt

    • การมีความรู้เกี่ยวกับวิธีสร้างสรรค์, ประเมิน และทำงานอื่น ๆ กับ Prompt ได้อย่างมีประสิทธิภาพนั้น จำเป็นอย่างยิ่งต่อการใช้งานโมเดล GenAI
    • โดยประสบการณ์พบว่า Prompt ที่ดีขึ้นนำไปสู่ผลลัพธ์ที่ดีขึ้นในงานที่หลากหลาย
    • ความสามารถในการส่ง Prompt ไปยังโมเดล โดยเฉพาะอย่างยิ่งการส่ง Prompt ด้วยภาษามนุษย์ ทำให้โมเดลเหล่านี้โต้ตอบและใช้งานได้อย่างยืดหยุ่นในกรณีการใช้งานที่หลากหลาย
    • อย่างไรก็ตาม การใช้ Prompt ยังคงเป็นเรื่องที่เข้าใจได้ไม่ดีนัก และมีเพียงส่วนน้อยของคำศัพท์และเทคนิคที่มีอยู่เป็นที่รู้จักกันดีในหมู่ผู้ปฏิบัติงาน

    3. Prompt Template (เทมเพลต Prompt)

    • Prompt มักถูกสร้างขึ้นผ่าน Prompt Template (เทมเพลต Prompt)
    • Prompt Template คือฟังก์ชันที่มีตัวแปรหนึ่งตัวหรือมากกว่า ซึ่งจะถูกแทนที่ด้วยสื่อบางอย่าง (โดยปกติคือข้อความ) เพื่อสร้าง Prompt
    • จากนั้น Prompt ที่ได้สามารถถือเป็นอินสแตนซ์ของเทมเพลตได้
    • ตัวอย่างเช่น สำหรับงานจำแนกทวีตแบบไบนารี Prompt Template อาจเป็น: “Classify the tweet as positive or negative: {TWEET}” โดยแต่ละทวีตในชุดข้อมูลจะถูกแทรกลงในอินสแตนซ์แยกต่างหากของเทมเพลต เพื่อสร้าง Prompt ให้กับ LLM

    4. ส่วนประกอบของ Prompt: Prompt มีส่วนประกอบทั่วไปหลายอย่างที่มักจะรวมอยู่ด้วย:

    • Directive (คำสั่ง): เป็นเจตนาหลักของ Prompt มักอยู่ในรูปของคำแนะนำหรือคำถาม (เช่น “Tell me five good books to read.”) อาจเป็นคำสั่งที่ซ่อนอยู่ก็ได้ เช่น ในกรณีของ One-Shot ที่มีวัตถุประสงค์เพื่อแปลภาษาอังกฤษเป็นสเปน
    • Examples (ตัวอย่าง): หรือที่เรียกว่า exemplars หรือ shots ทำหน้าที่เป็นตัวสาธิตเพื่อนำทาง GenAI ในการทำงานให้สำเร็จ
    • Output Formatting (การจัดรูปแบบผลลัพธ์): เป็นสิ่งที่ต้องการให้ GenAI แสดงข้อมูลในรูปแบบที่เฉพาะเจาะจง เช่น CSV, Markdown, XML หรือแม้แต่รูปแบบที่กำหนดเอง
    • Style Instructions (คำแนะนำด้านสไตล์): เป็นประเภทของการจัดรูปแบบผลลัพธ์ที่ใช้เพื่อปรับเปลี่ยนสไตล์แทนที่จะเป็นโครงสร้าง (เช่น “Write a clear and curt paragraph about llamas.”)
    • Role (บทบาท): หรือที่เรียกว่า persona เป็นส่วนประกอบที่มักกล่าวถึงและสามารถปรับปรุงการเขียนและสไตล์ข้อความได้ (เช่น “Pretend you are a shepherd and write a limerick about llamas.”)
    • Additional Information (ข้อมูลเพิ่มเติม): มักจำเป็นต้องรวมข้อมูลเพิ่มเติมใน Prompt (เช่น ชื่อและตำแหน่งในกรณีของการเขียนอีเมล) บางครั้งเรียกว่า ‘context’ แต่เอกสารนี้ไม่แนะนำเนื่องจากมีความหมายที่ซ้อนทับกัน

    5. ความท้าทายด้านคำศัพท์

    • คำศัพท์ในวงการ Prompt กำลังพัฒนาอย่างรวดเร็ว
    • มีคำนิยามที่ยังไม่เป็นที่เข้าใจดี (เช่น prompt, prompt engineering) และคำนิยามที่ขัดแย้งกัน (เช่น role prompt vs persona prompt)
    • การขาดคำศัพท์ที่สอดคล้องกันขัดขวางความสามารถของชุมชนในการอธิบายเทคนิคการ Prompt ต่างๆ ที่ใช้อยู่ได้อย่างชัดเจน
    • เอกสารนี้พยายามให้คำศัพท์ที่แข็งแกร่งซึ่งครอบคลุมคำที่ใช้กันทั่วไปส่วนใหญ่ในสาขานี้

    6. ประวัติโดยย่อของ Prompts

    • แนวคิดของการใช้ Natural Language Prefixes หรือ Prompts เพื่อดึงพฤติกรรมและการตอบสนองของโมเดลภาษา มีมาก่อนยุค GPT-3 และ ChatGPT
    • GPT-2 ใช้ Prompt และมีการกล่าวถึงการใช้ครั้งแรกในบริบทของ Generative AI โดย Fan et al. (2018)
    • อย่างไรก็ตาม แนวคิดของ Prompt มีมาก่อนโดยแนวคิดที่เกี่ยวข้อง เช่น Control Codes (Pfaff, 1979; Poplack, 1980; Keskar et al., 2019) และ Prompt การเขียนในวรรณคดี
    • คำว่า Prompt Engineering ดูเหมือนจะเกิดขึ้นเมื่อไม่นานมานี้จาก Radford et al. (2021) และต่อมาเล็กน้อยจาก Reynolds and McDonell (2021)

    โดยสรุป "Prompt" เป็นอินพุตสำคัญที่ใช้ชี้นำ GenAI โดยอาจมีหลายรูปแบบและส่วนประกอบ และการทำความเข้าใจและใช้ Prompt อย่างมีประสิทธิภาพเป็นสิ่งจำเป็นในยุคของ AI ในขณะที่สาขาวิชานี้กำลังพัฒนาและคำศัพท์ยังคงมีการเปลี่ยนแปลงอยู่