什麼是大語言模型設置:溫度、Top P 和 Max Tokens

什麼是大語言模型設置:溫度、Top P 和 Max Tokens

本文概述大語言模型(LLM)的配置設定,深入探討大型上下文視窗的優缺點。同時提供實際範例,說明調整這些設定如何影響 LLM 在不同任務中的輸出。

介紹

大型語言模型依賴機率來決定最可能的下一個 token 或單詞,其依據來自訓練資料、提示詞(prompt)以及設定。先前的討論已說明提示工程技術如何讓 LLM 具備類似人類的推理能力,而像檢索增強生成(Retrieval Augmented Generation)這類技術則透過賦予模型存取外部知識來源的能力來強化其表現。

然而,無論提供的上下文和提示詞如何,調整 LLM 的設定或參數都會對最終輸出產生顯著影響。掌握這些設定對於有效運用大型語言模型,並引導其產生所需的行為至關重要。在本文中,我們將探討基本的 LLM 參數,如 Temperature、Top P、Max Tokens 以及上下文視窗,並闡述它們如何影響模型輸出。

什麼是 LLM Temperature?

簡單來說,Temperature 是一個範圍從 0 到 1 的參數,決定大型語言模型(LLM)所生成回應的隨機性程度。較高的 Temperature 會產生更多樣化且具創意的輸出,而較低的 Temperature 則會導致較保守且可預測的回應。

當 Temperature 設為 0 時,LLM 在相同提示下會持續產生完全相同的輸出。提高 Temperature 會增加模型的創造力,提供更廣泛的輸出範圍。然而,過高的 Temperature 可能導致輸出缺乏連貫性或意義。

不同 LLM 的預設 Temperature 設定各不相同,取決於模型類型以及是透過 API 還是網頁介面存取等因素。例如,在討論 ChatGPT-3.5 和 4 時,常提及預設的 Temperature 設定約為 0.7 至 0.8,但確切數值通常不會公開。

Temperature 設定

Temperature 參數是一個數值,通常介於 0 到 1 之間(但有時可能超過此範圍),它影響模型在選擇單詞時的冒險或保守程度。它會調整下一個單詞的機率分佈。

以下是大語言模型不同 Temperature 參數的詳細說明:

低 Temperature(<1.0) — 當設定值低於 1 時,模型輸出傾向於更具確定性且重複性。較低的 Temperature 會優先選擇最可能的下一個單詞,減少輸出的變異性。這對於獲得可預測且保守的回應可能有好處,但也可能導致較不具創意或多樣化的文字,使模型聽起來較機械化。

高 Temperature(>1.0) — 將 Temperature 設定為高於 1 會增加生成文字的隨機性。模型更傾向於選擇機率較低的單詞作為序列中的下一個單詞,從而產生更多樣化、有時更具創意的輸出。然而,這種較高的隨機性可能導致錯誤或無意義的回應,因為模型較不受其訓練資料機率分佈的約束。

Temperature 為 1.0 — 這通常是預設設定,旨在平衡隨機性與確定性。模型產生的文字既不會過度可預測,也不會過於隨機,而是依據訓練過程中所學習到的機率分佈。

LLM Temperature 建模的使用案例

在建模中微調 Temperature 參數,需要在隨機性與確定性之間取得適當平衡;這在生成文字的品質會深刻影響使用者體驗或決策程序的應用中,是一個關鍵面向。

在實際情境中,Temperature 設定的選擇取決於期望的結果。需要創造力或多樣化回應的任務可能受益於較高的 Temperature,而需要準確性或事實正確性的任務通常偏好較低的 Temperature。

以下是一些常見的使用案例以及建議的 LLM 模型 Temperature 設定:

創意寫作 — 使用較高的 Temperature 可以激發創造力並產生多種輸出,有助於克服寫作障礙或產生創新的內容點子。

技術文件 — 偏好較低的 Temperature,以確保內容的精確性與可靠性,這在技術文件中至關重要,因為準確性與一致性是首要考量。

客戶互動 — 調整 Temperature 可以讓聊天機器人或虛擬助理的回應符合組織的品牌與語調,同時滿足目標受眾的偏好。

什麼是 Top P

Top P,也稱為核取樣(nucleus sampling),是另一個影響 LLM 輸出隨機性的參數。此參數決定將 token 納入候選集合的機率閾值,而 LLM 會從該集合中生成輸出。此參數的值越低,LLM 的回應會越精確且基於事實;而值越高,生成的輸出隨機性與多樣性也越高。

例如,將 Top P 參數設為 0.1,LLM 的輸出會是確定且集中的。相反地,將 Top P 提高到 0.8,則允許較不受約束且更具創意的回應。

什麼是 Max Tokens

雖然 Temperature 和 Top P 調控 LLM 回應的隨機性,但它們並沒有對模型接受的輸入大小或生成的輸出設定任何限制。相比之下,另外兩個參數——上下文視窗(context window)和 Max Tokens——直接影響 LLM 的表現與資料處理能力。

上下文視窗以 token(可以是整個單詞、子詞或字元)為單位測量,決定 LLM 一次可以處理的單詞數量。另一方面,Max Tokens 參數設定 token 總數的上限,包含提供給 LLM 作為提示的輸入 token,以及 LLM 針對該提示生成的回應輸出 token。

理解上下文視窗

一般來說,大型語言模型(LLM)中的上下文視窗大小決定了模型在生成輸出時可以保留與使用的資訊量。較大的上下文視窗使 LLM 能夠記住更多上下文,從而產生更連貫且準確的回應。然而,如果輸入超過上下文視窗,模型就會開始「遺忘」先前的資訊,可能導致輸出相關性降低且品質下降。

此外,上下文視窗的大小也限制了提示工程技術。像思維樹(Tree-of-Thoughts)或檢索增強生成(RAG)這類方法需要足夠大的上下文視窗才能有效運作,因為它們依賴於向模型提供足夠的資訊以生成高品質的回應。

隨著 LLM 的演進,其上下文視窗也不斷擴大,讓它們能夠一次處理更多 token。例如,GPT-4 的上下文限制為 8,192 個 token,而較新的模型如 GPT-4 Turbo 則支援高達 128K 個 token 的上下文視窗。同樣地,Anthropic 在 Claude 工具中將上下文限制從 9,000 個 token 提高到 Claude 2.1 版本的 200K 個 token。

何時大型上下文視窗不會產生更好的輸出?

雖然較大的上下文視窗使 LLM 能夠處理更長的輸入,從而可能產生更相關的回應,但擴展上下文限制並非總是優勢。有幾個缺點需要考慮。

首先,較大的輸入資料集需要更多時間讓 LLM 生成回應。處理較大上下文視窗所增加的計算複雜度進一步加劇了這個問題。

其次,與較大上下文視窗相關的計算成本會成比例增加。

此外,Liu 等人(2023)的研究也凸顯了另一個挑戰:大型語言模型通常難以有效存取長輸入上下文中的資訊。他們的研究顯示,當相關資訊位於輸入的開頭或結尾時,LLM 可達到最佳表現。相反地,使用長上下文中間部分的資訊會導致模型表現下降。

其他 LLM 設定

還有其他幾個設定會影響語言模型的輸出,包括停止序列(stop sequences)、頻率懲罰(frequency penalty)和存在懲罰(presence penalty)。

停止序列

停止序列決定模型應在何時停止輸出生成,從而能控制內容的長度與結構。例如,在提示 AI 撰寫電子郵件時,將「Best regards,」或「Sincerely,」設為停止序列,可確保模型在結尾敬語之前停止,從而產生簡潔且聚焦的電子郵件。停止序列對於生成預期遵循結構化格式(如電子郵件、編號列表或對話)的輸出非常有用。

頻率懲罰

頻率懲罰是一種透過根據 token 出現的頻率來懲罰它們,從而阻止生成文字中出現重複的設定。在文字中出現頻率較高的 token 更不可能被 AI 再次使用。

存在懲罰

存在懲罰的運作方式與頻率懲罰類似,但它是根據 token 是否在文字中出現過來施加固定懲罰,而不是按比例懲罰。

來源:novita.ai

導入角色(可選)

有些 LLM 擁有其特殊的設定,例如導入角色。透過導入角色卡,您可以與您喜愛的角色聊天,無論他們是誰。

novita.ai LLM 的導入角色功能

如何調整 LLM 設定?

如前所述,調整像 Temperature、Top P 和 Max Tokens 這樣的參數可以幫助微調 LLM,使其產生更相關且準確的結果。將 Temperature 或 Top P 降低到 0.1 或 0.2 等值可減少隨機性,產生更集中的答案,適合程式碼生成或資料分析腳本等任務。相反地,將 Temperature 或 Top P 參數提高到 0.7 或 0.8 左右則會鼓勵更具創意和多樣化的輸出,適合創意寫作或說故事。通常建議只修改 Temperature 或 Top P 其中之一,而不是同時調整兩者。

同時,改變 Max Tokens 參數可以自訂 LLM 輸出的長度。這種靈活性在需要將 LLM 調整為產生簡短回應(用於聊天機器人)或較長內容(用於文章)時很有幫助。此外,調整 Max Tokens 參數在軟體開發的程式碼生成或摘要較長文件等場景中也很有用。

結論

總之,熟練掌握 Temperature、Top P、Max Tokens 等設定在使用語言模型時至關重要。這些參數能夠精確管理模型的輸出,使其適合特定的任務或應用。它們控制了回應的隨機性、長度和重複頻率等因素,這些都有助於改善與 AI 的互動。

novita.ai,一站式平台,讓您擁有無限創意,可存取 100 多種 API。從影像生成、語言處理到音訊增強與影片編輯,採用便宜、按用量計費的方式,無需為 GPU 維護煩惱,同時建置您自己的產品。立即免費試用。

推薦閱讀

LLM 和 GPT 有什麼不同?

2024 年 LLM 排行榜預測揭曉

Novita AI LLM 推理引擎:最大吞吐量與最低推理成本