當前位置: 華文世界 > 科技

大模型智障檢測+1:Strawberry有幾個r紛紛數不清

2024-07-25科技
夢晨 一水 發自 凹非寺量子位 | 公眾號 QbitAI
繼分不清9.11和9.9哪個大以後,大模型又「集體失智」了!
數不對單詞「Strawberry」中有幾個「r」,再次引起一片討論。
GPT-4o不僅錯了還很自信。
剛出爐的Llama-3.1 405B,倒是能在驗證中發現問題並改正。
比較離譜的是Claude 3.5 Sonnet,還越改越錯了。
說起來這並不是最新發現的問題,只是最近新模型接連釋出,非常熱鬧。
一個個號稱自己數學漲多少分,大家就再次拿出這個問題來試驗,結果很是失望。
在眾多相關討論的貼文中,還翻出一條馬斯克對此現象的評論:
好吧,也許AGI比我想象的還要更遠。
路遇失智AI,拼盡全力終於教會
有人發現,即使使用Few-Shot CoT,也就是「一步一步地想」大法附加一個人類操作範例,ChatGPT依然學不會:
倒是把r出現的位置都標成1,其他標成0,問題的難度下降了,但是數「1」依舊不擅長。
為了教會大模型數r,全球網友腦洞大開,開發出各種奇奇怪怪的提示詞技巧。
比如讓ChatGPT使用漫畫【死亡筆記中】高智商角色「L」可能使用的方法。
ChatGPT想出的方法倒是也很樸素,就是分別把每個字母寫出來再一個一個數並記錄位置,總之終於答對了。
有Claude玩家寫了整整3682個token的提示詞,方法來自DeepMind的Self-Discover論文,可以說是連夜把論文給復現了。
整個方法分為兩大階段:先針對特定任務讓AI自我發現推理步驟,第二階段再具體執行。
發現推理步驟的方法簡單概括就是,不光要會抽象的思維方法,也要具體問題具體分析。
這套方法下,Claude給出的答案也非常復雜。
作者補充,花這麽大力氣解決「數r問題」其實並不真正實用,只是在嘗試復現論文方法時偶然測試到了,希望能找出一個能用來回答所有問題的通用提示詞。
不過很可惜,這位網友目前還沒公布完整的提示詞。
還有人想到更深一層,如果要計算文件中straberry出現多少次怎麽辦?
他的方法是讓AI想象有一個從0開始的記憶體計數器,每次遇到這個單詞就往上加。
有人評論這種方法就像在用英語編程。
也有AI可以一次做對
那麽究竟有沒有大模型,可以不靠額外提示詞直接答對呢?
其實不久之前有網友報告,ChatGPT是有小概率能直接答對的,只不過不常見。
谷歌Gemini 大概有三分之二的概率能答對,開啟「草稿」就能發現,預設每個問題回答三次,兩次對一次錯。
至於國內選手,在提問方式統一、每個模型只給一次嘗試機會的測試下,上次能正確判斷數碼大小的,這次同樣穩定發揮。
字節豆包給出了正確回答,還猜測使用者問這個問題是要學習單詞拼寫嗎?
智譜清言的ChatGLM,自動觸發了程式碼模式,直接給出正確答案「3」。
騰訊元寶像解數學題一樣列方程式給出了正確答案(雖然貌似沒有必要)。
文心一言4.0收費版則更加詳細,也是先正確理解了意圖,然後掰指頭挨個找出了全部的「r」。
不過有意思的是,在同一種方法下,文心一言APP中的免費版文心3.5掰指頭也能數錯。
訊飛星火也透過找出「r」所在位置給出了正確回答。
還是token的鍋
雖然「數r」和「9.11與9.9哪個大」,看似一個是數碼問題一個是字母問題,但對於大模型來說,都是token問題。
單個字元對大模型來說意義有限,使用GPT系列的Llama系列的tokenizer就會發現,20個字元的問題,在不同AI眼中是10-13個token。
其中相同之處在於,strawberry被拆成了st-,raw,-berry三個部份來理解。
換一個思路用特殊字元ⓢⓣⓡⓐⓦⓑⓔⓡⓡⓨ來提問,每一個字元對應的token也就會分開了。
面對這種問題,其實最簡單的方法就是像智譜清言一樣,呼叫程式碼來解決了。
可以看到,ChatGPT直接用Python語言字串的count函數,就能簡單搞定。
剛剛創業開了所學校的大神Kappa西認為,關鍵在於需要讓AI知道自己能力的邊界,才能主動去呼叫工具。
至於教給大模型判斷自己知道不知道的方法,Meta在LLama 3.1論文中也有所涉及。
最後正如網友所說,希望OpenAI等大模型公司,都能在下個版本中解決這個問題。
GPT Tokenizer試玩https://gpt-tokenizer.devLlama Tokenizer試玩https://belladoreai.github.io/llama-tokenizer-js/example-demo/build/
參考連結:[1]https://x.com/diegoasua/status/1816146114573394143[2]https://www.reddit.com/r/ClaudeAI/comments/1eap6b1/comment/leolf3t/[3]https://www.reddit.com/r/ChatGPT/comments/1do7cnq/counting_the_rs_a_chat_with_chatgpt/[4]https://www.reddit.com/r/ChatGPT/comments/1dpfj2c/a_prompt_where_chatgpt_gets_the_strawberry/