XYZNOT

งานวิจัย · arXiv 2210.03629

ReAct: การผสานพลังระหว่างการให้เหตุผลและการลงมือกระทำในโมเดลภาษา

ReAct: Synergizing Reasoning and Acting in Language Models

เผยแพร่ cs.CLcs.AIcs.LG arXivPDF

อ่านพร้อมคำแปลและ AI

สรุปสามบรรทัด

  1. 🎯 LLMs ที่ใช้ chain-of-thought เพียงอย่างเดียวจะให้เหตุผลแบบแยกขาดและเกิดภาพหลอน ในขณะที่เอเจนต์ที่เน้นลงมือทำอย่างเดียวจะขาดหน่วยความจำใช้งานและการวางแผนเชิงกลยุทธ์
  2. 🔧 ขยายปริภูมิการกระทำของเอเจนต์ด้วยความคิดทางภาษาแบบอิสระสลับกับการกระทำทางกายภาพ/API เพื่อวางแผน ติดตาม และลงมือทำแบบไดนามิก
  3. 📈 ReAct บรรลุความสำเร็จ 71% บน ALFWorld และ 40.0% บน WebShop เหนือกว่าเบสไลน์ imitation/RL พร้อมทั้งลดอาการคิดหลอนในงาน QA ลงได้อย่างมาก

บทคัดย่อ

แม้ว่าโมเดลภาษาขนาดใหญ่ (LLMs) จะแสดงความสามารถอันน่าประทับใจในงานด้านความเข้าใจภาษาและการตัดสินใจเชิงโต้ตอบ แต่ความสามารถในการให้เหตุผล (เช่น chain-of-thought prompting) และการลงมือกระทำ (เช่น การสร้างแผนปฏิบัติการ) มักถูกศึกษาแยกจากกันเป็นหลัก ในบทความนี้ เราสำรวจการใช้ LLMs เพื่อสร้างทั้งร่องรอยการให้เหตุผลและการกระทำเฉพาะสำหรับงานแบบสลับไปมา ซึ่งช่วยให้เกิดการผสานพลังที่ดียิ่งขึ้นระหว่างทั้งสองส่วน โดยร่องรอยการให้เหตุผลจะช่วยให้โมเดลสามารถเหนี่ยวนำ ติดตาม และอัปเดตแผนการกระทำรวมถึงจัดการกับข้อยกเว้นต่างๆ ได้ ในขณะที่การกระทำช่วยให้โมเดลสามารถเชื่อมต่อกับแหล่งข้อมูลภายนอก เช่น ฐานความรู้หรือสภาพแวดล้อม เพื่อรวบรวมข้อมูลเพิ่มเติม เราได้นำแนวทางของเราที่ชื่อว่า ReAct ไปประยุกต์ใช้กับงานด้านภาษาและการตัดสินใจที่หลากหลาย และแสดงให้เห็นถึงประสิทธิภาพที่เหนือกว่าวิธีพื้นฐานระดับ state-of-the-art ตลอดจนช่วยเพิ่มความสามารถในการตีความโดยมนุษย์และความน่าเชื่อถือที่เหนือกว่าวิธีที่ขาดองค์ประกอบด้านการให้เหตุผลหรือการกระทำอย่างใดอย่างหนึ่ง กล่าวคือ ในงานตอบคำถาม (HotpotQA) และการตรวจสอบข้อเท็จจริง (Fever) ReAct สามารถเอาชนะปัญหาการคิดหลอน (hallucination) และการแพร่กระจายของข้อผิดพลาดที่พบได้บ่อยในการให้เหตุผลแบบ chain-of-thought ผ่านการโต้ตอบกับ Wikipedia API อย่างง่าย และสร้างวิถีการแก้ปัญหาที่คล้ายมนุษย์ซึ่งสามารถตีความได้ง่ายกว่าวิธีพื้นฐานที่ไม่มีร่องรอยการให้เหตุผล นอกจากนี้ ในชุดทดสอบการตัดสินใจเชิงโต้ตอบสองชุด (ALFWorld และ WebShop) ReAct ยังทำผลงานได้เหนือกว่าวิธีการเรียนรู้แบบเลียนแบบและการเรียนรู้แบบเสริมกำลัง โดยมีอัตราความสำเร็จสัมบูรณ์สูงกว่า 34% และ 10% ตามลำดับ แม้จะได้รับการพรอมต์ด้วยตัวอย่างในบริบทเพียงหนึ่งหรือสองตัวอย่างเท่านั้น เว็บไซต์โครงการพร้อมโค้ด: https://react-lm.github.io

บทคัดย่อต้นฉบับ (ภาษาอังกฤษ)

While large language models (LLMs) have demonstrated impressive capabilities across tasks in language understanding and interactive decision making, their abilities for reasoning (e.g. chain-of-thought prompting) and acting (e.g. action plan generation) have primarily been studied as separate topics. In this paper, we explore the use of LLMs to generate both reasoning traces and task-specific actions in an interleaved manner, allowing for greater synergy between the two: reasoning traces help the model induce, track, and update action plans as well as handle exceptions, while actions allow it to interface with external sources, such as knowledge bases or environments, to gather additional information. We apply our approach, named ReAct, to a diverse set of language and decision making tasks and demonstrate its effectiveness over state-of-the-art baselines, as well as improved human interpretability and trustworthiness over methods without reasoning or acting components. Concretely, on question answering (HotpotQA) and fact verification (Fever), ReAct overcomes issues of hallucination and error propagation prevalent in chain-of-thought reasoning by interacting with a simple Wikipedia API, and generates human-like task-solving trajectories that are more interpretable than baselines without reasoning traces. On two interactive decision making benchmarks (ALFWorld and WebShop), ReAct outperforms imitation and reinforcement learning methods by an absolute success rate of 34% and 10% respectively, while being prompted with only one or two in-context examples. Project site with code: https://react-lm.github.io

คู่มือการอ่าน

ปัญหาและแรงจูงใจ

โมเดลภาษาขนาดใหญ่ (LLMs) มีความโดดเด่นอย่างมากในการให้เหตุผลผ่าน Chain-of-Thought (CoT) และในการตัดสินใจโดยการส่งออกคำสั่งที่นำไปปฏิบัติได้จริง อย่างไรก็ตาม ความสามารถทั้งสองนี้มักถูกศึกษาแยกขาดจากกัน:

  • การให้เหตุผลแบบ CoT ขาดการยึดโยงกับความเป็นจริง (ungrounded): โมเดลพึ่งพาเพียงการแทนค่าภายในที่คงที่ ทำให้มีแนวโน้มที่จะเกิดการคิดหลอนทางข้อเท็จจริง ขาดข้อมูลที่เป็นปัจจุบัน และเกิดการสะสมแพร่กระจายของข้อผิดพลาด
  • ระบบที่เน้นการกระทำเพียงอย่างเดียว (Action-only) ทำการจับคู่บริบทเข้ากับการกระทำในสภาพแวดล้อมโดยตรง: ระบบเหล่านี้ขาดหน่วยความจำใช้งาน (working memory) ที่ชัดเจนในการกำหนดเป้าหมายเชิงนามธรรม การดูแลเป้าหมายย่อยระหว่างทาง หรือการจัดการกับการเปลี่ยนแปลงสถานะที่ไม่คาดคิด

ด้วยแรงบันดาลใจจากเสียงพูดภายในใจของมนุษย์ (inner speech) บทความวิจัยนี้จึงศึกษาว่าการแทรกขั้นตอนการให้เหตุผลสลับกับการโต้ตอบกับสภาพแวดล้อม จะสามารถสร้างลูปที่เสริมพลังซึ่งกันและกันได้หรือไม่ นั่นคือ การให้เหตุผลช่วยชี้นำการกระทำ ในขณะที่ผลสะท้อนจากการกระทำช่วยยึดโยงการให้เหตุผลเข้ากับโลกความเป็นจริง

แนวคิดหลัก

  • Action Space Augmentation: การขยายปริภูมิการกระทำของเอเจนต์ให้ครอบคลุมความคิดทางภาษา (language thoughts) ซึ่งไม่สร้างผลการสังเกตภายนอก แต่ทำหน้าที่อัปเดตบริบทภายใน
  • รูปแบบความคิดแบบหนาแน่น vs. เบาบาง (Dense vs. Sparse Thought Regimes): ความคิดสามารถเชื่อมโยงกันอย่างแนบแน่น (สลับกันแบบก้าวต่อก้าวสำหรับงาน multi-hop QA) หรือเป็นแบบอะซิงโครนัสและเบาบาง (ใช้เฉพาะเมื่อต้องวางแผนหรือรับมือกับสิ่งที่ไม่คาดคิดในเกมที่มีระยะเวลายาวนาน) ขึ้นอยู่กับลักษณะของงาน
  • Hybrid Reasoning: การผสานความรู้ภายในเชิงพารามิเตอร์ (ผ่าน CoT self-consistency) เข้ากับผลป้อนกลับภายนอกที่ค้นคืนมาได้ (ผ่าน ReAct) ช่วยสร้างสมดุลระหว่างความแม่นยำของข้อเท็จจริงและความยืดหยุ่นในการให้เหตุผล

ระเบียบวิธีวิจัย (พร้อมสมการสำคัญ)

พิจารณาสภาพแวดล้อมเชิงโต้ตอบที่เวลา เอเจนต์จะได้รับผลการสังเกต มีบริบทวิถีการทำงาน และดำเนินการตามนโยบาย

ReAct จะขยายปริภูมิการกระทำเป็น: โดยที่ คือปริภูมิของนิพจน์ภาษาในรูปแบบอิสระ

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

สำหรับงานด้านความรู้ (HotpotQA, FEVER) ชุดการกระทำผ่าน API คือ และสำหรับการตั้งค่าแบบผสม (hybrid setups):

  • : หาก ReAct ทำงานไม่เสร็จสิ้นภายในขั้นตอนที่กำหนด (เช่น 7 ขั้นตอนสำหรับ HotpotQA, 5 ขั้นตอนสำหรับ FEVER) ระบบจะสลับไปใช้ผลการลงคะแนนเสียงข้างมากจาก CoT self-consistency
  • : หากฉันทามติเสียงข้างมากจาก ตัวอย่างลดลงต่ำกว่า ระบบจะสลับไปใช้ ReAct

ผลลัพธ์ (พร้อมตัวเลขสำคัญ)

  • การให้เหตุผลบนฐานความรู้ (PaLM-540B):
    • บน HotpotQA การผสานรวมทั้งสองรูปแบบ () บรรลุค่า Exact Match (EM) 35.1% เมื่อเทียบกับ Standard (28.7%), CoT (29.4%) และ Act (25.7%)
    • บน FEVER วิธี ทำได้ 64.6% Accuracy เทียบกับ Standard (57.1%) และ CoT (56.3%)
    • การวิเคราะห์ข้อผิดพลาดแสดงให้เห็นว่า ReAct มีอัตราการคิดหลอน 0% ในกรณีที่ล้มเหลวบน HotpotQA ในขณะที่การคิดหลอนคิดเป็น 56% ของความล้มเหลวใน CoT
  • การตัดสินใจ (ALFWorld & WebShop):
    • บน ALFWorld วิธี best-of-6 ReAct ทำอัตราความสำเร็จเฉลี่ยได้ 71% (และเฉลี่ยจากทุกพรอมต์ที่ 57%) เหนือกว่า Act-only (ดีที่สุด 45%), การพรอมต์สไตล์ Inner Monologue (ดีที่สุด 53%) และเอเจนต์การเรียนรู้แบบเลียนแบบ BUTLER (ดีที่สุด 37%) ที่เทรนด้วย วิถี
    • บน WebShop วิธี 1-shot ReAct บรรลุ อัตราความสำเร็จ 40.0% และ คะแนนเฉลี่ย 66.6 ชนะเบสไลน์การเรียนรู้แบบเลียนแบบ + การเรียนรู้แบบเสริมกำลัง (สำเร็จ 28.7%, คะแนน 62.4) ที่เทรนด้วยคำสั่งมากกว่า 10,000 รายการ
  • การปรับจูนละเอียด (Finetuning): การทำ Bootstrap ให้กับ PaLM-8B และ PaLM-62B ด้วยวิถีที่ถูกต้องที่สร้างขึ้นเองจำนวน 3,000 วิถี ทำให้ ReAct กลายเป็นโมเดลที่มีประสิทธิภาพสูงสุด โดย PaLM-8B ที่ผ่านการไฟน์จูนด้วย ReAct ทำผลงานได้เหนือกว่าวิธีการพรอมต์ทั้งหมดของ 62B

ข้อจำกัดและคำถามปลายเปิด

  • ข้อจำกัดของการพรอมต์ในบริบท: เนื่องจากข้อจำกัดของขนาดบริบท (context window) LLMs จึงสามารถสังเกตตัวอย่างได้เพียงไม่กี่ตัวอย่าง (1–6 ตัวอย่าง) ทำให้เป็นเรื่องท้าทายในการควบคุมปริภูมิการกระทำขนาดใหญ่จากการพรอมต์เพียงอย่างเดียว
  • การหลุดออกนอกลู่นอกทางของการค้นหาและลูปซ้ำ: ภายใต้การถอดรหัสแบบ greedy ผลการค้นหาที่ไม่ให้ข้อมูลทำให้ ReAct ล้มเหลวถึง 23% ของกรณีที่เกิดข้อผิดพลาด และบางครั้งทำให้โมเดลติดอยู่ในลูปซ้ำเดิม
  • ความปลอดภัยและการเรียกใช้เครื่องมือ: การอนุญาตให้ LLMs ดำเนินการภายนอกในสภาพแวดล้อมเปิดอาจก่อให้เกิดความเสี่ยงจากการกระทำที่ไม่ได้ตั้งใจ (เช่น การทำธุรกรรมบนเว็บที่ไม่ต้องการ หรือการดึงข้อมูลที่ละเอียดอ่อน)

คำศัพท์สำคัญ

ReAct
กระบวนทัศน์ที่อิงตามการพรอมต์ ซึ่งกระตุ้นให้โมเดลภาษาขนาดใหญ่สร้างร่องรอยการให้เหตุผลสลับกับการกระทำเฉพาะโดเมนเพื่อแก้ปัญหาทั่วไป
Chain-of-Thought (CoT)
แนวทางการพรอมต์ที่โมเดลจะส่งออกขั้นตอนการให้เหตุผลภายในก่อนที่จะสร้างคำตอบสุดท้าย โดยไม่ได้ดำเนินการกระทำใดๆ ในสภาพแวดล้อมภายนอก
Action Space Augmentation
การขยายชุดการกระทำแบบไม่ต่อเนื่องของเอเจนต์อย่างเป็นทางการ เพื่อรวมข้อความภาษาธรรมชาติใดๆ โดยกำหนดให้เป็นความคิดที่ไม่ส่งผลเปลี่ยนแปลงสภาพแวดล้อม
Inner Monologue (IM)
แนวทางที่มีมาก่อนและใช้เป็นตัวเปรียบเทียบ โดยความคิดของโมเดลภาษาจะถูกจำกัดอยู่เพียงผลป้อนกลับจากสภาพแวดล้อมภายนอกเป็นหลัก แทนที่จะเป็นการวางแผนเชิงกลยุทธ์ภายในที่ยืดหยุ่น
CoT-SC
การพรอมต์แบบ Chain-of-thought ควบคู่ไปกับความสอดคล้องในตัวเอง (self-consistency) ซึ่งคำตอบจะถูกสุ่มตัวอย่างหลายครั้งด้วยอุณหภูมิ (temperature) ที่ไม่เป็นศูนย์ และคัดเลือกผ่านการลงคะแนนเสียงข้างมาก
ALFWorld
สภาพแวดล้อมเชิงโต้ตอบแบบข้อความที่อิงตามชุดทดสอบ ALFRED ซึ่งทดสอบการแตกเป้าหมายงานบ้านแบบหลายขั้นตอน การนำทาง และการจัดการสิ่งของ
WebShop
ชุดทดสอบการท่องเว็บบนสภาพแวดล้อมเสมือนจริงที่รวบรวมสินค้าจริงจาก Amazon กว่า 1.18 ล้านรายการ โดยประเมินจากความสามารถของเอเจนต์ในการค้นหาและซื้อสินค้าตามคำสั่งที่เป็นข้อความ
Self-Reflection / Thought Editing
การแทรกแซงโดยมนุษย์ (human-in-the-loop) ซึ่งผู้ควบคุมจะแก้ไขหรือชี้นำวิถีของโมเดลโดยการปรับแก้ความคิดทางภาษาที่สร้างขึ้นแบบแมนนวล แทนที่จะปรับค่าน้ำหนักหรือประวัติการกระทำ

คำถามที่พบบ่อย

เหตุใด ReAct จึงมีแนวโน้มที่จะคิดหลอน (hallucination) น้อยกว่า Chain-of-Thought มาตรฐาน?

CoT พึ่งพาเพียงหน่วยความจำเชิงพารามิเตอร์ภายใน ซึ่งมักสร้างข้อเท็จจริงที่ไม่มีอยู่จริงขึ้นมา ในขณะที่ ReAct จะตรวจสอบแหล่งข้อมูลภายนอก (เช่น Wikipedia API) ผ่านการกระทำที่เป็นรูปธรรม ทำให้ความคิดที่เกิดขึ้นในขั้นตอนถัดไปยึดโยงอยู่กับผลการสังเกตที่ค้นคืนมาโดยตรง

ReAct แตกต่างจาก WebGPT หรือ SayCan อย่างไร?

WebGPT และ SayCan มุ่งเน้นไปที่การทำนายการกระทำหรือแผนงานโดยใช้ข้อเสนอแนะจากมนุษย์หรือโมเดล affordance โดยไม่ได้พรอมต์ให้โมเดลดูแล แยกย่อย และปรับเปลี่ยนร่องรอยการให้เหตุผลทางภาษาของตนเองในลูปที่สลับไปมาอย่างชัดเจน

จะเกิดอะไรขึ้นเมื่อการค้นหาไม่ให้ผลลัพธ์ที่เป็นประโยชน์ใน ReAct?

ความล้มเหลวในการค้นหาคิดเป็นประมาณ 23% ของกรณีความล้มเหลวของ ReAct บน HotpotQA โดยบางครั้งโมเดลประสบปัญหาในการปรับแต่งคำค้นหาใหม่และติดอยู่ในลูปการกระทำซ้ำๆ ภายใต้การถอดรหัสแบบ greedy

การแก้ไขความคิดโดยมนุษย์ (human-in-the-loop thought editing) ทำงานอย่างไรใน ReAct?

เนื่องจากร่องรอยการให้เหตุผลเป็นภาษาอังกฤษทั่วไป มนุษย์จึงสามารถตรวจสอบวิถีที่กำลังล้มเหลวและแก้ไขความคิดระหว่างทางหนึ่งหรือสองความคิดได้ทันที ซึ่งช่วยนำพาเอเจนต์ออกจากลูปหรือความเชื่อที่ผิดพลาดได้โดยไม่ต้องทำการปรับจูนพารามิเตอร์ (fine-tuning)

คำอธิบายในหน้านี้เขียนโดย AI จากงานวิจัยและอาจมีข้อผิดพลาด โปรดอ่านต้นฉบับเพื่อดูรายละเอียด

อ่านพร้อมคำแปลและ AI