自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Toolformer揭秘:大語言模型如何自學成才,掌握工具使用!

人工智能
大語言模型(LLMs)在處理自然語言處理任務時展現(xiàn)出了令人印象深刻的零樣本和少樣本學習能力,但它們在一些基礎(chǔ)功能上表現(xiàn)不佳。為了克服這些限制,一個簡單的方法是讓語言模型能夠使用外部工具。于是Meta AI提出Toolformer,通過簡單的API調(diào)用來教會自己使用外部工具。

大語言模型(LLMs)在處理自然語言處理任務時展現(xiàn)出了令人印象深刻的零樣本和少樣本學習能力,但它們在一些基礎(chǔ)功能上表現(xiàn)不佳,例如算術(shù)運算或事實查找。這些局限性包括無法訪問最新事件的信息、傾向于虛構(gòu)事實、難以理解低資源語言、缺乏進行精確計算的數(shù)學技能,以及對時間進展的不敏感。

為了克服這些限制,一個簡單的方法是讓語言模型能夠使用外部工具,如搜索引擎、計算器或日歷。然而,現(xiàn)有的方法要么依賴大量人工注釋,要么將工具使用限制在特定任務的設置中,這限制了工具在語言模型中的廣泛應用。

于是Meta AI提出Toolformer,通過簡單的API調(diào)用來教會自己使用外部工具。

項目地址:https://github.com/xrsrke/toolformer

1、方法介紹

Toolformer模型的核心方法論在于通過自監(jiān)督學習教會語言模型(LMs)使用外部工具,主要通過以下步驟實現(xiàn):

API調(diào)用的表示

首先是API調(diào)用表示的定義:將每個API調(diào)用表示為一個元組圖片,其中圖片是API的名稱,圖片是對應的輸入。給定一個API調(diào)用c及其對應的結(jié)果r,分別表示不包括和包括其結(jié)果的API調(diào)用的線性化序列為:

圖片

其中,“ <API> ”、“ </API> ”和“→”是特殊標記。圖1展示了一些插入到文本序列中的線性化API調(diào)用的示例。

圖片

訓練數(shù)據(jù)集

給定一個純文本數(shù)據(jù)集圖片,將其轉(zhuǎn)換為一個帶有API調(diào)用的增強數(shù)據(jù)集圖片,具體步驟如下:

圖片

模型微調(diào)

  • API調(diào)用采樣
    對于每個API,設計一個提示(prompt)P(x),鼓勵語言模型(LM)在給定的文本例子圖片上注釋API調(diào)用。例如,對于問答工具,提示會展示如何將問題插入到文本中,并用特定的格式(如"[QA(question)]")來表示API調(diào)用。
    對于文本序列中的每個位置圖片,計算模型在該位置開始API調(diào)用的概率圖片。然后給定一個采樣閾值圖片,保留所有概率圖片的位置,并從中選取最多k個候選位置。
    對于每個選定的位置 i,基于前綴圖片和后綴</API>,從模型M最多獲得m 個API調(diào)用圖片。
    圖片
  • API調(diào)用執(zhí)行
    對所有由M生成的API調(diào)用進行實際執(zhí)行,以獲得相應的結(jié)果rir_iri。不同的API有不同的執(zhí)行方式,例如調(diào)用另一個神經(jīng)網(wǎng)絡、運行Python腳本或使用檢索系統(tǒng)搜索大型語料庫。
  • API調(diào)用過濾
    為了確定哪些API調(diào)用是有益的,Toolformer引入了一種自監(jiān)督損失函數(shù)L來評估API調(diào)用的效果。
    對于序列中的位置i上的API調(diào)用圖片及其結(jié)果圖片,使用加權(quán)交叉熵損失函數(shù)圖片來衡量模型在給定前綴z時對后續(xù)Token的預測能力。具體來說,圖片表示在提供API調(diào)用及其結(jié)果的情況下的損失,圖片表示不提供任何API調(diào)用結(jié)果時的損失。通過比較提供API調(diào)用結(jié)果與否的損失差異來決定是否保留該API調(diào)用。
    圖片
    如果提供API調(diào)用結(jié)果能夠顯著降低模型的預測損失,即圖片,那么這個API調(diào)用就被認為是有用的,并被保留下來。
  • 最后,Toolformer利用經(jīng)過上述步驟處理后的數(shù)據(jù)集圖片來微調(diào)原始的語言模型M。這里的數(shù)據(jù)集圖片包含了原始文本以及有用的API調(diào)用信息。這種方法確保了模型不會失去其通用性和語言建模能力的同時,還獲得了使用外部工具的能力。
  • 在微調(diào)后生成文本時,進行常規(guī)解碼,直到模型生成“→”標記,表示它接下來期望獲得API調(diào)用的結(jié)果。此時,中斷解碼過程,調(diào)用適當?shù)腁PI以獲取響應,并在插入響應和 </API>標記后繼續(xù)解碼過程。

下面是所有的工具及使用示例:

圖片


2、實驗

實驗設置

  • 數(shù)據(jù)集生成:使用CCNet的一個子集作為語言建模數(shù)據(jù)集C,并選擇GPT-J作為語言模型M。另外,為了降低標注C時API調(diào)用的計算成本,為一些API定義了啟發(fā)式規(guī)則,以便篩選出那些更可能從API調(diào)用中受益的文本子集。例如,對于計算器工具,只考慮包含至少三個數(shù)字的文本。
  • 基線模型:實驗比較了以下幾種模型:

    GPT-J:未經(jīng)微調(diào)的標準GPT-J模型。

    GPT-J+ CC:在CCNet子集上微調(diào)但不涉及任何API調(diào)用的GPT-J模型。

    Toolformer:在帶有API調(diào)用注釋的CCNet子集C?上微調(diào)的GPT-J模型。

    Toolformer(disabled):與Toolformer相同,但在解碼時禁用了API調(diào)用。

此外,還對比了兩個更大規(guī)模的模型OPT (66B) 和 GPT-3 (175B),它們分別比其他基準模型大10倍和25倍左右。

LAMA

LAMA任務涉及完成一個缺少事實信息的簡短陳述(例如,日期或地點)。這個任務包括SQuAD、GoogleRE和T-REx子集。Toolformer在這些子集上的性能優(yōu)于基線模型,即使與更大的模型如GPT-3相比也具有競爭力。

圖片

Math Datasets

這個任務測試了模型的數(shù)學推理能力,包括ASDiv、SVAMP和MAWPS等數(shù)學基準測試。Toolformer在這些任務上的性能超過了基線模型,并且在允許API調(diào)用時性能得到進一步提升。這表明模型學會了在需要時調(diào)用計算器工具來輔助計算。

圖片

Question Answering

在問答任務中,Toolformer在Web Questions、Natural Questions和TriviaQA數(shù)據(jù)集上的表現(xiàn)超過了同樣大小的基線模型。Toolformer主要依靠Wikipedia搜索API來找到相關(guān)信息,這表明它學會了如何利用搜索工具來增強其問答能力。

Toolformer仍然落后于更大的GPT-3(175B)模型,這可能是由于搜索引擎的簡單性(在許多情況下,它返回的結(jié)果顯然與給定查詢不匹配)以及Toolformer無法交互使用,例如,如果結(jié)果沒有幫助,重新制定其查詢或瀏覽多個頂部結(jié)果。

圖片

Multilingual Question Answering

多語言問答任務(MLQA)評估了模型在處理多種語言輸入時的能力。Toolformer在所有語言上使用API調(diào)用一致性地提高了性能,表明它學會了如何使用機器翻譯工具來處理非英語問題。

圖片

Temporal Datasets

時間數(shù)據(jù)集任務評估了模型處理與時間相關(guān)的查詢的能力。Toolformer在TEMPLAMA和DATESET數(shù)據(jù)集上超越了基線模型。盡管Toolformer并沒有100%地利用日歷工具,但它更多地使用了Wikipedia搜索來提高性能。

圖片

語言建模能力

Toolformer模型在經(jīng)過API調(diào)用微調(diào)后,其語言建模性能幾乎沒有受到影響

圖片


規(guī)模法則

下面展示了模型規(guī)模如何影響模型的能力,從結(jié)果可以看到,只有當模型參數(shù)量達到大約775M時,模型利用提供的工具的能力才顯現(xiàn)出來。一個例外是主要用于QA基準測試的Wikipedia搜索引擎;作者們推測這是因為該API相對容易使用。盡管隨著模型規(guī)模的增長,模型在不使用API調(diào)用的情況下解決任務的能力增強,但它們利用提供的API的能力也同時提高。因此,即使對于最大的模型,使用和不使用API調(diào)用的預測之間仍然存在很大的差距。

圖片


3、總結(jié)

這篇文章構(gòu)建了一個工具數(shù)據(jù)集,并用該數(shù)據(jù)集微調(diào)大模型得到Toolformer,增強了大模型調(diào)用工具的能力,但是沒有加入與LLM的交互,如果能夠獲得LLM的思考與反思,通過與環(huán)境的交互可能會有更好的效果。也是比較早的一篇工作了,后來隨著langchain和agent的出現(xiàn),能夠更容易地實現(xiàn)工具調(diào)用。

責任編輯:龐桂玉 來源: 小白學AI算法
相關(guān)推薦

2011-04-02 10:50:36

WebHTML 5

2020-01-21 22:00:34

程序員技能開發(fā)者

2017-01-10 14:59:03

開發(fā)者故事

2016-01-27 10:36:25

程序員自學

2017-02-09 16:52:33

開發(fā)者優(yōu)勢劣勢

2020-11-04 10:21:37

機器學習技術(shù)人工智能

2025-02-25 08:06:05

2015-04-07 13:29:06

編程自學開發(fā)應用

2021-12-22 10:57:26

機器學習人工智能計算機

2024-08-26 08:30:00

谷歌代碼

2020-08-04 08:42:10

Python開發(fā)工具

2017-01-10 10:14:47

新手學習編程

2025-04-07 03:00:00

Dreamer世界模型

2024-08-26 10:00:00

模型數(shù)據(jù)

2019-04-30 14:36:36

程序員技能開發(fā)者

2019-03-07 08:11:56

黑客白帽漏洞

2021-02-18 00:09:23

程序員編程技能

2017-07-06 14:59:27

2021-04-26 09:04:13

Python 代碼音樂

2020-06-16 09:13:27

數(shù)據(jù)科學數(shù)據(jù)大數(shù)據(jù)
點贊
收藏

51CTO技術(shù)棧公眾號