5億個token之後,我們得出關於GPT的七條寶貴經驗


聲明:本文來自於微信公眾號 機器之心(ID:almosthuman2014),作者:機器之心,授權站長之傢轉載發佈。

ChatGPT 正確的使用姿勢。

自 ChatGPT 問世以來,OpenAI 一直被認為是全球生成式大模型的領導者。2023年3月,OpenAI 官方宣佈,開發者可以通過 API 將 ChatGPT 和 Whisper 模型集成到他們的應用程序和產品中。在 GPT-4發佈的同時 OpenAI 也開放其 API。

一年過去,OpenAI 的大模型使用體驗究竟如何,行業內的開發者怎麼評價?

最近,初創公司 Truss 的 CTO Ken Kantzer 發佈一篇題為《Lessons after a half-billion GPT tokens》的博客,闡述在使用 OpenAI 的模型(85% GPT-4、15% GPT-3.5)處理完5億個 token 之後,總結出的七條寶貴經驗。

機器之心對這篇博客進行不改變原意的編譯、整理,以下是博客原文內容:

經驗1:prompt,少即是多

我們發現,如果 prompt 中的信息已經是常識,那麼該 prompt 不會幫助模型產生更好的結果。GPT 並不愚蠢,如果您過度指定,它實際上會變得混亂。

這與編碼不同,編碼中的一切都必須是明確的。

舉一個讓我們感到困擾的例子:

pipeline 的一部分讀取一些文本塊,並要求 GPT 將其分類為與美國50個州之一相關。這不是一項艱巨的任務,可以使用字符串 / 正則表達式,但有足夠多奇怪的極端情況,因此需要更長的時間。所以我們的第一次嘗試大致是這樣的:

Here'sablockoftext.Onefieldshouldbe"locality_id",anditshouldbetheIDofoneofthe50states,orfederal,usingthislist:

這有時會起作用(約超過98% 的情況),但失敗的情況足以讓我們不得不進行更深入的挖掘。

在調查時,我們註意到字段「名稱」始終返回州的全名,盡管我們沒有明確要求它這樣做。

因此,我們改用對名稱進行簡單的字符串搜索來查找狀態,然後模型就一直運行良好。

總而言之,GPT 顯然知道50個州。當 prompt 更加模糊時,GPT 的質量和泛化能力都可以提高,這太瘋狂 —— 這是高階思維的典型標志。

經驗2:不需要 langchain

你隻需要 chat API,不需要 langchain,甚至可能不需要 OpenAI 去年在其 API 中發佈的任何其他內容。

Langchain 是過早抽象的完美例子。我們開始認為我們必須使用它。但相反,數百萬個 token 之後,我們可能在生產中使用3-4個非常多樣化的 LLM 函數,而我們的 openai_service 文件中仍然隻有一個40行的函數:

defextract_json(prompt,variable_length_input,number_retries)

我們使用的唯一 API 是 chat API。我們不需要 JSON 模式、函數調用等等(盡管我們做所有這些),我們甚至不使用系統 prompt。gpt-4-turbo 發佈時,我們更新代碼庫中的一個字符串。

這就是強大的廣義模型的美妙之處 —— 少即是多。

該函數中的40行代碼大部分都是圍繞 OpenAI API 被關閉的500s/socket 的錯誤處理。

我們內置一些自動截斷功能,因此不必擔心上下文長度限制,我們有自己專有的 token 長度估計器。

ifs.length>model_context_size*3

在存在大量句點或數字的極端情況下(token ratio <3characters /token),這種方法會失敗。所以還有另一個專有的 try/catch 重試邏輯:

ifresponse_error_code=="context_length_exceeded"

我們已經依靠上述方法取得很大進展,並且該方法足夠靈活,可以滿足我們的需求。

經驗3:通過流式 API 改善延遲並向用戶顯示變速輸入的單詞是 ChatGPT 一項重大的用戶體驗創新

我們曾經認為這隻是一個噱頭,但實際上用戶對「變速輸入字符」的反應非常積極 —— 這感覺就像是人工智能的鼠標 / 光標用戶體驗時刻。

經驗4:GPT 不擅長產生零假設

「如果找不到任何內容,則返回空輸出」—— 這可能是我們遇到的最容易出錯的 prompting 語言。在此情況下,GPT 不僅會經常出現幻覺而不返回任何內容,還會導致「缺乏信心」,返回空白的次數比應有的要多。

我們大多數的 prompt 都是以下形式:

“Here’s a block of text that’s making a statement about a company, I want you to output JSON that extracts these companies. If there’s nothing relevant, return a blank. Here’s the text: [block of text]”

有一段時間,我們會遇到 bug,[文本塊] 可能為空,幻覺不時出現。順便說一句,GPT 很喜歡幻想面包店,這裡有一些很棒的面包店:

  • 陽光面包店

  • 金糧面包店

  • 極樂面包店

幸運的是,解決方案是修復該 bug,並在沒有文本的情況下根本不向其發送 prompt。

經驗5:「上下文窗口」命名不當

「上下文窗口」隻會因輸入而變大,而不會因輸出而變大。

一個鮮為人知的事實是,GPT-4的輸入窗口可能有128k token,但輸出窗口卻隻有區區4k!

我們經常要求 GPT 返回 JSON 對象的列表 —— 一個 json 任務的數組列表,其中每個任務都有一個名稱和一個標簽,而 GPT 無法返回超過10項。

我們最初認為這是因為上下文窗口大小是4k,但我們發現10個項目,可能隻有700-800個 token,GPT 就會停止。

經驗6:向量數據庫和 RAG / 嵌入對我們普通人來說幾乎毫無用處

我認為矢量數據庫 / RAG 確實是用於搜索的,以下是一些原因:

1. 相關性沒有界限。有一些解決方案,你可以創建自己的相關性截止啟發式,但它們並不可靠。在我看來,這確實「殺死 RAG」—— 你總是冒著用不相關的結果危害檢索的風險;或者過於保守,錯過重要的結果。

2. 為什麼要將向量放入專門的專有數據庫中,遠離所有其他數據?除非你處理的是 google/bing 規模的工作,否則上下文的丟失絕對不值得進行權衡。

3. 除非你正在進行非常開放的搜索(例如整個互聯網),否則用戶通常不喜歡返回他們沒有直接輸入的內容的語義搜索。

在我看來(未經驗證),對於大多數搜索案例,LLM 的更好用法是使用正常的完成 prompt 將用戶的搜索轉換為分面搜索(faceted-search),甚至是更復雜的查詢。但這根本不是 RAG。

經驗7:幻覺基本上不會發生

我們的每個用例本質上都是「這是一段文本,從中提取一些內容」。通常,如果要求 GPT 提供一段文本中提到的公司名稱,它不會為你提供「隨機公司」(除非文本中沒有公司,即零假設問題)。

類似地,GPT 並不會真正產生幻覺代碼。如果用例完全、詳細,那麼 GPT 實際上非常可靠。

原文鏈接:

https://kenkantzer.com/lessons-after-a-half-billion-gpt-tokens/


相關推薦

2023-03-16

意味著2022年以後發生的事情不會被知曉,而這一缺陷在之後的GPT-3.5也得到修復。但奇怪的是,GPT-4的報告中,OpenAI清晰地寫道:GPT-4通常缺乏對其絕大多數訓練前數據在2021年9月中斷後發生的事件的知識,並且不從其經驗中學習

2023-05-17

通用大語言模型PaLM2的。內部文件顯示,該模型采用3.6萬億個令牌(token)進行訓練。 令牌指的是單詞串,這是訓練大語言模型的重要基礎,因為這可以教給模型如何預測字符串中可能出現的下一個單詞。之前

2023-03-15

在ChatGPT引爆科技領域之後,人們一直在討論AI“下一步”的發展會是什麼,很多學者都提到多模態,我們並沒有等太久。今天凌晨,OpenAI發佈多模態預訓練大模型GPT-4。GPT-4 實現以下幾個方面的飛躍式提升:強大的識圖能力;文

2023-03-27

驗學習能力。從參數規模上來看,Semafor報道稱GPT-4有1萬億個參數,是GPT-3(1750個參數)的6倍大。網友用GPT參數規模大腦神經元做類比:GPT-3的規模與刺蝟大腦類似(1750億個參數)。如果GPT-4擁有1萬億個參數,我們就接近松鼠大

2024-04-19

訓練數據集,為此他們投入大量資源:Llama 3 在超過 15 萬億個公開可用來源的token上進行預訓練,比訓練 Llama 2 時的數據集足足大 7 倍,代碼量是 Llama 2 的 4 倍。其中超過 5% 來自高質量非英語數據,總共涵蓋 30 多種語言,以為

2023-02-25

、130億、330億和650億。其中,LLaMA 65B 和 LLaMA 33B 在 1.4 萬億個 tokens 上訓練,而最小的模型 LLaMA 7B 也經過 1 萬億個 tokens 的訓練。Meta表示,在大多數基準測試中,參數小的多的LLaMA-13B的性能優於GPT3.5的前身GPT3-175B,而LLaMA-65B更可

2023-02-25

言模型的集合,范圍從7B到65B參數。這些模型已經在數萬億個token上進行訓練,並且表明:使用公開可用的數據集,就可以訓練SOTA,而無需專有的或無法訪問的數據集。其中,需要特別註意兩個細節:1. 用更多的數據訓練出來的

2024-06-15

,與人類大腦的高效性形成鮮明的對比。人類大腦擁有860億個神經元,每個神經元又有數千個突觸連接,卻隻需要20瓦的能量,重量還不到三斤;而GPT-4這個萬億參數模型則需要巨大的算力和能源,與人腦相比相差1,000倍之多。此

2023-03-15

“碼農真的快失業,編程不存在。”在今早GPT-4發佈之後,朋友圈刷屏,很多人表達該技術對目前人類生產生活的影響。GPT-4有多強,GRE考試接近滿分,律考比肩頂級律師,隨手畫個草圖就能做出同款網頁。當國內還在熱議人工

2024-02-16

剛剛,我們經歷LLM劃時代的一夜。Google又在深夜發炸彈,GeminiUltra發佈還沒幾天,Gemini1.5就來。卯足勁和OpenAI微軟一較高下的Google,開始進入高產模式。自傢最強的Gemini1.0Ultra才發佈沒幾天,Google又放大招。就在剛剛,GoogleDeepMind

2024-04-19

中也並非毫無收獲:我通常非常傾向於認為開源對社區和我們都有好處,因為我們會從創新中受益。在過去的一年中,整個 AI 圈都在圍繞開源或閉源的路線爭論不休, 甚至親自下場的馬斯克也通過開源 Grok 1.0 的方式給全世界打

2024-04-12

(Ted Leonard)表示,他正在和多傢科技公司談判,涉及130億個內容(照片和視頻)的授權。每張照片的授權價格在5美分到1美元,視頻則為1美元以上。一位買傢告訴倫納德,他們想要超過10億個視頻,比Photobucket擁有的還多。以現

2024-04-08

他們還想要更多!據說,一位買傢表示,自己想要超過10億個視頻,而這,已經遠遠超出Photobucket能提供的數量。據粗略估計,Photobucket手中握著的數據,很可能價值數十億美元。OpenAI陷起訴風波,版權太敏感現在眼看著,大傢的

2023-12-04

美國大陸市場的增長加快,該公司的業務受到沖擊。合並之後,阿拉斯加航空集團將成為控股公司,阿拉斯加航空和夏威夷航空將繼續以各自的品牌運營。美國航空業的合並遭到美國司法部的強烈反對。今年早些時候,美國司法