- LLM มักมีความแม่นยำไม่คงที่ในงานที่ซับซ้อน งานวิจัยนี้ตรวจสอบว่าสามารถยกระดับประสิทธิภาพได้ด้วยเพียง sampling-voting โดยไม่ต้องเพิ่มโครงสร้างเพิ่มเติมหรือไม่
- Agent Forest เป็นวิธี ensemble แบบเรียบง่ายที่รันคำถามเดียวกันหลายครั้งเพื่อรวบรวมคำตอบ แล้วเลือกคำตอบสุดท้ายด้วยเสียงข้างมาก
- ใน GSM8K เมื่อขนาด ensemble เท่ากับ 15 Llama2-13B ทำความแม่นยำได้ใกล้เคียงกับ Llama2-70B และ Llama2-70B กับ GPT-3.5-Turbo ก็เข้าใกล้โมเดลคู่เทียบที่แข็งแกร่งกว่า
- วิธีนี้สามารถ ผสานได้อย่างอิสระ กับวิธีแบบ CoT หรือเฟรมเวิร์กความร่วมมือหลายเอเจนต์ จึงช่วยเพิ่มประสิทธิภาพบนเทคนิคเดิมได้
- ระดับการปรับปรุงเห็นได้ชัดเป็นพิเศษใน งานที่ยาก และโมเดลที่อ่อนกว่า ทำให้มีโอกาสเพิ่มประสิทธิภาพต่อค่าใช้จ่ายได้โดยไม่ต้องออกแบบพรอมป์ที่ซับซ้อน
ความแม่นยำของ LLM ที่ไม่นิ่งในงานซับซ้อน
- LLM แสดงความสามารถสูงในแอปพลิเคชันหลากหลาย เช่น การสร้างภาษา ความเข้าใจภาษา และการให้เหตุผล แต่ใน งานที่ซับซ้อน ยังยากที่จะให้คำตอบที่ถูกต้อง
- งานวิจัยเพื่อปรับปรุงประสิทธิภาพที่ผ่านมาใช้แนวทางหลัก ๆ คือวิธี ensemble และเฟรมเวิร์กความร่วมมือของเอเจนต์ LLM หลายตัว
- LLM-Debate จัดให้เอเจนต์ LLM หลายตัวอภิปรายคำตอบสุดท้ายของโจทย์เลขคณิต ทำให้ประสิทธิภาพการให้เหตุผลสูงกว่าเอเจนต์เดี่ยว
- CoT-SC สร้าง thought chain หลายเส้นทางแล้วเลือกคำตอบที่มีความสอดคล้องในตัวเองมากที่สุด เป็นวิธีที่ปรับปรุงประสิทธิภาพการให้เหตุผลเหนือ CoT ที่ใช้ thought chain เดียว
- ผลลัพธ์ก่อนหน้าก็พบปรากฏการณ์ที่ประสิทธิภาพเพิ่มขึ้นเมื่อจำนวนเอเจนต์หรือจำนวน thought chain เพิ่มขึ้น แต่ คุณสมบัติการสเกล ของจำนวนเอเจนต์ LLM พื้นฐานเองยังไม่ได้ถูกศึกษาอย่างเพียงพอในฐานะหัวข้อวิจัยแยกต่างหาก
วิธีการทำงานของ Agent Forest
- Agent Forest ใช้ขั้นตอน sampling-voting แบบเรียบง่ายเพื่อดูผลของการเพิ่มจำนวนเอเจนต์ LLM ต่อประสิทธิภาพ
- การทำงานแบ่งเป็นสองขั้นตอน
- ป้อนคำถามของงานซ้ำ ๆ ให้กับ LLM เดี่ยวหรือเฟรมเวิร์กความร่วมมือเอเจนต์ LLM หลายตัว เพื่อสร้างผลลัพธ์หลายชุด
- ใช้ การโหวตเสียงข้างมาก กับผลลัพธ์ที่สร้างขึ้นเพื่อกำหนดผลลัพธ์สุดท้าย
- ขั้นตอนนี้ได้รับแรงบันดาลใจจาก CoT-SC แต่ไม่พึ่งพาการออกแบบเส้นทาง CoT ที่ซับซ้อน
- ชื่อนี้เป็นการคารวะ Random Forest แบบดั้งเดิม
ผลลัพธ์บน GSM8K และงานหลายประเภท
- การทดลองดำเนินการกับ LLM หลากหลายขนาดและหลายชุดข้อมูลที่ครอบคลุมงานด้านการให้เหตุผลและการสร้าง
- โดยรวมแล้ว เมื่อขนาด ensemble หรือ จำนวนเอเจนต์ เพิ่มขึ้น ประสิทธิภาพของ LLM ก็สามารถดีขึ้นได้
- ผลลัพธ์ GSM8K ใน Figure 1 แสดงว่า Llama2-13B, Llama2-70B และ GPT-3.5-Turbo มีความแม่นยำเพิ่มขึ้นเมื่อขนาด ensemble ใหญ่ขึ้น
- ที่ขนาด ensemble 15 Llama2-13B ทำความแม่นยำได้เทียบเคียงกับ Llama2-70B
- ที่ขนาด ensemble 15 และ 20 Llama2-70B และ GPT-3.5-Turbo แสดงความแม่นยำที่เทียบเคียงได้กับโมเดลคู่เทียบที่แข็งแกร่งกว่าแต่ละตัว
- แถบความคลาดเคลื่อนในรูปแสดงค่า standard error
- แม้แต่ LLM ขนาดเล็ก เมื่อนำ ensemble แบบง่ายมาใช้ ก็สามารถให้ประสิทธิภาพเทียบเคียงหรือดีกว่า LLM ขนาดใหญ่กว่าได้
การปรับปรุงประสิทธิภาพที่ต่อยอดบนเทคนิคเดิมได้
- Agent Forest เป็นแนวทางที่สามารถ ผสานได้อย่างอิสระ กับวิธีปรับปรุงประสิทธิภาพ LLM แบบซับซ้อนที่มีอยู่แล้ว
- สำหรับวิธีแบบ CoT สามารถแนบเข้าไปเหมือนปลั๊กอินเพื่อสร้างการปรับปรุงประสิทธิภาพเพิ่มเติมได้
- แม้เมื่อเทียบกับวิธีที่ซับซ้อน Agent Forest เพียงอย่างเดียวก็สามารถทำประสิทธิภาพได้เทียบเคียงในกรณีส่วนใหญ่
- สามารถได้ผลลัพธ์ที่แข่งขันได้โดยไม่ต้องออกแบบพรอมป์ด้วยมือเพิ่มเติมหรือใช้เฟรมเวิร์กความร่วมมือที่ซับซ้อน
ผลตามระดับความยากและการปรับให้เหมาะสม
- การเพิ่มประสิทธิภาพเห็นได้ชัดกว่าใน งานที่ยาก และโมเดลที่อ่อนกว่า
- อิทธิพลของความยากของปัญหาต่อผลของ Agent Forest ถูกวิเคราะห์แยกเป็นสามมิติ
- ความยากโดยเนื้อแท้ ของปัญหา
- ความยาวของขั้นตอนการให้เหตุผล
- ความน่าจะเป็นล่วงหน้าของคำตอบที่ถูกต้อง
- การทดลองที่ปรับแต่ละมิติช่วยยืนยันคุณลักษณะที่ส่งผลต่อประสิทธิผลของ Agent Forest
- จากคุณลักษณะที่ยืนยันได้ ผู้วิจัยยังพัฒนากลยุทธ์การปรับให้เหมาะสมเพิ่มเติมเพื่อให้ผลของ “More Agents” ปรากฏชัดขึ้น
- โค้ดสาธารณะมีให้ที่
https://github.com/MoreAgentsIsAllYouNeed/AgentForest
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ดูเหมือนว่ามีคนที่ยังไม่ได้อ่านบทความวิจัยนี้อย่างถี่ถ้วน
บทความนี้แทบจะหักล้างแนวคิดเรื่องการจัดวางหลายเอเจนต์อย่าง Chain-of-thought หรือ LLM-Debate
ทางเลือกที่บทความเสนอคือการส่งคำถามเดียวกันไปยัง LLM ตัวเดิมหลายครั้ง โดยไม่แชร์บริบทระหว่างคำถาม แล้วคำนวณความคล้ายกันระหว่างคำตอบเพื่อเลือกคำตอบที่พบบ่อยที่สุด
ถ้า LLM ให้ทั้งภาพหลอนและคำตอบที่ถูกต้องปนกัน คำตอบที่ถูกต้องก็น่าจะคล้ายกัน ส่วนภาพหลอนก็น่าจะกระจัดกระจายอย่างสับสน ฟังดูสมเหตุสมผล
แต่ปรากฏว่าอัลกอริทึมง่าย ๆ นี้ทำงานได้ดีพอ ๆ กับอัลกอริทึมแบบหลายเอเจนต์อื่น ๆ และบางครั้งก็ดีกว่าด้วย
กล่าวคือ เทคนิคหลายเอเจนต์อื่น ๆ ที่ใช้พรอมป์ตอันชาญฉลาดไม่ได้ทำอะไรเป็นพิเศษนัก การปรับปรุงส่วนใหญ่น่าจะมาจากการรัน LLM หลายครั้งแล้วสั่งให้ “เลือกคำตอบที่ดีที่สุด” มากกว่า
มานานแล้วที่การจำลองสภาพอากาศจะรันโมเดลซ้ำ ๆ โดยปรับพารามิเตอร์อินพุตทีละน้อย ทิ้งค่าผิดปกติ แล้วนำมาหาค่าเฉลี่ย ซึ่งก็ทำงานได้ค่อนข้างดี
LLM โดยทั่วไปก็มี seed แบบสุ่ม หรือก็คือค่า temperature ดังนั้นถ้าใส่อินพุตเดียวกันแล้วเฉลี่ยเอาต์พุต ก็อาจได้ค่าประมาณที่ดีกว่า
Lorenz system ยังให้เบาะแส หรืออาจถึงขั้นคำอธิบายว่าเหตุใดปัญหาภาพหลอนจึงอาจแก้ไม่ได้
เมื่อยอมรับมุมมองนี้ ก็จะเห็นได้อย่างรวดเร็วว่า LLM แทบจะเป็นทางตันบนเส้นทางสู่ปัญญาประดิษฐ์ทั่วไป
การจำลองไม่ใช่การอีมูเลต และโอกาสที่ LLM จะมีปัญญาก็พอ ๆ กับโอกาสที่การพยากรณ์อากาศจะควบคุมสภาพอากาศได้
โดยปกติไลบรารีเฉพาะตัวหนึ่งทำงานในรูปแบบที่ผิดปกติมากและไม่มีเอกสารกำกับ แต่พอถามหาตัวอย่าง ก็จะได้โค้ดฟังก์ชันปลอมที่ดูดีและเข้าใจง่าย ซึ่งถ้าไลบรารีนั้นทำงานแบบนั้นจริง ๆ ก็คงไม่จำเป็นต้องมีตั้งแต่แรก
การรันคำถามแบบนั้นหลายครั้งดูไม่น่าจะช่วยได้
หากนำผลจากตัวพยากรณ์หลายตัวมาหาค่าเฉลี่ยหรือให้โหวตเพื่อเลือกค่าทำนายที่พบบ่อยที่สุด ก็จะลด noise ของการทำนายได้โดยเลือกส่วนร่วมของการทำนายหลาย ๆ แบบ
แต่เรารู้อยู่แล้วว่านั่นไม่ได้รับประกันว่าจะเป็นคำตอบที่ถูกต้อง แล้วการรันหลายครั้งจะดีกว่าได้อย่างไร?
ตัวมันเองก็ถือว่าดี แต่ตำนานเมืองหรือตำนานทางวัฒนธรรมก็น่าจะขึ้นอันดับสูงด้วย
แม้จะเป็นความผิดพลาดแบบมนุษย์มาก ๆ แต่ก็ยังเป็นความผิดพลาดอยู่ดี
ผมคิดว่าการจะก้าวข้ามจุดนี้ ต้องสร้าง world model ค้นหาความขัดแย้ง และหา evidence ใหม่เพื่อคลี่คลายความขัดแย้งนั้น
ในที่สุดก็มาแล้ว
ผมพูดมาราว 16 เดือนแล้วว่าไม่ควรหมกมุ่นกับการทำให้เอเจนต์เดี่ยวตอบถูกทุกอย่าง แต่ควร จัดเอเจนต์เป็นลำดับชั้น ดีใจที่ตอนนี้มีบทความวิจัยให้ชี้อ้างแล้ว
อีกจุดที่น่าสนใจคือ diminishing returns ของแต่ละงานจะราบลงอย่างรวดเร็วที่ขนาดใกล้เคียงกับจำนวนคนในประชุมมนุษย์ที่เหมาะสม: https://www.researchgate.net/figure/18-Optimal-Meeting-Sizes...
ถ้าทดลองจำนวนเอเจนต์ด้วยช่วงที่ละเอียดกว่านี้ ก็อยากรู้ว่าจะใกล้เคียงกับตัวเลขเหล่านั้นแค่ไหน
ในอนาคตก็อยากเห็นด้วยว่าประสิทธิภาพจะเพิ่มขึ้นอีกเท่าใดเมื่อ fine-tune เอเจนต์แต่ละตัวให้มีเป้าหมายต่างกันเล็กน้อย
แค่ตั้งค่า temperature ของแต่ละเอเจนต์ให้ต่างกันก็น่าจะช่วยเพิ่มประสิทธิภาพได้
ดีใจมากที่ชุมชนนักวิจัยเริ่มขยับไปในทิศทางนี้
SLIM agents ของ LLMWare ก็น่าดู: https://github.com/llmware-ai/llmware/tree/main/examples/SLI...
มันโฟกัสแทบจะตรงประเด็นนี้เลย โดยเชื่อม LLM หลายตัวที่รันในเครื่อง
อีกหัวข้อดี ๆ ที่เกี่ยวข้องกันคือความจำเป็นของ deterministic sampling ตามการใช้งานของโมเดล
คำศัพท์อาจจะไม่เป๊ะนัก แต่ทีม LLMWare ทำวิดีโอ 2 ตอนที่ดีเกี่ยวกับเรื่องนี้ไว้: https://www.youtube.com/watch?v=7oMTGhSKuNY
ผมคิดว่า LLM ขนาดเล็กเฉพาะทางคือหนทางข้างหน้า
ขอเสริมว่าไม่ได้มีความเกี่ยวข้องใด ๆ กับพวกเขา แค่คิดว่าเป็นโปรเจกต์ที่เจ๋งจริง ๆ
มีเวอร์ชันของตัวเราเองสัก 5 หรือ 8 ตัววนเวียนอยู่ในกะโหลก และหนึ่งในนั้นทำหน้าที่เป็นผู้กำกับดูแลในระดับหนึ่ง
crewAI เป็นตัวอย่างหนึ่ง
ดูเหมือนจะเกี่ยวข้องกับตอนของ Edward Chang ใน ACM ByteCast เมื่อไม่นานมานี้
เป็นตอนที่ Edward Chang รองศาสตราจารย์ประจำภาควิชาวิทยาการคอมพิวเตอร์ Stanford University มาร่วมรายการ: https://learning.acm.org/bytecast/ep50-edward-y-chang
ถ้าไม่อยากฟัง ก็มีสคริปต์ให้อ่านด้วย
แนวทางที่เขาใช้คือ แทนที่จะใช้รูปแบบถาม/ตอบทั่วไปของ LLM ในปัจจุบัน ให้ LLM หลายตัวคุยกันเองเกี่ยวกับหัวข้ออภิปราย และให้มนุษย์ทำหน้าที่เป็น ผู้ดำเนินรายการ
เขาบอกว่าด้วยทรัพยากรเท่าเดิม คำตอบสุดท้ายที่ LLM หลายตัวได้จากการสนทนากันมีทั้งความเที่ยงและความถูกต้องดีขึ้นอย่างมาก
แค่ให้ LLM แต่ละตัวแก้ปัญหาอย่างเป็นอิสระ แล้วเลือกคำตอบที่ได้รับความนิยมที่สุดก็พอ
ยังไม่ได้ทำ benchmark แต่รู้สึกว่าค่อนข้างน่าเชื่อ
เช่น กำหนดให้เอเจนต์แต่ละตัวเป็น “ผู้เชี่ยวชาญ” ต่างสาขาย่อยของคณิตศาสตร์: นักทฤษฎีบทพิสูจน์, ผู้เชี่ยวชาญพีชคณิตนามธรรม ฯลฯ
มันช่วยได้อยู่ แต่ อัตราส่วนสัญญาณต่อสัญญาณรบกวน สูง และเอเจนต์จำนวนมากก็พูดประเด็นเดิมซ้ำ ๆ
มีจุดหนึ่งที่ทำให้หงุดหงิดในงานวิจัย mixture of experts ทั้งหมดนี้
แค่ดู บทนำสู่อัลกอริทึมแบบสุ่ม หรือการให้เหตุผลเชิงความน่าจะเป็นพื้นฐาน ก็จะเห็นว่า ถ้าพารามิเตอร์ temperature มากกว่า 0 การ query LLM จำนวน N ครั้งแล้วเลือกผลลัพธ์ด้วยเสียงข้างมาก โดยทั่วไปน่าจะทำงานได้ดีกว่าถามครั้งเดียวแล้วเลือกผลลัพธ์นั้น
ถ้าผสม LLM หลายตัวที่ปรับให้เชี่ยวชาญต่างกัน ก็น่าจะปรับปรุงเพิ่มได้อีก และในกรณีนั้นอาจรันที่ temperature 0 ได้
หรือจะใช้วิธีแบ่งงานเป็นงานย่อยให้ดีกว่าอย่างที่บทความนี้เสนอ
แต่เท่าที่ผมเห็น ยังไม่มีใครวัดเชิงปริมาณจริง ๆ ว่าประโยชน์ตามสมมติฐานเหล่านี้เหนือกว่าวิธีสุ่มทำซ้ำแบบง่าย ๆ แค่ไหน
โดยเฉพาะอย่างยิ่ง สำหรับกลยุทธ์การโหวตหรือวิธีผสมบางแบบ หรือแม้แต่กับโมเดลบางตัว วิธีแบบ MoE อาจแย่กว่าการทำซ้ำแบบไร้เดียงสาอย่างเข้มงวดก็ได้
ผมไม่ใช่นักวิจัย LLM ออกจะเป็นพลเมืองที่กังวลมากกว่า จึงอาจพลาดอะไรไปก็ได้
แต่ก็แปลกที่ดูเหมือนนักวิจัย LLM จะลืมบทแรกของ Motwani/Raghavan กันไปแล้ว
ถ้าดูกราฟแบบคร่าว ๆ ประโยชน์ส่วนใหญ่มาจาก เอเจนต์ 10 ตัว และเพิ่มขึ้นอีกเล็กน้อยที่ 20 ตัว หลังจากนั้นผลตอบแทนก็เริ่มลดลง
ดูเหมือนว่าแค่เพิ่มจำนวนเอเจนต์เข้าไปเรื่อย ๆ ไม่น่าจะแก้ปัญหาได้
มี repository สาธารณะอยู่: https://anonymous.4open.science/r/more_agent_is_all_you_need...
prompt ที่ใช้ใน benchmark อยู่ที่นี่: https://anonymous.4open.science/r/more_agent_is_all_you_need...
น่าสนใจมาก
อยากเห็น benchmark เอเจนต์ที่ใช้ LLM แบบนี้แต่ใช้ชุดเครื่องมือด้วย
นี่ไม่ใช่วิธีที่แพงมากและไม่ยั่งยืนหรือ?
โมเดลล่าสุดน่าจะเริ่มมีผลตอบแทนลดลงอยู่แล้ว ดังนั้นผมเห็นด้วยกับกระแสที่ว่า MoE คือทางไปต่อ
แต่ปริมาณคำนวณของ prompt เดียวไม่ได้เพิ่มขึ้นทันทีเป็น 7~15 เท่า หรือ?
แค่อ่านคอมเมนต์บน ๆ ตอนนี้ไม่กี่อัน ก็รู้สึกว่าโมเดลธุรกิจของบริษัทที่ให้บริการ LLM นั้นประหลาด
เหมือนบริการรถที่ต้องเรียก n ครั้งถึงจะพาเราจาก A ไป B ได้ หรือผงซักฟอกที่ต้องทา n ครั้ง เสื้อผ้าถึงจะ “อาจจะ” สะอาด
ถ้าบริษัทรับเงินเพื่อให้ “ปัญญาประดิษฐ์” มันไม่สมเหตุสมผลกว่าหรือที่จะจ่ายเฉพาะคำตอบที่ถูกต้อง?
ถ้าให้บริการรถ ก็ควรจ่ายเงินเมื่อพาไปถึงปลายทางเท่านั้นไม่ใช่หรือ?
ถ้ามันล้มเหลวบ่อยพอ เกณฑ์ที่มนุษย์หรือระบบอัตโนมัติแบบดั้งเดิมทั่วไปจะดีกว่าน่าจะต่ำลงมากไม่ใช่หรือ?
ผมคิดว่าฟองสบู่นี้จะแตกในลักษณะนี้
ผมไม่สงสัยเลยว่า LLM เป็นเครื่องมือที่ก้าวกระโดด แต่ยกเว้นการใช้งานที่แคบมาก ๆ แล้ว ผมยังสงสัยอย่างจริงจัง
บางทีบทเรียนอาจเป็นว่า วิธีแบ่งความรับผิดชอบของเอเจนต์ LLM มีโมเดลความล้มเหลวเหมือนองค์กรมนุษย์แบบเดิม
ถ้าไม่สามารถส่งมอบสิ่งที่ตกลงกันไว้ ลูกค้าก็เรียกร้องให้แก้ไขได้
ถ้าคนขับแท็กซี่พาไปเส้นทางที่ซับซ้อนโดยไม่จำเป็น คิดเงินเกิน หรือไม่พาไปถึงจุดหมาย คุณก็ร้องเรียนบริษัทแท็กซี่ได้
ถ้าซักผ้าออกมาไม่สะอาด ก็ขอให้ซักใหม่
แต่กิจกรรมจำนวนมากมีความเสี่ยงหรือผลลัพธ์ไม่แน่นอนโดยธรรมชาติ
เพราะมีปัจจัยที่ไม่มีใครควบคุมได้เสมอ
ทนายความไม่สามารถสัญญาว่าจะชนะคดี แต่ต้องทำอย่างดีที่สุดเพื่อว่าความให้
แพทย์ไม่ได้รับประกันว่าคุณจะกลับมาสุขภาพดี
คนขับแท็กซี่คนไหนก็ไม่รับประกันว่าจะถึงปลายทางตรงเวลา แต่จะพาคุณไปถึงปลายทาง
Atlassian ไม่ได้รับประกันว่าถ้าใช้ managed JIRA instance แล้วจะส่งมอบตามกำหนด release ได้ แต่จะพยายามเต็มที่เพื่อป้องกันข้อมูลสูญหาย
โดยพื้นฐานแล้ว บริษัทที่ขายสิทธิ์เข้าถึงแชตบอตก็คงไม่รับประกันว่าจะให้ผลลัพธ์ที่ถูกต้อง
อาจรับประกันได้แค่ระดับ availability
ต่อให้ ensemble เอเจนต์ GPT-3.5 มากแค่ไหน ความแม่นยำก็ยังต่ำกว่า การเรียก GPT-4 ครั้งเดียว
แค่ต้องจัดองค์ประกอบให้ถูกต้อง