- งานวิจัยที่แมป execution trace ของระบบพัฒนาซอฟต์แวร์หลายเอเจนต์ที่ใช้ LLM เข้ากับขั้นตอน SDLC เพื่อวัดโครงสร้างการใช้โทเคน ซึ่งพบว่าการใช้โทเคนไม่ได้กระจุกอยู่ที่การสร้างโค้ดตั้งต้น แต่ไปกระจุกที่ การรีวิวโค้ด และการตรวจสอบความถูกต้อง
- จากซอฟต์แวร์เดเวลอปเมนต์ทาสก์ 30 งานที่ ChatDev ดำเนินการ พบว่าขั้นตอนรีวิวโค้ดใช้โทเคนเฉลี่ย 59.4% มากที่สุด
- องค์ประกอบโทเคนเฉลี่ยของทุกทาสก์คือ input 53.9%, output 24.4%, reasoning 21.6% โดยการส่งต่อบริบทซ้ำๆ ระหว่างเอเจนต์ก่อให้เกิด communication tax ขนาดใหญ่
- ขั้นตอนการเขียนโค้ดมีสัดส่วน output token สูงที่ 58.0% ขณะที่ขั้นตอนจัดทำเอกสารมีสัดส่วน input token สูงที่ 80.2% แสดงให้เห็นว่ารูปแบบการใช้โทเคนแตกต่างกันชัดเจนตามแต่ละช่วงของการพัฒนา
- สรุปว่าจำเป็นต้องมีโปรโตคอลการทำงานร่วมกันของเอเจนต์ที่ใช้โทเคนได้มีประสิทธิภาพมากขึ้น และมีเฟรมเวิร์กการประเมินแบบมาตรฐาน เพื่อการคาดการณ์ต้นทุนและการปรับเวิร์กโฟลว์ให้เหมาะสม
บทคัดย่อ
- ระบบหลายเอเจนต์ที่ใช้ LLM (LLM-MA) ถูกนำมาใช้มากขึ้นเรื่อยๆ เพื่อทำงานวิศวกรรมซอฟต์แวร์ที่ซับซ้อนให้เป็นอัตโนมัติ เช่น requirements engineering, การสร้างโค้ด, และการทดสอบ
- แต่ประสิทธิภาพการดำเนินงานและการใช้ทรัพยากรยังไม่เป็นที่เข้าใจดีพอ ทำให้ต้นทุนและผลกระทบต่อสิ่งแวดล้อมคาดการณ์ได้ยาก ซึ่งเป็นอุปสรรคต่อการใช้งานจริง
- งานนี้วิเคราะห์ execution trace ของซอฟต์แวร์เดเวลอปเมนต์ทาสก์ 30 งานที่เฟรมเวิร์ก ChatDev รันด้วย GPT-5 reasoning model และแมปขั้นตอนภายในเป็นขั้นออกแบบ, เขียนโค้ด, ทำโค้ดให้สมบูรณ์, รีวิวโค้ด, ทดสอบ, และจัดทำเอกสาร
- ผลเบื้องต้นพบว่าขั้นตอนรีวิวโค้ดแบบวนซ้ำใช้โทเคนเฉลี่ย 59.4% มากที่สุด
- input token คิดเป็นสัดส่วนมากที่สุดอย่างสม่ำเสมอที่ค่าเฉลี่ย 53.9% เป็นหลักฐานเชิงประจักษ์ว่าการทำงานร่วมกันของเอเจนต์อาจมีความไร้ประสิทธิภาพสูง
- ต้นทุนหลักของวิศวกรรมซอฟต์แวร์แบบเอเจนต์ไม่ได้อยู่ที่การสร้างโค้ดตั้งต้น แต่กระจุกอยู่ที่กระบวนการปรับปรุงและตรวจสอบอัตโนมัติ
- ระเบียบวิธีนี้สามารถนำไปใช้กับการคาดการณ์ต้นทุน การปรับเวิร์กโฟลว์ และการวิจัยโปรโตคอลการทำงานร่วมกันของเอเจนต์ที่ใช้โทเคนได้มีประสิทธิภาพมากขึ้น
บทนำ
- วิศวกรรมซอฟต์แวร์ขนาดใหญ่กำลังสำรวจการใช้ระบบหลายเอเจนต์ที่อิง LLM เพื่อทำงานอัตโนมัติที่ซับซ้อนตลอดทั้ง SDLC
- เฟรมเวิร์ก LLM-MA จำลองบทบาททีมมนุษย์ เช่น product manager, architect, developer, และ tester ด้วยเอเจนต์ LLM ที่เชี่ยวชาญเฉพาะด้าน และทำงานออกแบบ เขียนโค้ด และตรวจสอบแบบร่วมมือกัน
- โดยหลักการแล้ว ระบบ LLM-MA สามารถแบ่งงานระหว่างเอเจนต์เพื่อเพิ่มความเป็นอิสระและความทนทานได้
- งานวิจัยก่อนหน้านี้ชี้ว่าระบบ LLM-MA ช่วยส่งเสริม divergent thinking, เพิ่มความสามารถด้าน reasoning และ factuality และขยายไปสู่ปัญหาที่เกินความสามารถของเอเจนต์เดี่ยวได้
- ในวิศวกรรมซอฟต์แวร์ มีความเป็นไปได้ที่จะทำเวิร์กโฟลว์แบบ end-to-end ตั้งแต่ requirements ไปจนถึง testing ให้เป็นอัตโนมัติในรูปแบบบูรณาการ
- เฟรมเวิร์ก AGENTTAXO ให้ระบบจัดหมวดหมู่สำหรับวิเคราะห์การกระจายตัวของโทเคนในระบบ LLM-MA ทั่วไป และนำแนวคิด “communication tax” มาใช้อธิบายโอเวอร์เฮดจากการปฏิสัมพันธ์ระหว่างเอเจนต์
- การจัดหมวดหมู่ความล้มเหลวของ MAST ยืนยันว่าปัญหาจำนวนมากในระบบ LLM-MA ไม่ได้มาจากข้อจำกัดของ LLM รายตัว แต่เกิดจากปัญหาด้านการออกแบบและการประสานงานของระบบ เช่น การวนซ้ำของขั้นตอนและการตรวจสอบที่ไม่สมบูรณ์
- งานวิจัยเดิมวิเคราะห์พฤติกรรมของเอเจนต์ในบริบททั่วไป แต่ยังมีช่องว่างความรู้เรื่องประสิทธิภาพการใช้ทรัพยากรของระบบที่ถูกนำไปใช้กับเวิร์กโฟลว์วิศวกรรมซอฟต์แวร์หลายขั้นตอน
- คำถามสำคัญต่อการใช้งานจริงว่า “โทเคนถูกใช้ไปที่ไหน” ยังได้รับคำตอบไม่เพียงพอในโดเมนวิศวกรรมซอฟต์แวร์
- Tokenomics คือคำที่ใช้เรียกการศึกษาประสิทธิภาพการดำเนินงานและการใช้ทรัพยากรของระบบ LLM-MA
- การวิเคราะห์นี้พิจารณาการกระจายการใช้โทเคนโดยแมปขั้นตอนภายในของ ChatDev เข้ากับขั้นตอนการพัฒนา
- ChatDev จำลองบริษัทซอฟต์แวร์เสมือน โดยมีหลายบทบาทเอเจนต์ เช่น programmer และ tester ที่ทำ SDLC ให้เสร็จผ่านการสนทนาหลายรอบ
- มีการเผยแพร่ชุดข้อมูล execution trace ที่คัดสรรแล้ว 30 รายการ พร้อม แพ็กเกจสำหรับทำซ้ำทั้งหมด
การออกแบบการวิจัย
-
เป้าหมายและขอบเขตการวิเคราะห์
- เป้าหมายคือการตรวจสอบเชิงประจักษ์ว่าการใช้โทเคนกระจายตัวอย่างไรเมื่อระบบ LLM-MA ทำงานพัฒนาซอฟต์แวร์แบบ end-to-end
- เป้าหมายของการวิเคราะห์เบื้องต้นคือ ChatDev
- สถาปัตยกรรม “chat chain” ของ ChatDev แสดงโมเดลแบบน้ำตกที่เป็นลำดับชัดเจนคือ ออกแบบ → เขียนโค้ด → ทดสอบ จึงเหมาะกับการแมปเข้ากับขั้นตอนการพัฒนาซอฟต์แวร์
- ChatDev เป็นหนึ่งในเฟรมเวิร์กโอเพนซอร์สที่ได้รับความนิยมและถูกอ้างอิงมาก
-
การคัดสรรชุดข้อมูล
- รัน ChatDev กับซอฟต์แวร์เดเวลอปเมนต์ทาสก์ที่แตกต่างกัน 30 งาน
- พรอมป์ต์รวบรวมมาจาก ProgramDev Dataset ที่ใช้ในงานวิจัย MAST
- พรอมป์ต์ที่เลือกมีตั้งแต่อัลกอริทึมง่ายๆ เช่น การสร้างเลขฟีโบนักชี ไปจนถึงแอปพลิเคชันที่ซับซ้อนกว่า เช่น เกมหมากรุก
- ยืนยันความหลากหลายโดยอิงงานวิจัยล่าสุดที่เสนอว่าจำนวน reasoning token สามารถใช้เป็นตัวชี้วัดแทนความซับซ้อนของทาสก์ได้
- ช่วงการใช้ reasoning token ของ 30 ทาสก์อยู่ระหว่าง 17,280 ถึง 40,000 โทเคน ซึ่งบ่งชี้ว่ามีความหลากหลายของความซับซ้อนเพียงพอสำหรับการวิจัย
-
การเลือกโมเดล
- โมเดลพื้นฐานของเอเจนต์ทั้งหมดคือ GPT-5 reasoning model
- เกณฑ์การเลือกคือความนิยมและความทันสมัยของโมเดล ความเหมาะสมกับกรณีใช้งานแบบเอเจนต์ และความสามารถด้าน reasoning ที่แข็งแกร่งซึ่งสอดคล้องกับความคาดหวังต่อเอเจนต์อัตโนมัติ
- เวอร์ชันโมเดลที่ใช้ในการทดลองคือ
gpt-5-2025-08-07 - พารามิเตอร์
temperatureไม่รองรับในโมเดลนี้ จึงใช้ค่าเริ่มต้น1.0 - หน้าต่างบริบทมีขนาด 400,000 โทเคน และจำนวน output token สูงสุดคือ 128,000 โทเคน
- knowledge cutoff คือ 30 กันยายน 2024
-
ไปป์ไลน์การวิเคราะห์
- ในขั้นตอนเก็บ trace ได้ทำ instrumentation กับ ChatDev เพื่อบันทึก execution trace ทั้งหมดของแต่ละทาสก์ทั้ง 30 งานเป็นล็อก
- เก็บพรอมป์ต์ คำตอบ และจำนวน input, output, reasoning token ของแต่ละการเรียก LLM
- การแมปขั้นตอนเป็นระเบียบวิธีสำคัญที่แปลงขั้นตอนภายในของเฟรมเวิร์ก ChatDev ให้เป็นขั้นตอนการพัฒนาทั่วไป
- การทำ abstraction นี้ช่วยให้วิเคราะห์ได้แบบทั่วไป และสามารถขยายไปยังเฟรมเวิร์ก LLM-MA ด้านวิศวกรรมซอฟต์แวร์อื่นๆ ได้
- การรวมยอดโทเคนทำด้วยสคริปต์ Python
- ทำการ parse trace ที่เก็บมา และรวมจำนวนโทเคนตามขั้นตอนการพัฒนาตลอดการรันทั้ง 30 ครั้ง
- แยกย่อยเป็น input, output, และ reasoning token
-
การแมปขั้นตอนภายในของ ChatDev กับขั้นตอนการพัฒนา
- ขั้นตอนออกแบบสอดคล้องกับ
DemandAnalysis,LanguageChooseโดยเน้นการทำความเข้าใจความต้องการและการตัดสินใจเชิงเทคโนโลยีระดับสูง - ขั้นตอนเขียนโค้ดสอดคล้องกับ
Codingและเกี่ยวข้องโดยตรงกับการเขียนซอร์สโค้ดตั้งต้น - ขั้นตอนทำโค้ดให้สมบูรณ์สอดคล้องกับ
CodeCompleteและใช้เติม placeholder หรือไฟล์โค้ดที่ยังไม่สมบูรณ์ซึ่งเหลือจากขั้นตอนเขียนโค้ด - ขั้นตอนรีวิวโค้ดสอดคล้องกับ
CodeReviewและทำการตรวจสอบ แก้ไข และปรับปรุงโค้ดผ่านการสนทนาแบบวนซ้ำระหว่าง programmer agent กับ code reviewer agent - ขั้นตอนทดสอบสอดคล้องกับ
Testและเน้นการทดสอบระบบแบบไดนามิกเพื่อค้นหาและแก้บั๊กที่กระทบต่อการรันได้จริง - ขั้นตอนจัดทำเอกสารสอดคล้องกับ
EnvironmentDoc,Reflection,Manualและใช้สร้างคู่มือผู้ใช้กับเอกสาร dependency ของสภาพแวดล้อมที่จำเป็น
- ขั้นตอนออกแบบสอดคล้องกับ
ผลการวิจัยและการอภิปราย
-
คำถามวิจัย
- คำถามหลักคือรูปแบบการใช้โทเคนของระบบ LLM-MA ในซอฟต์แวร์เดเวลอปเมนต์ทาสก์
- การเข้าใจ tokenomics ของระบบวิศวกรรมซอฟต์แวร์แบบเอเจนต์มีความสำคัญต่อการนำไปใช้จริงอย่างยั่งยืน
- การใช้โทเคนสูงเชื่อมโยงโดยตรงกับต้นทุนทางการเงิน การใช้พลังงาน และผลกระทบต่อสิ่งแวดล้อมที่เพิ่มขึ้น
- หากระบุตำแหน่งที่โทเคนถูกใช้ภายใน SDLC ได้ ก็สามารถสร้าง “แผนที่ต้นทุน” ที่นำไปใช้กับการคาดการณ์ต้นทุนและการปรับเวิร์กโฟลว์ให้เหมาะสมได้
- การวิเคราะห์ดำเนินไปในสองแกน
- การกระจายตัวของโทเคนรวมตามขั้นตอนการพัฒนาที่แมปไว้ เช่น ออกแบบและเขียนโค้ด
- สัดส่วนของ input, output, reasoning token ภายในแต่ละขั้นตอน
-
ข้อค้นพบ 1: ขั้นตอนรีวิวโค้ดครองการใช้โทเคน
- การใช้โทเคนตลอดกระบวนการพัฒนามีการกระจายตัวที่ไม่สม่ำเสมออย่างมาก
- ขั้นตอนรีวิวโค้ดใช้โทเคนเฉลี่ย 59.4% ของทั้ง 30 ทาสก์ และเป็นช่วงที่ใช้มากที่สุด
- ขั้นตอนทำโค้ดให้สมบูรณ์เกิดขึ้นใน 6 จาก 30 ทาสก์ และใช้โทเคนเฉลี่ย 26.8% ในการรันเหล่านั้น
- ขั้นตอนจัดทำเอกสารใช้เฉลี่ย 20.1% และขั้นตอนทดสอบใช้เฉลี่ย 10.3%
- ขั้นตอนทดสอบเกิดขึ้นใน 12 จาก 30 ทาสก์
- การเขียนโค้ดตั้งต้นใช้เฉลี่ย 8.6% และการออกแบบใช้เฉลี่ย 2.4% ซึ่งถือว่าต้นทุนค่อนข้างต่ำ
- ต้นทุนหลักของวิศวกรรมซอฟต์แวร์แบบเอเจนต์ไม่ได้อยู่ที่การสร้างโค้ดเริ่มต้น แต่อยู่ที่กระบวนการปรับปรุงและตรวจสอบแบบวนซ้ำและอาศัยการสนทนา
- ค่า
nในรูปหมายถึงจำนวนทาสก์จาก 30 งานที่มีการรันขั้นตอนนั้น - ไม่ใช่ว่าทุกขั้นตอนจะถูกรันเสมอไป เพราะเอเจนต์ในระบบหลายเอเจนต์สามารถตัดสินใจเองได้ว่าจะรันขั้นตอนใด
- แถบความคลาดเคลื่อนคือ ±1 ส่วนเบี่ยงเบนมาตรฐาน เพื่อแสดงความแปรปรวนของการใช้โทเคนในแต่ละขั้นตอน
-
ข้อค้นพบ 2: การใช้โทเคนมีศูนย์กลางอยู่ที่ input token
- ทุกขั้นตอนยกเว้นขั้นตอนเขียนโค้ดมีรูปแบบที่ input token สูงกว่า output และ reasoning token อย่างชัดเจน
- องค์ประกอบการใช้โทเคนเฉลี่ยรวมต่อทาสก์คือ input 53.9%, output 24.4%, reasoning 21.6%
- อัตราส่วนประมาณ 2:1 ระหว่าง input token กับ output token เป็นหลักฐานเชิงประจักษ์ที่ชัดเจนของ “communication tax” ที่งานวิจัยก่อนหน้าเสนอไว้
- เอเจนต์ใช้โทเคนไปกับการส่งต่อบริบทขนาดใหญ่ซ้ำๆ ระหว่างการสนทนาเพื่อร่วมมือกัน
- โปรโตคอลการทำงานร่วมกันของเอเจนต์ในปัจจุบันมีความไร้ประสิทธิภาพที่ใช้โทเคนส่วนใหญ่ไปกับการส่งผ่านบริบท มากกว่าการสร้างผลลัพธ์ใหม่
- communication tax อาจเป็นคุณลักษณะโดยกำเนิดของสถาปัตยกรรมหลายเอเจนต์แบบสนทนา และควรเป็นหัวข้อวิจัยเพิ่มเติมในอนาคต
-
ข้อค้นพบ 3: tokenomic profile แตกต่างกันตามขั้นตอนการพัฒนา
- สัดส่วนโทเคนในแต่ละขั้นตอนสร้างรูปแบบเฉพาะของกิจกรรมวิศวกรรมซอฟต์แวร์แต่ละประเภท
- ขั้นตอนเขียนโค้ดเป็นกรณียกเว้นที่เน้น output โดยมี output 58.0% และ input 6.9%
- โครงสร้างที่เน้น output ของขั้นตอนเขียนโค้ดสอดคล้องกับลักษณะงานที่สร้างซอร์สโค้ดยาวจากสเปกการออกแบบที่กระชับ
- ขั้นตอนตรวจสอบและจัดทำเอกสาร เช่น รีวิวโค้ดและจัดทำเอกสาร มีศูนย์กลางอยู่ที่ input
- สัดส่วน input ของรีวิวโค้ดคือ 51.4%
- สัดส่วน input ของการจัดทำเอกสารคือ 80.2%
- ขั้นตอนเหล่านี้ใช้โค้ดเดิมเป็นบริบทขนาดใหญ่ และสร้างผลลัพธ์เชิงวิเคราะห์ที่เล็กกว่า
- token profile ตามขั้นตอนสามารถใช้เป็นแผนที่ต้นทุนตามกิจกรรมวิศวกรรมได้
- ผู้ปฏิบัติงานจึงระบุโอกาสในการคาดการณ์ต้นทุนและเพิ่มประสิทธิภาพกระบวนการได้ดีขึ้น
-
สัดส่วนโทเคนรายขั้นตอน
- สัดส่วนเฉลี่ยของขั้นตอนออกแบบคือ input 60.4%, output 3.6%, reasoning 36.0%
- สัดส่วนเฉลี่ยของขั้นตอนเขียนโค้ดคือ input 6.9%, output 58.0%, reasoning 35.1%
- สัดส่วนเฉลี่ยของขั้นตอนทำโค้ดให้สมบูรณ์คือ input 47.7%, output 41.7%, reasoning 10.5%
- สัดส่วนเฉลี่ยของขั้นตอนรีวิวโค้ดคือ input 51.4%, output 24.7%, reasoning 23.9%
- สัดส่วนเฉลี่ยของขั้นตอนทดสอบคือ input 60.8%, output 20.7%, reasoning 18.4%
- สัดส่วนเฉลี่ยของขั้นตอนจัดทำเอกสารคือ input 80.2%, output 8.3%, reasoning 11.5%
- สัดส่วนเฉลี่ยรวมต่อทาสก์คือ input 53.9%, output 24.4%, reasoning 21.6%
-
อภิปราย
- ผลเบื้องต้นนี้ให้แผนที่ต้นทุนเริ่มต้นของการพัฒนาซอฟต์แวร์แบบเอเจนต์
- ต้นทุนโทเคนที่สูงของขั้นตอนรีวิวโค้ดสามารถตีความได้ว่าเป็น “ต้นทุนของการสนทนา”
- ต้นทุนนี้เกิดขึ้นโดยตรงจากสถาปัตยกรรมแบบสนทนาของระบบ LLM-MA ที่เอเจนต์ต้องส่งบริบทโค้ดทั้งหมดกลับไปกลับมาซ้ำๆ เพื่อปรับปรุงโค้ด
- โปรโตคอลการทำงานร่วมกันของเอเจนต์เพื่อการตรวจสอบในปัจจุบันอาจไร้ประสิทธิภาพอย่างมาก เพราะแม้งานจะต้องแก้เพียงเล็กน้อยก็อาจใช้ทรัพยากรจำนวนมหาศาล
- สิ่งนี้สอดคล้องกับผลของการจัดหมวดหมู่ MAST เรื่องความล้มเหลวในการตรวจสอบและการวนซ้ำของขั้นตอน
- การใช้โทเคนสูงอาจเป็นอาการที่บ่งชี้ว่าระบบเอเจนต์กำลังพยายามฝืนแก้ปัญหาการประสานงานภายในด้วยการสนทนาอย่างเข้มข้น
- ผู้ปฏิบัติงานสามารถประเมินต้นทุนของโปรเจกต์ที่ใช้เอเจนต์ได้ตามประเภทงานที่ต้องทำ
- โปรเจกต์ greenfield ที่มีสัดส่วนการเขียนโค้ดตั้งต้นสูง กับโปรเจกต์ที่เน้น refactoring และ debugging โค้ดเดิม มีโครงสร้างต้นทุนต่างกัน
- ในโปรเจกต์ที่เน้น refactoring และ debugging โค้ดเดิม วงจรรีวิวโค้ดที่มีราคาแพงและเน้น input จะครองต้นทุน
- การใส่ checkpoint แบบ “human-in-the-loop” ก่อนขั้นตอนรีวิวโค้ด สามารถใช้เป็นการตัดสินใจเชิงออกแบบเพื่อป้องกันลูปการวนซ้ำที่มีต้นทุนสูง และเพิ่มประสิทธิภาพทั้งเชิงเศรษฐศาสตร์และการคำนวณ
- วาระการวิจัยสำคัญคือการออกแบบโปรโตคอลการทำงานร่วมกันที่ใช้โทเคนได้มีประสิทธิภาพมากขึ้นสำหรับการตรวจสอบและการปรับปรุง
- ต้องมีแนวทางที่ไปไกลกว่าการส่งบริบททั้งหมดแบบตรงๆ
- จำเป็นต้องมีเฟรมเวิร์กการประเมินที่เป็นมาตรฐานและครอบคลุม
- เฟรมเวิร์กนี้สามารถทำหน้าที่เป็นฐานร่วมสำหรับ benchmark และเปรียบเทียบประสิทธิภาพของสถาปัตยกรรม LLM-MA ที่แตกต่างกัน เช่น hierarchical conversational workflow ของ ChatDev และสายการประกอบแบบ SOP-based ของ MetaGPT
- มันยังอาจทำหน้าที่เป็น “Rosetta Stone” ที่แปลพฤติกรรมเฉพาะของแต่ละเฟรมเวิร์กให้เป็นกิจกรรมวิศวกรรมซอฟต์แวร์สากลได้
ภัยคุกคามต่อความเที่ยงตรงและงานในอนาคต
-
ภัยคุกคามต่อความเที่ยงตรง
- การวิเคราะห์นี้อิงกับระบบ LLM-MA เดียวคือ ChatDev และ LLM เดียวคือ GPT-5 Reasoning Model
- รูปแบบการใช้โทเคนที่สังเกตได้อาจแตกต่างออกไปในสถาปัตยกรรม LLM-MA อื่น หรือ LLM อื่นที่มีประสิทธิภาพด้านโทเคนต่างกัน
- แม้ซอฟต์แวร์เดเวลอปเมนต์ทาสก์ทั้ง 30 งานจะมีความหลากหลาย แต่ก็อาจไม่ได้เป็นตัวแทนของทุกสถานการณ์และทุกระดับความซับซ้อนในการพัฒนาซอฟต์แวร์
- ขนาดของชุดข้อมูลที่คัดสรรมาเกิดจากการขาด benchmark สาธารณะขนาดใหญ่สำหรับ agent trace ที่เฉพาะทางด้านวิศวกรรมซอฟต์แวร์โดยตรง
- การคัดสรรข้อมูลเป็นกระบวนการที่ใช้ทั้งเวลาและต้นทุนสูง
- บางขั้นตอนการพัฒนาถูกรันเพียงใน subset ขนาดเล็กของ 30 ทาสก์
- การทำโค้ดให้สมบูรณ์เกิด
n=6และการทดสอบเกิดn=12จึงถูก trigger ค่อนข้างน้อย - ดังนั้นข้อสรุปเกี่ยวกับ tokenomic profile ของขั้นตอนเฉพาะเหล่านี้อิงกับตัวอย่างขนาดเล็ก อาจมีความเป็นตัวแทนต่ำและมีข้อจำกัดด้านการสรุปทั่วไป
- วิธีแมปขั้นตอนภายในของ ChatDev เข้ากับขั้นตอนการพัฒนาซอฟต์แวร์เป็นการทำ abstraction
- แม้จะเป็นการแมปที่มีเหตุผลและมีประโยชน์สำหรับการสร้างเฟรมเวิร์กการประเมินแบบมาตรฐาน แต่ก็เป็นเพียงหนึ่งในหลายวิธีที่เป็นไปได้ในการแมปกิจกรรมของเอเจนต์
-
บทสรุปและงานในอนาคต
- ในวิศวกรรมซอฟต์แวร์แบบเอเจนต์ ต้นทุนโทเคนไม่ได้กระจายเท่าๆ กัน แต่กระจุกอย่างท่วมท้นอยู่ที่ขั้นตอนรีวิวโค้ดแบบวนซ้ำและอาศัยการสนทนา
- input token ที่ประกอบกันเป็น “communication tax” คิดเป็นสัดส่วนส่วนใหญ่ของการใช้โทเคนทั้งหมด และเป็นพื้นที่สำคัญที่สุดสำหรับการเพิ่มประสิทธิภาพในอนาคต
- งานแรกในอนาคตคือขยายชุดข้อมูลด้วยทาสก์ที่มากขึ้นเพื่อปรับปรุงความสามารถในการสรุปทั่วไป
- งานที่สองคือขยายการวิเคราะห์ไปยัง LLM อื่นเพื่อทำความเข้าใจผลกระทบเฉพาะของแต่ละโมเดล
- งานที่สามคือขยายการวิเคราะห์ไปยังระบบ LLM-MA อื่นเพื่อเปรียบเทียบว่าความต่างของสถาปัตยกรรมส่งผลต่อ tokenomics อย่างไร
- งานที่สี่คือศึกษาความสัมพันธ์ระหว่างรูปแบบการใช้โทเคนกับโหมดความล้มเหลว
- งานที่ห้าคือการพัฒนาและตรวจสอบเพิ่มเติมของเฟรมเวิร์กการแมปขั้นตอนการพัฒนาที่แข็งแรงและใช้ได้ทั่วไป สำหรับ benchmark ประสิทธิภาพของเอเจนต์วิศวกรรมซอฟต์แวร์
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ผมสร้าง ระบบหลายเอเจนต์ ไว้ใช้ส่วนตัว
เวลาให้โจทย์ไปก่อน โมเดลที่เร็วและถูกกว่าจะเป็นฝ่ายตั้งคำถามก่อน แล้วใช้คำตอบนั้นมาปรับแต่งพรอมป์ต์อินพุต
หลังจากนั้นก็เลือกกลยุทธ์ เช่น แบ่งปัญหาออกเป็นส่วน ๆ แล้วให้ผู้ตัดสินขั้นสุดท้ายสรุปข้อสรุป หรือให้หลายเอเจนต์ถกเถียงกันก่อนแล้วผู้ตัดสินค่อยสรุป
วิธีที่ดีที่สุดคือสิ่งที่ผมเรียกว่า all angles โดยรันหลายกลยุทธ์แบบขนาน แล้วให้เมตาผู้ตัดสินขั้นสุดท้ายรวบรวมคำตอบ
ฟีเจอร์ที่เพิ่มเข้ามาไม่นานนี้และมีประโยชน์ที่สุดคือหน้าจอที่ให้ดูความแตกต่างระหว่างแต่ละกลยุทธ์ได้
ผมใช้มันกับเรื่องในชีวิตอย่างการหาที่อยู่อาศัย โรงเรียน และปัญหาครอบครัว
อยากรู้ด้วยว่าใช้กลยุทธ์อะไรบ้าง และต้นทุนต่างกันอย่างไรในแต่ละกลยุทธ์
เป็นแนวไซเบอร์เนติกส์ คือค่อย ๆ เพิ่มชุดไลบรารีสำหรับการตรวจสอบแบบกำหนดแน่นอนและการแก้ไขอัตโนมัติเพื่อให้เอาต์พุตจากพรอมป์ต์มีเสถียรภาพ
“ปัญหา” ที่ไลบรารีชุดนั้นจัดการไม่ได้ก็จะถูกเปิดเผยให้คนที่คุมกระบวนการเห็น
ผมใช้ GitHub Copilot แบบต่อเนื่องเต็มที่อยู่เดือนหนึ่ง แต่หลังเปลี่ยนราคา เดือนถัดมาใช้แค่สองวันโทเค็นก็หมดแล้ว
การเปลี่ยนแปลงแบบหักศอกขนาดนี้ดูเหมือนเป็นสัญญาณว่าราคาโทเค็นถูกตั้งขึ้นแบบตามอำเภอใจ และธุรกิจ AI กำลังเงินสดหมดอย่างรวดเร็ว
มีข่าวลือด้วยว่าอัตรากำไรจาก inference เกิน 70%
ถ้ายก SpaceX เป็นตัวอย่าง ตลอด 6 เดือนที่ผ่านมาเขาขึ้นราคาสินค้าผู้บริโภคโดยรวม แต่ Alphabet กับ Anthropic รวมกันก็จ่ายเกิน 2 พันล้านดอลลาร์ต่อเดือนอยู่แล้ว เลยไม่ใช่ว่าขาดเงิน
Microsoft/GitHub อยู่ในสถานะเอาสินค้าคนอื่นมาแพ็กใหม่ เลยกลายเป็นฝ่ายขาดทุนในที่นี้
โดยทั่วไปแล้วราคาถูกกำหนดจากปัจจัยพื้นฐานหลายอย่าง ไม่ได้แปลว่ามันเป็นอะไรที่ตามอำเภอใจในตัวมันเอง
เช่น ถ้าผู้บริหาร GitHub ใช้เครื่องสุ่มตัวเลขมากำหนดราคาโทเค็น แบบนั้นถึงจะเรียกว่าการตั้งราคาแบบตามอำเภอใจ
ตรงที่บอกว่า “โทเค็นอินพุตคิดเป็นค่าใช้จ่ายเฉลี่ย 53.9% ซึ่งเป็นสัดส่วนมากที่สุด” สำหรับการใช้งานของผม สัดส่วนมันใกล้กับ 10:1 มากกว่า
โทเค็นที่ถูกใช้ไปส่วนใหญ่ท่วมท้นเป็นฝั่งอินพุต และบ่อยครั้งเอเจนต์จะอ่านเป็นล้านโทเค็นเพื่อแก้โค้ดแค่บรรทัดเดียว
ถ้าใกล้ 1:1 หรือฝั่งเอาต์พุตใหญ่กว่า ผมจะมองว่าไม่เอเจนต์มีปัญหา ก็โค้ดเบสยังใหม่หรือว่างเปล่า
โทเค็นที่ไม่ถูกแคชเป็นล้านโทเค็นดูเยอะพอสมควร
เช่นให้โมเดลทำขั้น “บีบอัด” แบบครั้งเดียวโดยดัมพ์ส่วนโค้ดที่เกี่ยวข้องออกมา แล้วใช้ผลนั้นเป็น prefix ที่ถูกแคชสำหรับการเรียกซับเอเจนต์จำนวนมากได้
พอใช้เอเจนต์กับงานเขียนโค้ด มันอยากเขียน unit test เป็นหลักพัน แต่กลับไม่ค่อยมีแนวโน้มจะทดสอบแบบไดนามิก
การทดสอบแบบสแตติกคือพวก lint หรือ type check
ถ้าคุณต้องการการทดสอบแบบไดนามิกชนิดอื่นนอกจาก unit test ก็สงสัยว่าเคยระบุเป็นข้อกำหนดไว้ตั้งแต่ขั้นวางแผนหรือ PRD ไหม
ผลประโยชน์ของพวกเขาไม่ได้ตรงกับผลประโยชน์ของคุณเสมอไป
ในกรณีนี้ก็คืออยากให้คุณใช้เงินโดยไม่จำเป็นกับงานที่ไม่มีประโยชน์
น่าจะเลิกใช้คำเลี่ยงอย่าง “โทเค็น” ได้แล้ว
ผมคิดว่าส่วนหนึ่งที่มันเลี่ยงการทดสอบแบบไดนามิกก็เพราะมันทำให้ช้าลง และอาจทำให้ซอฟต์แวร์หยุดทำงานในจุดที่คาดไม่ถึงได้
ทำให้นึกถึงงานวิจัยจากปีที่แล้วที่ให้ข้อมูลแนะแนวงบประมาณเพื่อเพิ่มประสิทธิภาพ การใช้โทเค็น
[1] https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=Stee...
มันคล้ายไมล์สะสมชดเชยของสายการบิน และในมุมบริษัทก็ไม่มีข้อได้เปรียบเหนือการเช่า เวลา GPU แบบ bare-metal
ถ้าความต้องการ AI ส่วนใหญ่ถูกตอบสนองได้ด้วยฮาร์ดแวร์และโมเดลแบบ on-premise หรือ on-device ก็ชวนสงสัยว่าฟาร์มคอมพิวต์และโมเดลขนาดมหึมาที่มีต้นทุนดำเนินงานสูงแบบนั้นจะยังมีประโยชน์กับอะไร
สุดท้ายลูกค้าที่เหลืออยู่คงมีแต่รัฐบาลขนาดใหญ่ และท้ายที่สุดผู้เสียภาษีก็จะเป็นคนจ่ายเงินหลายพันล้านดอลลาร์ที่กลุ่มผูกขาด AI ลงทุนไป
ผมเขียน โพสต์บน Substack เกี่ยวกับเรื่องนี้ไว้เมื่อเดือนธันวาคม: https://open.substack.com/pub/zacharywhitley/p/the-coming-ag...
เมื่อก่อนบริษัทอย่าง Google จะจ้างวิศวกรโดยดูว่าพวกเขาปรับแต่งโครงสร้างพื้นฐานได้ดีแค่ไหน
อีกไม่นานบริษัทอาจเริ่มดูความสามารถของวิศวกรในการ เพิ่มประสิทธิภาพการใช้โทเค็น AI ก็ได้
ยังไม่แน่ใจว่าความเร็วที่นักพัฒนาหาวิธีใช้โทเค็นเพิ่มจะทันกับความเร็วที่ราคาลดลงหรือไม่
ก็ปฏิบัติกับโทเค็นเหมือนเป็น ค่าสาธารณูปโภค แบบอินเทอร์เน็ต แล้วให้นักวิศวกรจ่ายเอง
มีเรื่องข้างเคียงที่น่าสนใจอยู่เรื่องหนึ่ง ผมอยู่ในประชุมเพื่อพิจารณาผลิตภัณฑ์ใหม่ตัวหนึ่ง ทุกอย่างกำลังไปได้ดีจนมีหน้าจอที่บอกว่าเขาเพิ่ม AI เข้าไปในผลิตภัณฑ์นั้น
แน่นอนว่ามี AI แปะอยู่ และดูชัดมากว่าถูกยัดเข้ามาแบบฝืน ๆ
หนึ่งในจุดที่เห็นชัดคือมีคอลัมน์แสดงจำนวนโทเค็นที่ใช้ในแต่ละคำถาม
ผมถามว่าใครเป็นคนจ่ายค่าโทเค็น เขาตอบว่ารวมอยู่ในไลเซนส์แล้ว ผมเลยถามต่อว่ามีเพดานงบหรือไม่ หรือใช้ได้ไม่จำกัด เขาตอบว่าเป็นคำถามที่ดีและจะกลับไปตรวจสอบ
เหตุผลที่ผมถามก็เพราะเมื่อกี้คำถามง่าย ๆ เกี่ยวกับอุปกรณ์เพียงครั้งเดียว เผาไป 250,000 โทเค็น
ตอนนั้นผมได้ยินผู้บริหารฝั่งโน้นคนหนึ่งพูดเสียงดังว่า “เรากำลังโชว์สิ่งนี้ให้ลูกค้าดูทำไมกัน?” แล้วพวกเราก็หัวเราะกันพอสมควร
บทเรียนที่ได้คือ ค่าใช้จ่ายของการยัด AI เข้าไปในทุกอย่างยังไม่ได้ถูกคำนวณอย่างเหมาะสม และยิ่งไม่ต้องพูดถึงต้นทุนที่แท้จริงของการปฏิบัติการ AI
ทุกอย่างที่มี AI แปะมาจะมีราคาแพงขึ้น แม้คุณจะไม่ได้ต้องการมันก็ตาม
Tokenomics เป็นคำที่ใช้เรียกเศรษฐศาสตร์คริปโตอยู่แล้ว ถึงโทเค็นที่ใช้ใน AI จะเป็นคนละแบบกัน ผมก็ไม่เข้าใจว่าทำไมต้องพยายามนิยามคำนั้นใหม่ด้วย
ลืมกระแสเก่าไปเถอะ อันนี้เองก็จะเก่าในไม่ช้าเหมือนกัน ต้องรีบขึ้นรถก่อนจะสาย
“Web 3.0” ก็มีอยู่ก่อนที่ฝั่งคริปโตจะทำให้ Web3 กลายเป็นคำที่มีศูนย์กลางอยู่ที่คริปโต
เพราะงั้นผมไม่เห็นว่าปัญหาคืออะไร
คำศัพท์ต่าง ๆ ถูกนำกลับมาใช้ใหม่ในบริบทที่ต่างกันอยู่เรื่อย ๆ
อีกอย่าง คนส่วนใหญ่ก็ย้ายออกจากคริปโตไปแล้ว โอกาสที่จะสับสนเลยไม่น่าจะมากนัก