34 คะแนน โดย darjeeling 2025-03-12 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

1. ตั้งความคาดหวังอย่างสมเหตุสมผล (Set reasonable expectations)

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

2. คำนึงถึงจุดสิ้นสุดของข้อมูลฝึก (Account for training cut-off dates)

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

3. ความสำคัญของบริบท (Context is king)

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

4. ขอให้เสนอหลายตัวเลือก (Ask them for options)

  • ประเด็นสำคัญ:
    ในช่วงเริ่มต้นของการค้นคว้า สามารถให้ LLM เสนอทางเลือกของการนำไปใช้และตัวอย่างหลายแบบ เพื่อสำรวจตัวเลือกที่เป็นไปได้
  • วิธีใช้งาน:
    ใช้คำถามอย่าง “มีตัวเลือกอะไรบ้าง?” เพื่อดูความเป็นไปได้ทางเทคนิค แล้วค่อยลงรายละเอียดจากตัวเลือกที่เลือกไว้

5. ระบุคำสั่งให้ชัดเจนและเจาะจง (Tell them exactly what to do)

  • ประเด็นสำคัญ:
    เมื่อเขียนโค้ดสำหรับใช้งานจริง ควรให้คำสั่งที่ละเอียดและชัดเจน เพื่อชี้นำให้ทำฟังก์ชันที่ต้องการได้อย่างแม่นยำ
  • วิธีใช้งาน:
    ระบุรายละเอียดให้ชัด เช่น function signature, ไลบรารีที่ต้องใช้, การจัดการข้อยกเว้น เพื่อให้ LLM เขียนโค้ดตามข้อกำหนดเหล่านั้น

6. ต้องทดสอบโค้ดที่มันเขียนเสมอ (You have to test what it writes!)

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

7. รักษาปฏิสัมพันธ์แบบสนทนาไว้ (Remember it’s a conversation)

  • ประเด็นสำคัญ:
    การโต้ตอบกับ LLM ไม่ใช่เรื่องครั้งเดียวจบ แต่เป็นกระบวนการสนทนาแบบวนซ้ำเพื่อปรับปรุงผลลัพธ์
  • วิธีใช้งาน:
    หากผลลัพธ์แรกยังไม่ดีพอ ให้เพิ่มคำสั่งหรือ feedback เพื่อ refactor และปรับปรุงโค้ด

8. ใช้เครื่องมือที่รันโค้ดให้ได้ (Use tools that can run the code for you)

  • ประเด็นสำคัญ:
    สามารถใช้ sandbox ที่รันได้จริงหรือเครื่องมือพัฒนาแบบบูรณาการ เพื่อทดลองรันโค้ดที่ LLM เขียนขึ้นจริง
  • วิธีใช้งาน:
    ใช้เครื่องมือที่มีสภาพแวดล้อมรันอย่างปลอดภัย เช่น ChatGPT Code Interpreter, Claude Artifacts เพื่อตรวจสอบแบบเรียลไทม์

9. เรียนรู้ผ่าน ‘vibe-coding’ (Vibe-coding is a great way to learn)

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

10. ตัวอย่างแบบละเอียดด้วย Claude Code (A detailed example using Claude Code)

  • ประเด็นสำคัญ:
    แสดงผ่านตัวอย่างโปรเจ็กต์จริงว่า Claude Code สะท้อนข้อกำหนดที่เฉพาะเจาะจงและทำงานตามนั้นได้อย่างไร
  • วิธีใช้งาน:
    ศึกษากระบวนการทำงานที่ใช้พรอมป์ต์และ feedback เป็นลำดับขั้น เพื่อทำงานแบบผสม เช่น การสร้างสคริปต์ Python และหน้า HTML

11. ความจำเป็นของการเข้ามารับช่วงโดยมนุษย์ (Be ready for the human to take over)

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

12. เพิ่มความเร็วในการพัฒนาให้สูงสุด (The biggest advantage is speed of development)

  • ประเด็นสำคัญ:
    การใช้ LLM สามารถเพิ่มความเร็วในการสร้างต้นแบบและงานที่ทำซ้ำได้อย่างก้าวกระโดด
  • วิธีใช้งาน:
    ใช้ LLM อย่างเชิงรุกในการตรวจสอบไอเดียตั้งต้นหรือการเขียนโค้ดง่าย ๆ เพื่อลดเวลาพัฒนา

13. ขยายพลังของความเชี่ยวชาญเดิม (LLMs amplify existing expertise)

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

14. ฟีเจอร์เสริม: ตอบคำถามเกี่ยวกับ codebase (Bonus: answering questions about codebases)

  • ประเด็นสำคัญ:
    LLM ยังมีประโยชน์ในการตอบคำถามเกี่ยวกับ codebase หรืออธิบายบางส่วนของโค้ดได้ด้วย
  • วิธีใช้งาน:
    สามารถถามเกี่ยวกับโครงสร้างของโค้ดหรือฟังก์ชันเฉพาะ และขอความช่วยเหลือในการสร้างคำอธิบายหรือเอกสารที่เกี่ยวข้องได้

1 ความคิดเห็น

 
junghan0611 2025-03-27

บล็อกของท่านนี้ยอดเยี่ยมมาก ขอบคุณครับ