- 大模型應(yīng)用開(kāi)發(fā)極簡(jiǎn)入門:基于GPT-4和ChatGPT(第2版)
- (比)奧利維耶·卡埃朗 (法)瑪麗-艾麗斯·布萊特
- 1062字
- 2025-05-07 12:20:57
1.1.3 解密GPT模型的詞元化和預(yù)測(cè)步驟
LLM 接收提示詞作為輸入,并生成相應(yīng)的文本,這個(gè)過(guò)程被稱為文本補(bǔ)全(text completion)。例如,輸入的提示詞可能是“The weather is nice today, so I decided to”(今天天氣很好,所以我決定去),而模型的輸出則可能是“go for a walk.”(散步)。你可能會(huì)好奇LLM是如何根據(jù)提示詞構(gòu)建出這段文本的。實(shí)際上,這主要是一個(gè)概率計(jì)算的問(wèn)題。
當(dāng)LLM收到提示詞之后,它首先將輸入拆分成詞元(token)。這些詞元代表單詞、單詞的一部分、空格或標(biāo)點(diǎn)符號(hào)。比如,在前面的例子中,提示詞可以被拆分成 [“The”,“wea”,“ther”,“is”,“nice”,“today”,“,”,“so”,“I”,“de”,“ci”,“ded”,“to”]。
幾乎每個(gè)語(yǔ)言模型都配有自己的分詞器。你可以在 OpenAI平臺(tái)上測(cè)試 GPT-3.5 和 GPT-4 系列的分詞器。
有一條經(jīng)驗(yàn)法則有助于你基于文本長(zhǎng)度理解詞元:對(duì)于英語(yǔ)文本,100 個(gè)詞元大約等于 75 個(gè)單詞。但對(duì)于其他語(yǔ)言來(lái)說(shuō),情況可能有所不同,同樣數(shù)量的單詞可能會(huì)對(duì)應(yīng)更多的詞元 2。
2 對(duì)于中文文本,100 個(gè)詞元大約等于 50 ~ 80 個(gè)漢字(單詞)?!g者注
因?yàn)橛辛俗⒁饬C(jī)制和 Transformer 架構(gòu),LLM 能夠輕松處理詞元并解釋它們之間的關(guān)系及提示詞的整體含義。Transformer 架構(gòu)使模型能夠高效地識(shí)別文本中的關(guān)鍵信息和上下文。
為了生成新的句子,LLM 會(huì)根據(jù)用戶提供的提示詞的上下文預(yù)測(cè)最有可能出現(xiàn)的后續(xù)詞元。OpenAI已經(jīng)發(fā)布了多個(gè)版本的 GPT-4。最初,用戶可以選擇的上下文窗口分別為 8192 個(gè)詞元和 32 768 個(gè)詞元。到 2024 年初,OpenAI最新發(fā)布的模型是 GPT-4 Turbo 和 GPT-4o,其輸入上下文窗口擴(kuò)大到了 128 000 個(gè)詞元,相當(dāng)于近 300 頁(yè)的英文文本。與早期難以處理長(zhǎng)輸入序列的循環(huán)模型不同,Transformer 架構(gòu)結(jié)合注意力機(jī)制,使得現(xiàn)代LLM能夠?qū)⑸舷挛淖鳛橐粋€(gè)整體來(lái)考慮。模型為每個(gè)潛在的后續(xù)詞元分配一個(gè)概率分?jǐn)?shù),然后選擇概率最高的詞元作為序列中的下一個(gè)詞元。在前面的例子中,“The weather is nice today, so I decided to”之后,下一個(gè)最佳詞元可能是“go”。
正如我們將在下一章看到的,通過(guò)調(diào)整溫度(temperature)參數(shù),模型可以不總是選擇概率最高的下一個(gè)詞,而是從一組高概率詞中進(jìn)行選擇。這種機(jī)制允許模型在生成文本時(shí)引入一定的多樣性和創(chuàng)造力,從而避免輸出過(guò)于單一或機(jī)械化。
這一過(guò)程會(huì)不斷重復(fù),但每次生成新詞后,上下文也會(huì)隨之?dāng)U展。例如,模型在第一步預(yù)測(cè)出“go”后,新的上下文變?yōu)椤癟he weather is nice today, so I decided to go”,并將“go”作為新的輸入的一部分。接下來(lái),模型可能會(huì)預(yù)測(cè)出“for”。這個(gè)過(guò)程會(huì)持續(xù)進(jìn)行,直到生成完整的句子,例如“The weather is nice today, so I decided to go for a walk.”。這一生成過(guò)程依賴于LLM從海量文本數(shù)據(jù)中學(xué)習(xí)出的可能性最高的下一個(gè)單詞。圖 1-5 直觀地展示了這一過(guò)程。

圖 1-5:逐詞元地補(bǔ)全文本,整個(gè)過(guò)程是迭代式的
- Hyper-V 2016 Best Practices
- Building a Game with Unity and Blender
- Python高級(jí)機(jī)器學(xué)習(xí)
- Getting Started with NativeScript
- Python極簡(jiǎn)講義:一本書入門數(shù)據(jù)分析與機(jī)器學(xué)習(xí)
- 0 bug:C/C++商用工程之道
- 從零開(kāi)始學(xué)Python網(wǎng)絡(luò)爬蟲(chóng)
- Node.js 12實(shí)戰(zhàn)
- Python函數(shù)式編程(第2版)
- Python程序設(shè)計(jì)開(kāi)發(fā)寶典
- C++程序設(shè)計(jì)教程(第2版)
- Learning Python Data Visualization
- Software-Defined Networking with OpenFlow(Second Edition)
- iOS Development with Xamarin Cookbook
- Mastering Python