สรุปคลิป Youtube: Codex and the future of coding with AI — the OpenAI Podcast Ep. 6
1. จุดเริ่มต้นของการเขียนโค้ดด้วย AI และ GPT-3
- สัญญาณแรกของการใช้ LLM เขียนโค้ดเกิดขึ้นในยุคของ GPT-3 อย่างคุณ Greg Brockman ผู้ร่วมก่อตั้ง OpenAI เล่าว่า เขาเห็นโมเดลสามารถเติมเต็มโค้ด Python ให้สมบูรณ์ได้จาก แค่ชื่อฟังก์ชันและคำอธิบายสั้นๆ (docstring) ในตอนนั้นเองที่ทีมงานรู้ว่า แนวคิดนี้จะไปได้ไกลและจะกลายเป็นเรื่องใหญ่
- พวกเขาถึงกับตั้งเป้าหมายที่ดูท้าทายในตอนนั้นว่า อยากให้ AI สามารถเขียนโค้ดที่ต่อเนื่องกันได้ถึง 1,000 บรรทัด ซึ่งเป็นเป้าหมายที่ทำสำเร็จแล้ว
2. ทำไมการเขียนโค้ดจึงกลายเป็นจุดที่ OpenAI ให้ความสำคัญที่สุด
- แม้ว่าเป้าหมายหลักของ OpenAI คือการสร้างปัญญาประดิษฐ์ทั่วไป (AGI) ซึ่งโดยปกติจะเน้นการพัฒนาความสามารถทุกด้านไปพร้อมๆ กัน แต่การเขียนโค้ดถือเป็น “ข้อยกเว้น” มาโดยตลอด OpenAI มีโครงการที่แยกออกมาโดยเฉพาะเพื่อมุ่งเน้นข้อมูลด้านการเขียนโค้ด, ตัวชี้วัดต่างๆ, และทำความเข้าใจประสิทธิภาพของโมเดลในการเขียนโค้ดโดยเฉพาะ การให้ความสำคัญนี้เกิดขึ้นจากความต้องการทั้งจากภายนอกและภายในองค์กรเองที่ต้องการใช้เครื่องมือนี้ให้เกิดประโยชน์สูงสุด
3. “Harness” คืออะไร และทำไมจึงสำคัญสำหรับ Agent
- Harness คือ โครงสร้างพื้นฐานที่เชื่อมต่อ AI (เปรียบเสมือนสมอง) เข้ากับเครื่องมือและ Environment ต่างๆ เพื่อให้โมเดลสามารถลงมือปฏิบัติงานได้จริง ทำให้ AI เป็นผู้ร่วมงานที่แท้จริง
- ความสำคัญของ Harness ถูกค้นพบตั้งแต่การสาธิต Codex ครั้งแรกๆ เพราะการเขียนโค้ดไม่เหมือนกับงานด้านภาษาอื่นๆ โค้ดที่สร้างขึ้นมาจะต้องถูกนำไปรันและเชื่อมต่อกับเครื่องมือต่างๆ ได้จริง
4. บทเรียนจาก GitHub Copilot และความหน่วง (Latency)
- การร่วมมือกับ GitHub เพื่อสร้าง Copilot ในปี 2022 ทำให้ได้สัมผัสประสบการณ์การมี AI ช่วยทำงานในขั้นตอนการเขียนโค้ดเป็นครั้งแรก
บทเรียนสำคัญที่ได้คือ “ความหน่วง (Latency) เป็นฟีเจอร์สำคัญของผลิตภัณฑ์” สำหรับฟีเจอร์ช่วยเติมโค้ดอัตโนมัติ ระบบจะต้องตอบสนองภายใน 1,500 มิลลิวินาที
- สิ่งนี้นำไปสู่การตัดสินใจที่ต้องเลือกระหว่างโมเดลที่ฉลาดน้อยแต่เร็ว กับโมเดลที่ฉลาดกว่ามากอย่าง GPT-4 แต่ช้ากว่า ซึ่งวิธีแก้คือการปรับเปลี่ยน Harness และ Interface ให้เหมาะสมกับโมเดลที่ฉลาดแต่ช้ากว่าได้
5. การทดลองกับ Terminal, IDE และ Agent แบบอะซิงโครนัส (Async) OpenAI ได้ทดลองสร้างเครื่องมือช่วยเขียนโค้ดในหลาย “รูปแบบ” (form factor) พวกเขาทดลองกับ Agent ที่ทำงานแบบอะซิงโครนัส (async) ซึ่งสามารถทำงานบนคลาวด์ได้จากระยะไกล ทำให้ผู้ใช้สามารถปิดแล็ปท็อปแล้วปล่อยให้ Agent ทำงานต่อไปได้ นอกจากนี้ยังมีการสร้างต้นแบบที่ทำงานได้โดยตรงใน Terminal และในโปรแกรมแก้ไขโค้ด (IDE) ปัจจุบันพบว่าผู้ใช้ขั้นสูงมักใช้ Terminal สำหรับงานที่ซับซ้อน ส่วน IDE จะเหมาะกับการทำงานกับไฟล์หรือโปรเจกต์เฉพาะเจาะจงมากกว่าเพราะมีหน้าตาที่สวยงามและใช้งานง่ายกว่า
6. เครื่องมือภายในอย่าง 10x และ Codex code review OpenAI ได้พัฒนาเครื่องมือสำหรับใช้งานภายในองค์กรหลายอย่าง เช่น “10x” ซึ่งเป็นเครื่องมือที่ทำงานใน Terminal และช่วยเพิ่มประสิทธิภาพการทำงานของพนักงานได้ถึง 10 เท่า อีกเครื่องมือที่สำคัญมากคือ Codex สำหรับการรีวิวโค้ด (Code Review) เครื่องมือนี้ถูกสร้างขึ้นเพื่อแก้ปัญหาคอขวดจากการที่มีโค้ดจำนวนมากที่ต้องรอการตรวจสอบจากคน มันสามารถวิเคราะห์โค้ดได้ลึกถึงเจตนาของผู้เขียน ตรวจสอบส่วนที่เกี่ยวข้อง และหาบั๊กที่แม้แต่นักพัฒนามือดีที่สุดก็อาจมองข้ามไป ในตอนแรกพนักงานรู้สึกกังวล แต่เมื่อได้ใช้งานจริงกลับพบว่ามีประโยชน์มากจนรู้สึกเหมือนสูญเสีย “เกราะป้องกัน” ไปเมื่อระบบล่ม
7. ทำไม GPT-5 Codex ถึงทำงานที่ซับซ้อนนานหลายชั่วโมงได้ GPT-5 Codex เป็น GPT-5 เวอร์ชันที่ถูกปรับแต่งมาโดยเฉพาะสำหรับ Codex harness ทำให้โมเดลและเครื่องมือทำงานร่วมกันเป็น Agent หนึ่งเดียวอย่างสมบูรณ์ การปรับแต่งนี้ทำให้โมเดลมีความสามารถในการทำงานต่อเนื่องได้ยาวนานขึ้น และมีความ “อึด” ที่จำเป็นสำหรับงานซับซ้อนอย่างการปรับแก้โครงสร้างโค้ดขนาดใหญ่ (refactoring) จากการทดลองใช้ภายใน พบว่ามันสามารถทำงานต่อเนื่องได้นานถึง 7 ชั่วโมง เพื่อแก้ไขปัญหาทั้งหมด ทำให้เทสรันผ่าน และทำงาน refactoring จนเสร็จสมบูรณ์
8. การเติบโตของการทำ Refactoring และกรณีการใช้งานในองค์กร การปรับแก้โครงสร้างโค้ดขนาดใหญ่ (refactoring) ถูกมองว่าเป็นหนึ่งใน “กรณีการใช้งานที่สำคัญที่สุดสำหรับองค์กร” (killer use case for enterprise) การทำงานอัตโนมัติอย่างการย้ายระบบ (migration) สามารถเปลี่ยนแปลงวงการได้มหาศาล เช่น การย้ายระบบที่เขียนด้วยภาษาเก่าอย่าง COBOL ที่หาโปรแกรมเมอร์ได้ยาก นอกจากนี้ยังมีกรณีการใช้งานอื่นๆ ที่สำคัญ เช่น การอัปเดตแพตช์ความปลอดภัย และการให้ AI สร้างเครื่องมือใหม่ๆ ขึ้นมาใช้เอง ซึ่งจะช่วยเพิ่มประสิทธิภาพการทำงานได้อย่างต่อเนื่อง
9. อนาคตของวิศวกรซอฟต์แวร์แบบ Agentic วิสัยทัศน์ในอนาคตคือโลกที่จะมี Agent จำนวนมหาศาล ทำงานอยู่บนคลาวด์ โดยมีมนุษย์คอยกำกับดูแลและชี้นำเพื่อสร้างมูลค่าทางเศรษฐกิจ ในอนาคต การทำงานอาจมีลักษณะเหมือนการที่เราตื่นเช้ามาจิบกาแฟพร้อมกับคอยตอบคำถามหรือรีวิวงานให้กับ Agent ที่ทำงานให้เราอยู่ AI จะกลายเป็น “เพื่อนร่วมงาน” ที่แท้จริง สามารถช่วยงานเราได้ทั้งแบบอยู่ข้างๆ และทำงานใหญ่ๆ จากระยะไกลได้ บทบาทของมนุษย์จะเปลี่ยนจากการทำงานซ้ำซากไปสู่การคิดระดับสูงขึ้น เช่น การวางแผนและแบ่งงานให้ Agent ทำ
10. ความปลอดภัย การกำกับดูแล และการปรับ Agent ให้สอดคล้องกับเจตนาของมนุษย์ ความท้าทายที่สำคัญอย่างยิ่งในอนาคตคือการทำให้ Agent มีความปลอดภัยและสอดคล้องกับเป้าหมายของเรา มนุษย์จะต้องเป็นผู้ควบคุมเสมอ ด้วยเหตุนี้ เครื่องมืออย่าง Codex CLI จึงถูกตั้งค่าให้ทำงานในสภาพแวดล้อมจำลอง (sandbox) เป็นค่าเริ่มต้น เพื่อป้องกันการแก้ไขไฟล์โดยไม่ได้รับอนุญาต ปัญหาทางเทคนิคที่สำคัญคือ “การกำกับดูแลในวงกว้าง” (scalable oversight) ซึ่งคือการที่มนุษย์จะสามารถบริหารจัดการและเชื่อใจ Agent จำนวนมากที่เขียนโค้ดให้เราได้อย่างไร โดยไม่จำเป็นต้องอ่านโค้ดทุกบรรทัด
11. ภาพของการเขียนโค้ด (และพลังการประมวลผล) ในปี 2030 โลกในปี 2030 มีแนวโน้มที่จะเป็นโลกที่มี “ความอุดมสมบูรณ์ทางวัตถุ” จากความช่วยเหลือของ AI แต่ในขณะเดียวกันก็จะเป็นโลกที่ “ขาดแคลนพลังการประมวลผลอย่างสิ้นเชิง” (absolute compute scarcity) ความต้องการพลังประมวลผลจะสูงมาก เพราะทุกคนอาจต้องการ GPU ส่วนตัวเพื่อรัน Agent ของตัวเอง ซึ่งอาจหมายถึงความต้องการ GPU เกือบ 1 หมื่นล้านตัวทั่วโลก AI จะไม่ได้ถูกใช้แค่เพื่อเขียนโค้ดเพิ่มขึ้น แต่จะถูกใช้เพื่อปรับปรุงโค้ดที่มีอยู่ให้ดีขึ้น, หาบั๊ก, และสร้างระบบที่เรียบง่ายแต่ทรงพลังกว่าเดิม
12. คำแนะนำ: ทำไมตอนนี้ยังเป็นช่วงเวลาที่ดีในการเรียนเขียนโค้ด
ตอนนี้เป็นช่วงเวลาที่ยอดเยี่ยมในการเรียนเขียนโค้ด สิ่งที่สำคัญที่สุดคือการเรียนรู้ที่จะใช้ AI ควบคู่ไปกับการเขียนโค้ด เครื่องมืออย่าง Codex ทำให้การเรียนรู้ภาษาโปรแกรมใหม่ๆ เป็นเรื่องสนุกและรวดเร็วขึ้นมาก AI สามารถเร่งกระบวนการเรียนรู้โดยช่วยตอบคำถามที่เราอาจไม่รู้ด้วยซ้ำว่าควรถาม และป้องกันไม่ให้เราเสียเวลาไปกับการสร้างสิ่งที่ผิดพลาดขึ้นมาใหม่ อย่างไรก็ตาม พื้นฐานด้านวิศวกรรมซอฟต์แวร์ยังคงเป็นสิ่งสำคัญอย่างยิ่ง เพราะคนที่ประสบความสำเร็จที่สุดคือคนที่มีพื้นฐานที่แข็งแกร่งและใช้ AI เป็นเครื่องมือช่วยในการทำงานตามแผนที่วางไว้อย่างดี