目錄
方法介紹
實驗及結果
首頁 科技週邊 人工智慧 當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

Apr 04, 2023 am 11:55 AM
ai gpt-4

GPT-4 的思考方式,越來越像人了。

人類在做錯事時,會反思自己的行為,避免再次出錯,如果讓 GPT-4 這類大型語言模型也具備反思能力,性能不知道要提高多少了。

眾所周知,大型語言模型 (LLM) 在各種任務上已經表現出前所未有的表現。然而,這些 SOTA 方法通常需要對已定義的狀態空間進行模型微調、策略最佳化等操作。由於缺乏高品質的訓練資料、定義良好的狀態空間,優化模型實現起來還是比較難的。此外,模型還不具備人類決策過程所固有的某些特質,特別是從錯誤中學習的能力。

不過現在好了,在最近的一篇論文中,來自美國東北大學、MIT 等機構的研究者提出 Reflexion,該方法賦予智能體動態記憶和自我反思的能力。

為了驗證方法的有效性,研究評估了智能體在AlfWorld 環境中完成決策任務的能力,以及在HotPotQA 環境中完成知識密集型、基於搜尋問答任務的能力,在這兩項任務的成功率分別為97% 和51%。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

論文網址:https://arxiv.org/pdf/2303.11366.pdf

計畫網址:https://github.com/GammaTauAI/ reflexion-human-eval

如下圖所示,在AlfWorld 環境中,房間裡擺設了各種物品,要求讓智能體給出推理計劃以拿到某件物體,下圖上半部分由於智能體低效率的計劃而失敗。經過反思後,智能體意識到錯誤,修正推理軌跡,給出簡潔的軌跡方式(如圖下半部)。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

模型反思有缺陷的搜尋策略:

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

#這篇論文表明,你可以透過要求GPT-4反思「為什麼錯了?」並為自己產生一個新的提示,將這個錯誤原因考慮在內,直到結果正確,從而將GPT-4 的性能提高驚人的30%。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

網友不禁感嘆:人工智慧的發展速度已經超過了我們的適應能力。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

方法介紹

Reflexion 智能體的整體架構如下圖 1 所示,其中 Reflexion 利用 ReAct(Yao et al., 2023)。在第一次試驗中,智能體從構成初始查詢的環境中獲得任務,然後智能體執行 LLM 產生的一系列動作,並從環境中接收觀察和獎勵。對於提供描述型或持續型獎勵的環境,該研究將輸出限制為簡單的二元成功狀態以確保適用性。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

在每個動作a_t 之後,智能體會計算一個啟發性函數h,如下圖所示

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

這個啟發性函數旨在檢測智能體產生訊息幻覺(即虛假或錯誤的訊息)或效率低下,並「告訴」智能體何時需要反思(reflexion),其中t 是time step,s_t 是當前狀態,Ω表示重複動作循環的次數,ε 表示執行動作的最大總數,[a_o, o_0 . . . , a_(t−1), o_(t−1)] 代表軌跡歷史。 repeat 是一個簡單的函數,用於確定產生相同結果的重複動作循環的次數。

如果函數 h 告訴智能體需要反思,那麼智能體會查詢 LLM 以反映其當前任務、軌跡歷史和上次獎勵,然後智能體在後續試驗中會重置環境再重試。如果函數 h 沒有告訴智能體需要反思,那麼智能體會將 a_t 和 o_t 加到其軌跡歷史記錄中,並向 LLM 查詢下一個動作。

如果如果啟發式h 建議在time step t 時進行反思,則智能體會根據其當前狀態s_t、最後的獎勵r_t、先前的動作和觀察[a_0, o_0, . . . , a_t, o_t],以及智慧體現有的工作儲存mem,啟動一個反思過程。

反思的目的是透過反覆試驗來幫助智能體修正「幻覺」和低效率問題。用於反思的模型是一個使用特定的失敗軌跡和理想的反思範例來 prompt 的 LLM。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

智能體會迭代地進行上述反思過程。在實驗中,研究設定在智能體記憶體中儲存的反思最多為 3 次,這是為了避免查詢超出 LLM 的限制。以下幾種情況,運行會終止:

  • 超過最大試驗次數;
  • 未能在兩次連續試驗之間提高表現;
  • 完成任務。

實驗及結果

AlfWorld 提供了六種不同的任務和3000 多個環境,這些任務要求智能體理解目標任務,制定子任務的順序計劃,並在在給定環境中執行操作。

研究在134 個AlfWorld 環境中測試智能體,任務包括尋找隱藏物體(例如,在抽屜裡找到水果刀)、移動物體(例如,將刀移到砧板上),以及用其他物件來操縱另一個物件(例如,在冰箱中冷藏番茄)。 

在沒有反思的情況下,智能體的準確率為 63%,之後再加入 Reflexion 進行比較。結果顯示,智能體在 12 次試驗中能夠處理好 97% 的環境,在 134 項任務中僅有 4 項沒有解決。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

接下來的實驗是在HotPotQA 中進行了,它是一個基於維基百科的資料集,包含113k 個問答對,主要用來挑戰智能體解析內容和推理的能力。

在 HotpotQA 的 100 個問答對測試中,該研究將基礎智能體和基於 Reflexion 的智能體進行比較,直到它們在連續的試驗中無法提高準確性。結果顯示基礎智能體並沒有性能提高,在第一次試驗中,基礎智能體準確率為34%,Reflexion 智能體準確率為32%,但在7 次試驗後,Reflexion 智能體表現大幅改善,性能提升接近30%,大大優於基礎智能體。

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

類似地,在測試模型編寫程式碼的能力時,加入Reflexion 的GPT-4 也顯著優於常規的GPT-4:

當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%

#

以上是當GPT-4反思自己錯了:效能提升近30%,程式設計能力提升21%的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1669
14
CakePHP 教程
1428
52
Laravel 教程
1329
25
PHP教程
1273
29
C# 教程
1256
24
C  中的chrono庫如何使用? C 中的chrono庫如何使用? Apr 28, 2025 pm 10:18 PM

使用C 中的chrono庫可以讓你更加精確地控制時間和時間間隔,讓我們來探討一下這個庫的魅力所在吧。 C 的chrono庫是標準庫的一部分,它提供了一種現代化的方式來處理時間和時間間隔。對於那些曾經飽受time.h和ctime折磨的程序員來說,chrono無疑是一個福音。它不僅提高了代碼的可讀性和可維護性,還提供了更高的精度和靈活性。讓我們從基礎開始,chrono庫主要包括以下幾個關鍵組件:std::chrono::system_clock:表示系統時鐘,用於獲取當前時間。 std::chron

如何理解C  中的DMA操作? 如何理解C 中的DMA操作? Apr 28, 2025 pm 10:09 PM

DMA在C 中是指DirectMemoryAccess,直接內存訪問技術,允許硬件設備直接與內存進行數據傳輸,不需要CPU干預。 1)DMA操作高度依賴於硬件設備和驅動程序,實現方式因係統而異。 2)直接訪問內存可能帶來安全風險,需確保代碼的正確性和安全性。 3)DMA可提高性能,但使用不當可能導致系統性能下降。通過實踐和學習,可以掌握DMA的使用技巧,在高速數據傳輸和實時信號處理等場景中發揮其最大效能。

C  中的實時操作系統編程是什麼? C 中的實時操作系統編程是什麼? Apr 28, 2025 pm 10:15 PM

C 在實時操作系統(RTOS)編程中表現出色,提供了高效的執行效率和精確的時間管理。 1)C 通過直接操作硬件資源和高效的內存管理滿足RTOS的需求。 2)利用面向對象特性,C 可以設計靈活的任務調度系統。 3)C 支持高效的中斷處理,但需避免動態內存分配和異常處理以保證實時性。 4)模板編程和內聯函數有助於性能優化。 5)實際應用中,C 可用於實現高效的日誌系統。

給MySQL表添加和刪除字段的操作步驟 給MySQL表添加和刪除字段的操作步驟 Apr 29, 2025 pm 04:15 PM

在MySQL中,添加字段使用ALTERTABLEtable_nameADDCOLUMNnew_columnVARCHAR(255)AFTERexisting_column,刪除字段使用ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop。添加字段時,需指定位置以優化查詢性能和數據結構;刪除字段前需確認操作不可逆;使用在線DDL、備份數據、測試環境和低負載時間段修改表結構是性能優化和最佳實踐。

怎樣在C  中測量線程性能? 怎樣在C 中測量線程性能? Apr 28, 2025 pm 10:21 PM

在C 中測量線程性能可以使用標準庫中的計時工具、性能分析工具和自定義計時器。 1.使用庫測量執行時間。 2.使用gprof進行性能分析,步驟包括編譯時添加-pg選項、運行程序生成gmon.out文件、生成性能報告。 3.使用Valgrind的Callgrind模塊進行更詳細的分析,步驟包括運行程序生成callgrind.out文件、使用kcachegrind查看結果。 4.自定義計時器可靈活測量特定代碼段的執行時間。這些方法幫助全面了解線程性能,並優化代碼。

數字虛擬幣交易平台top10 安全可靠的十大數字貨幣交易所 數字虛擬幣交易平台top10 安全可靠的十大數字貨幣交易所 Apr 30, 2025 pm 04:30 PM

數字虛擬幣交易平台top10分別是:1. Binance,2. OKX,3. Coinbase,4. Kraken,5. Huobi Global,6. Bitfinex,7. KuCoin,8. Gemini,9. Bitstamp,10. Bittrex,這些平台均提供高安全性和多種交易選項,適用於不同用戶需求。

量化交易所排行榜2025 數字貨幣量化交易APP前十名推薦 量化交易所排行榜2025 數字貨幣量化交易APP前十名推薦 Apr 30, 2025 pm 07:24 PM

交易所內置量化工具包括:1. Binance(幣安):提供Binance Futures量化模塊,低手續費,支持AI輔助交易。 2. OKX(歐易):支持多賬戶管理和智能訂單路由,提供機構級風控。獨立量化策略平台有:3. 3Commas:拖拽式策略生成器,適用於多平台對沖套利。 4. Quadency:專業級算法策略庫,支持自定義風險閾值。 5. Pionex:內置16 預設策略,低交易手續費。垂直領域工具包括:6. Cryptohopper:雲端量化平台,支持150 技術指標。 7. Bitsgap:

deepseek官網是如何實現鼠標滾動事件穿透效果的? deepseek官網是如何實現鼠標滾動事件穿透效果的? Apr 30, 2025 pm 03:21 PM

如何實現鼠標滾動事件穿透效果?在我們瀏覽網頁時,經常會遇到一些特別的交互設計。比如在deepseek官網上,�...

See all articles