LLMs 系列科普文(15)

前面 14 篇文章,就是本系列科普文中想介紹的大部分技術內容。重點講述了訓練這些模型的三個主要階段和范式:預訓練、監督微調和強化學習

我向你們展示了這些步驟大致對應于我們已用于教導兒童的過程。具體來說,我們將預訓練比作通過閱讀說明獲取基礎知識,監督微調則是通過大量范例模仿專家并練習解題的過程。唯一的區別在于,我們現在需要為大型語言模型和人工智能編寫涵蓋人類知識所有學科的教材,包括我們希望它們實際應用的領域,如編程、數學以及幾乎所有其他學科。

因此,我們正在為他們編寫教材,完善我提出的所有高層次算法,當然還要在高效大規模訓練這些模型方面做到極致。具體來說,雖然我沒有深入太多細節,但這些任務規模極其龐大且復雜,屬于分布式作業,需要在數萬甚至數十萬個 GPU 上運行。而實現這一切所需的工程技術,確實代表了當前計算機技術在這種規模下所能達到的最高水平。所以我并沒有過多涉及這方面,但歸根結底,所有這些看似簡單的算法背后都蘊含著非常嚴肅的探索。此外,我也稍微談到了這些模型的智力問題,我希望你們記住的是:這些模型確實很出色,但它們本質上只是輔助你工作的工具。你不應該完全信任它們——我也給你們展示過一些相關的例子。

盡管我們已經采取了緩解幻覺的措施,但模型并不完美,它們仍會產生幻覺。隨著時間的推移,情況有所改善,未來還會繼續改進,但幻覺現象仍可能發生。換句話說,除此之外,我還介紹了我稱之為"瑞士奶酪"式的大語言模型能力認知框架,這應該是你們需要牢記在心的。

這些模型在眾多不同學科領域表現出色得令人難以置信,但在某些獨特案例中卻會莫名其妙地出錯。比如問 9.11 和 9.9 哪個更大?模型可能答不上來,但它同時又能解答奧賽難題。這就像瑞士奶酪上的孔洞,類似的漏洞還有很多,你肯定不想被它們絆倒。

所以不要把這些模型當作完美無缺的典范。要檢查它們的工作成果。把它們當作工具來使用。將它們作為靈感來源。將它們用于初稿,但要把它們當作工具來使用,并最終對你工作的成果負責。這就是我大致想說的內容。這就是它們的訓練方式,也是它們的本質。

十五、其他方面

我們將探討這些模型的一些潛力,看看它們可能具備哪些其他能力。我有幾個要點可以分享,這些都是可以期待的進展。首先,你會注意到模型將很快變得多模態化。

多模態

我所討論的一切都圍繞著文本展開,但我們現在或很快就有了一些不僅能處理文本,還能 原生 且輕松地操作音頻的 LLMs,這意味著它們可以聽和說;同時也能處理圖像,從而能夠看和繪制。我們已經看到了這一切的雛形,但這一切都將原生地在語言模型內部完成,這將促成一種近乎自然的對話。大致來說,這與我們之前討論的所有內容并無本質區別,因為從根本上講,你可以將音頻和圖像進行 token 化處理,并應用我們之前討論過的完全相同的方法。

需要說明的是,你現在使用的一些模型,盡管也可以處理圖片,甚至可以直接語音對話,大部分其實并不是原生支持的,而是借助了類似外部工具這種專門用于處理圖片或語音的模型處理,將其轉為 LLMs 可以接收的 token 再進一步處理,這并不是原生的,近期比較典型的原生場景是,gpt-4o 可以直接原生的按用戶指令完整圖像創作,而以往通常是調用 DaLL·E 模型,這是一個專門用于圖像創作的模型。

所以這并不是根本性的改變。我們只需要添加一些 token。舉個例子,對于音頻的標記化,我們可以查看音頻信號的頻譜圖切片,然后對其進行標記化,只需添加一些突然代表音頻的新 token,并將它們加入上下文窗口,然后像上面那樣進行訓練即可。對于圖像也是如此,我們可以使用圖像塊,將它們分別轉換為 token,那么圖像是什么呢?圖像不過是一系列 token 的序列。這種方法實際上相當有效,而且在這一方向上已有大量早期研究。因此,我們可以創建代表音頻、圖像以及文本的 token 流,將它們交織在一起,并在同一個模型中同時處理所有這些內容。這就是多模態的一個例子。


代理(Agent)

其次,目前人們非常感興趣的是,大部分工作都是我們把單個任務交給模型,比如“請幫我解決這個任務”。然后模型就會完成這個小任務。但如何有條理地組織任務執行以完成工作,仍取決于我們。目前這些模型還不具備在長時間內以連貫且能自我糾錯的方式完成這類工作的能力,因此它們無法完全串聯任務來執行這些耗時更長的工作。

但他們正在逐步實現,而且這一過程會隨時間不斷改進。不過,這里可能發生的情況是,我們將開始看到所謂的"智能代理"——它們會持續執行任務,由你進行監督和觀察工作進展,這些代理會時不時向你匯報進度等等。因此,我們將看到更多長期運行的智能代理,這些任務不再只是幾秒鐘就能完成的即時響應,而是會持續數十秒、甚至數分鐘或數小時之久。但正如我們之前討論的,這些模型并非萬無一失。因此,所有這些都需要監督。例如,在工廠中,人們會討論自動化的人機比例。我認為在數字領域我們也會看到類似的情況,屆時我們將討論人類與智能體之間的比例關系,人類將更多地扮演數字領域中智能體任務的監督者角色。

接下來,我認為一切將變得更加無處不在卻又隱于無形,就像被整合進各種工具中,滲透到每個角落。此外,有點類似電腦操作。目前這些模型還無法代表你執行操作,但我認為這是另一個要點。如果你看過 chatgpt 推出的 operator 功能1,那就是一個早期的例子,你可以真正將控制權交給模型,讓它代表你執行鍵盤和鼠標操作。因此,我認為這一點也非常有趣。

最后我想說的是,這個領域還有很多潛在的研究可做。其中一個例子就是類似于 測試時訓練(test time training) 這樣的方向。請記住,我們上面所做和討論的一切都包含兩個主要階段。首先是訓練階段,我們會調整模型的參數以使其能很好地完成任務。一旦獲得這些參數,我們就會固定它們,然后將模型部署用于推理。從那時起,模型就固定了。它不再改變,也不會從測試階段的所有操作中學習。這是一個固定數量的參數。唯一變化的是上下文窗口中的 token。因此,模型能夠進行的唯一學習或測試時學習類型,就是其動態可調整上下文窗口的上下文學習,這取決于它在測試時所執行的操作。但我認為這與人類仍有不同,人類實際上能根據所做的事情來學習,尤其是睡覺時。比如,你的大腦會更新參數之類的。目前這些模型和工具還沒有類似的功能。

我認為還有很多更復雜的想法有待探索。尤其是考慮到上下文窗口是一種有限且寶貴的資源,這一點尤為必要。特別是當我們開始處理長時間運行的多模態任務時,比如輸入視頻,這些標記窗口將變得極其龐大——不是幾千甚至幾十萬,而是遠超這個數量級。而我們目前唯一能用的技巧就是延長上下文窗口。但我認為僅靠這種方法無法擴展到實際需要長時間運行的多模態任務。因此,我認為在某些領域、在某些迷宮般復雜的情況下,當這些任務需要非常長的上下文時,我們需要新的思路。

跟進 LLMs 發展

那么在哪里可以實時跟蹤這些進展,并了解該領域最新、最前沿的動態。這里分享三個資源:

第一,lmarena2。這是一個大型語言模型排行榜,它對所有頂級模型進行排名。而排名是基于人類對比評測得出的,人類向這些模型提問,然后判斷哪個模型給出的答案更好。他們不知道哪個模型對應哪個答案,只是單純地評估哪個答案更優。在這些排名靠前的模型中基本比較壟斷了,而且前幾名中只有 deepseek 是 MIT 許可,它是開源的,任何人都可以下載使用它。如果你往下滑,還會看到更多,如果不知道該使用哪個模型,或者想知道哪個模型目前大概處于什么水平,可以參考一下這里,但這里的排名未必不存在某種人為操作的可能,因此還是要自己實測一下。

第二, ainews3。這個名字起得不算很有創意,但它是由 SWIX 和朋友們制作的一份非常優秀的簡報。感謝你們一直堅持更新。這份簡報對我幫助很大,因為它涵蓋的內容極其全面。所以如果你去檔案庫看看,就會發現它幾乎每隔一天就會發布一次。內容非常全面,其中一部分是由人類撰寫并由人類編輯的。但其中大部分內容是由大語言模型自動生成的。你會發現這些內容非常全面,如果你仔細閱讀的話,基本不會遺漏任何重要信息。當然,你可能不會真的去通讀它,因為它實在太長了。但我確實認為頂部的這些摘要相當不錯,而且我認為有人工審核。所以這對我非常有幫助。

第三、X 或 Twitter,很多 AI 相關的動態都發在 X 上,我建議你關注那些你喜歡且信任的人,這樣你也能在 X 上獲取最新最棒的內容,當然這一代對于國內人群可能存在一些網絡上的障礙。

十六、本科普系列總體概要

那么現在讓我回到我們最初的問題。問題是:當我們訪問 chatgpt.com,輸入某個查詢并點擊“搜索”時,這里到底發生了什么?我們看到的是什么?我們在與什么對話?這一切是如何運作的?我希望這一系列文章能讓你對這些模型的訓練機制及其返回結果的內在原理有所了解。

具體來說,我們現在知道你的查詢首先會被分解成一個個 tokens。所以我們來到 TickTokenizer。這里是用戶查詢的格式位置。我們基本上就是把查詢內容放在這里。因此,我們的查詢進入了我們這里所說的對話協議格式,也就是我們維護對話對象的方式。這樣它就被插入到那里。然后,整個過程最終只是一個一維的 token 序列。

所以 chatgpt 看到了這個 token 序列后,它的作用類似于 token 自動補全。現在問題變成了:好吧,為什么模型會生成這些 token?這些 token 是什么?它們從何而來?我們到底在和什么對話?以及我們該如何編程這個系統?我們討論了其背后的技術細節。

這個過程分為三個階段,第一階段是預訓練階段,其核心任務是從互聯網獲取知識并將其編碼到神經網絡的參數中。因此,神經網絡會從互聯網中吸收大量知識。但真正體現個性的地方在于這里的監督微調過程。具體來說,像 OpenAI 這樣的公司會精心策劃一個龐大的對話數據集,比如 100 萬條涵蓋各種主題的對話。這些對話將發生在人類和助手之間。

盡管在整個過程中使用了大量合成數據生成和大型語言模型的幫助,但本質上這是一項需要大量人力參與的數據整理工作。具體來說,這些人力是 OpenAI 雇傭的數據標注員,他們會學習標注指南。他們的任務是為任意提示創建理想的助手回應。

因此,他們通過示例來教導神經網絡如何響應提示。那么,該如何理解這里返回的內容呢?這到底是什么?我認為正確的理解方式是,這是 OpenAI 數據標注員的神經網絡模擬。也就是說,就像我把這個查詢交給 OpenAI 的數據標注員,然后這位標注員首先閱讀 OpenAI 的所有標注指令,再花兩個小時寫出針對這個查詢的理想助手回復,最后交給我。所以,我們在這里得到的是那個過程的神經網絡模擬。我們必須記住,這些神經網絡的運作方式與人類大腦不同。

對他們來說容易或困難的事情與人類不同。因此,我們實際上只是在模擬。然后我們展示了一個神經網絡,中間有一大堆激活函數和神經元。這是一個固定的數學表達式,它將來自 token 的輸入與模型的參數混合在一起,經過混合后,就能得到序列中的下一個 token 。但這是針對每一個 token 進行的有限計算量。因此,這是一種有損的人類模擬方式,在某種程度上受到了這樣的限制。無論人類寫下什么,語言模型都只是在序列中逐個 token 地進行模仿,且每個 token 只能進行這種特定的計算。

我們也看到,由于這種機制和認知差異,模型會在多方面表現出不足。使用它們時必須非常謹慎。例如,我們發現它們可能會出現幻覺現象。此外,我們觀察到大型語言模型的能力存在類似瑞士奶酪模型的特征——本質上就像奶酪上布滿了孔洞。有時候模型就是會莫名其妙地犯傻。盡管它們能完成許多神奇的任務,但偶爾就是無能為力。可能你給它們的思考空間不夠,也可能它們的"心算"崩潰了,于是就開始胡編亂造。也許他們突然不會數字母了,或者無法告訴你 9.11 比 9.9 小,這看起來有點蠢。所以這是一種漏洞百出的能力,我們必須小心對待。我們也看到了其中的原因。

后面我們提到了 RLHF,但我已經告訴過你們,RLHF 并不等同于 RL。那里沒時間施展魔法。可以把它看作只是一種微調。但這些思維模型確實使用了強化學習。

因此,他們經歷了完善思維過程的第三階段,發現新的思維策略和解決問題的方法,這些方法有點像你頭腦中的內心獨白。他們在 OpenAI 等公司創建、整理并供大型語言模型使用的大量練習題上練習這些方法。當然,OpenAI 并沒有向我們展示其背后的思考過程和推理鏈條,但我們知道這樣的東西確實存在。

我認為,在可驗證領域內發展出的思維策略能否遷移并推廣到其他不可驗證的領域(如創意寫作),這是一個懸而未決的問題。可以說,該領域對這種遷移的程度尚不明確。因此,我們無法確定是否能在所有可驗證事物上進行強化學習,并看到其對這類不可驗證提示所產生的效益。所以這是一個懸而未決的問題。另一個有趣之處在于,強化學習仍然非常新穎、原始且處于萌芽階段。因此,我們只是在推理問題中看到了偉大潛力的初步跡象。

我們正在見證一種原則上能夠實現類似 MOVE37 水平的事物,但不是在圍棋領域,而是在開放領域的思維和問題解決上。從理論上講,這種范式能夠做出一些真正酷炫、新穎且激動人心的事情,甚至是人類從未想到過的事情。原則上,這些模型能夠進行人類從未有過的類比推理。所以我認為這非常令人興奮。雖然它們已經存在,但目前仍處于非常早期的階段,這些還只是原始模型。它們在可驗證的領域(如數學和代碼等)會表現得尤為出色。使用它們進行探索和思考非常有趣。大致就是這樣。

總的來說,現在進入這個領域是一個極其激動人心的時刻。我個人每天都在使用這些模型,少則幾十次,多則上百次,因為它們極大地加速了我的工作。我想很多人都看到了同樣的現象。我認為這些模型將創造巨大的財富,但也要意識到它們的一些缺點。即使是強化學習模型,也會存在一些問題。把它們當作工具箱中的工具來使用,不要完全信任它們,因為它們有時會做出愚蠢的事情,產生幻覺,或者跳過一些心算步驟而得不到正確答案。有時它們甚至無法正確計數。所以,把它們當作工具箱中的工具,檢查它們的工作,并對自己的工作成果負責。用它們來獲取靈感、起草初稿,向它們提問,但始終要檢查和驗證。如果你這樣做,你會在工作中非常成功。希望本系列科普對你來說既有用又有趣。


  1. gpt operator: https://operator.chatgpt.com/ ??

  2. lmarena: https://lmarena.ai/leaderboard ??

  3. ainews: https://news.smol.ai/ ??

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/82976.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/82976.shtml
英文地址,請注明出處:http://en.pswp.cn/web/82976.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深入理解匯編語言中的順序與分支結構

本文將結合Visual Studio環境配置、順序結構編程和分支結構實現,全面解析匯編語言中的核心編程概念。通過實際案例演示無符號/有符號數處理、分段函數實現和邏輯表達式短路計算等關鍵技術。 一、匯編環境配置回顧(Win32MASM) 在Visual Studi…

Selenium4+Python的web自動化測試框架

一、什么是Selenium? Selenium是一個基于瀏覽器的自動化測試工具,它提供了一種跨平臺、跨瀏覽器的端到端的web自動化解決方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid。 Selenium IDE:Firefo…

React 樣式方案與狀態方案初探

React 本身只提供了基礎 UI 層開發范式,其他特性的支持需要借助相關社區方案實現。本文將介紹 React 應用體系中樣式方案與狀態方案的主流選擇,幫助開發者根據項目需求做出合適的選擇。 1. React 樣式方案 1.1. 內聯樣式 (Inline Styles) 通過 style …

PHP中如何定義常量以及常量和變量的主要區別

在PHP編程中,常量和變量是存儲數據的兩種重要方式。常量在定義后值不能改變,而變量的值可以在程序執行過程中發生變化。本文將詳細介紹如何在PHP中定義常量,并深入探討常量和變量的主要區別。 一、PHP中定義常量 1. 使用 define 函數定義常…

奈飛工廠官網,國內Netflix影視在線看|中文網頁電腦版入口

奈飛工廠是一個專注于提供免費Netflix影視資源的在線播放平臺,致力于為國內用戶提供的Netflix熱門影視內容。該平臺的資源與Netflix官網基本同步,涵蓋電影、電視劇、動漫和綜藝等多個領域。奈飛工廠的界面簡潔流暢,資源分類清晰,方…

CMS內容管理系統的設計與實現:架構設計

一、整體架構方案 &#xff08;一&#xff09;架構方案選擇&#xff08;根據項目規模&#xff09; 1. 中小型項目推薦方案&#xff08;團隊<10人&#xff09; #mermaid-svg-cjzaHpptY8pYWnzo {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:1…

嵌入式里的時間魔法:RTC 與 BKP 深度拆解

文章目錄 RTC實時時鐘與BKPUnix時間戳UTC/GMT時間戳轉換時間戳轉換BKP簡介BKP基本結構1. 電池供電模塊&#xff08;VBAT 輸入&#xff09;2. 侵入檢測模塊&#xff08;TAMPER 輸入&#xff09;3. 時鐘輸出模塊&#xff08;RTC 輸出&#xff09;4. 內部寄存器組 RTC簡介RTC時鐘源…

STC8H系列 驅動步進電機

STC8H 驅動步進電機 一、引言二、硬件設計三、軟件設計Step_Motor2.c文件Step_ Motor2.h文件 一、引言 眾所周知STC8H系列有兩個PWM&#xff0c;分別為PWMA和PWMB外設模塊&#xff0c;我全都用上&#xff0c;豈不是就有兩個帶動電機的脈沖信號&#xff1f;&#xff01;哈哈哈哈…

Python高階函數:從入門到精通

目錄 Python高階函數詳解&#xff1a;從概念到高級應用引言&#xff1a;函數式編程的魅力一、高階函數基礎概念1.1 什么是高階函數1.2 Python中的一等函數 二、內置高階函數詳解2.1 map函數&#xff1a;數據轉換利器2.2 filter函數&#xff1a;數據篩選專家2.3 reduce函數&…

騰訊開源視頻生成工具 HunyuanVideo-Avatar,上傳一張圖+一段音頻,就能讓圖中的人物、動物甚至虛擬角色“活”過來,開口說話、唱歌、演相聲!

騰訊混元團隊提出的 HunyuanVideo-Avatar 是一個基于多模態擴散變換器&#xff08;MM-DiT&#xff09;的模型&#xff0c;能夠生成動態、情緒可控和多角色對話視頻。支持僅 10GB VRAM 的單 GPU運行&#xff0c;支持多種下游任務和應用。例如生成會說話的虛擬形象視頻&#xff0…

DeepSeek-R1-0528:開源推理模型的革新與突破

一、 發布日期與背景 2025年5月29日&#xff0c;備受業界關注的DeepSeek推理模型DeepSeek-R1迎來重要更新——DeepSeek-R1-0528模型正式發布。此次更新采取了“靜默發布”策略&#xff0c;未提前預告&#xff0c;而是通過官方渠道&#xff08;官網、App、小程序&#xff09;及…

LeetCode 1723: 完成所有工作的最短時間

給你一個整數數組 jobs &#xff0c;其中 jobs[i] 是完成第 i 項工作要花費的時間。 請你將這些工作分配給 k 位工人。所有工作都應該分配給工人&#xff0c;且每項工作只能分配給一位工人。工人的 工作時間 是完成分配給他們的所有工作花費時間的總和。請你設計一套最佳的工作…

JDK8新特性之Steam流

這里寫目錄標題 一、Stream流概述1.1、傳統寫法1.2、Stream寫法1.3、Stream流操作分類 二、Stream流獲取方式2.1、根據Collection獲取2.2、通過Stream的of方法 三、Stream常用方法介紹3.1、forEach3.2、count3.3、filter3.4、limit3.5、skip3.6、map3.7、sorted3.8、distinct3.…

split方法

在編程中&#xff0c;split 方法通常用于將字符串按照指定的分隔符拆分成多個部分&#xff0c;并返回一個包含拆分結果的列表&#xff08;或數組&#xff09;。不同編程語言中的 split 方法語法略有不同&#xff0c;但核心功能相似。以下是常見語言中的用法&#xff1a; ?1. P…

深入理解 x86 匯編中的符號擴展指令:從 CBW 到 CDQ 的全解析

引入 在匯編語言的世界里&#xff0c;數據寬度的轉換是一項基礎卻至關重要的操作。尤其是在處理有符號數時&#xff0c;符號擴展&#xff08;Sign Extension&#xff09;作為保持數值符號一致性的核心技術&#xff0c;直接影響著運算結果的正確性。本文將聚焦 x86 架構中最常用…

計算機基礎知識(第五篇)

計算機基礎知識&#xff08;第五篇&#xff09; 架構演化與維護 軟件架構的演化和定義 軟件架構的演化和維護就是對架構進行修改和完善的過程&#xff0c;目的就是為了使軟件能夠適應環境的變化而進行的糾錯性修改和完善性修改等&#xff0c;是一個不斷迭代的過程&#xff0…

前端開發三劍客:HTML5+CSS3+ES6

在前端開發領域&#xff0c;HTML、CSS和JavaScript構成了構建網頁與Web應用的核心基礎。隨著技術標準的不斷演進&#xff0c;HTML5、CSS3以及ES6&#xff08;ECMAScript 2015及后續版本&#xff09;帶來了諸多新特性與語法優化&#xff0c;極大地提升了開發效率和用戶體驗。本文…

c++ 頭文件

目錄 防止頭文件重復包含 頭文件的作用 如何讓程序的多個 .cpp 文件之間共享全局變量&#xff08;可能是 int、結構體、數組、指針、類對象&#xff09;? 防止頭文件重復包含 為什么要防止頭問件重復包含&#xff1f; 當然一般也不會把變量定義放到頭問件&#xff0c;那為…

深入解析 JavaScript 中 var、let、const 的核心區別與實踐應用

一、歷史背景與語法基礎 JavaScript 作為動態弱類型語言&#xff0c;變量聲明機制經歷了從 ES5 到 ES6 的重大變革。在 ES5 及更早版本中&#xff0c;var 是唯一的變量聲明方式&#xff0c;而 ES6&#xff08;2015 年&#xff09;引入了 let 和 const&#xff0c;旨在解決 var…

【Linux庖丁解牛】—自定義shell的編寫!

1. 打印命令行提示符 在我們使用系統提供的shell時&#xff0c;每次都會打印出一行字符串&#xff0c;這其實就是命令行提示符&#xff0c;那我們自定義的shell當然也需要這一行字符串。 這一行字符串包含用戶名&#xff0c;主機名&#xff0c;當前工作路徑&#xff0c;所以&a…