国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

一文讀懂「Prompt Engineering」提示詞工程

這篇具有很好參考價值的文章主要介紹了一文讀懂「Prompt Engineering」提示詞工程。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

在了解提示過程之前,先了解一下什么是提示prompt,見最后附錄部分
參考資料: 吳恩達《面向開發(fā)者的ChatGPT Prompt Engineering工程》

一、什么是Prompt Engingering?

提示工程(Prompt Engingering),也被稱為上下文提示(In-Context Prompting),指的是通過結(jié)構(gòu)化文本等方式來完善提示詞,引導LLM輸出我們期望的結(jié)果。通過提示詞工程可以在不更新模型權(quán)重的情況下,讓LLM完成不同類型的任務。其主要依賴于經(jīng)驗,而且提示詞工程方法的效果在不同的模型中可能會有很大的差異,因此需要大量的實驗和探索。

提示工程旨在獲取這些提示并幫助模型在其輸出中實現(xiàn)高準確度和相關(guān)性,掌握提示工程相關(guān)技能將有助于用戶更好地了解大型語言模型的能力和局限性。特別地, 矢量數(shù)據(jù)庫、agent和prompt pipeline已經(jīng)被用作在對話中,作為向 LLM 提供相關(guān)上下文數(shù)據(jù)的途徑。

提示工程涉及選擇、編寫和組織提示,以便獲得所需的輸出,主要包括以下方面:

  1. Prompt 格式:確定 prompt 的結(jié)構(gòu)和格式,例如,問題形式、描述形式、關(guān)鍵詞形式等。

  2. Prompt 內(nèi)容:選擇合適的詞語、短語或問題,以確保模型理解用戶的意圖。

  3. Prompt 上下文:考慮前文或上下文信息,以確保模型的回應與先前的對話或情境相關(guān)。

  4. Prompt 編寫技巧:使用清晰、簡潔和明了的語言編寫 prompt,以準確傳達用戶的需求。

  5. Prompt 優(yōu)化:在嘗試不同 prompt 后,根據(jù)結(jié)果對 prompt 進行調(diào)整和優(yōu)化,以獲得更滿意的回應。

提示工程可以幫助改善大語言模型的性能,使其更好地滿足用戶需求。這是在與模型互動時常用的策略,特別是在自然語言處理任務和生成性任務中,如文本生成、答案生成、文章寫作等。

二、提示工程分類

一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

2.1 基本方式

1. Zero-shot Prompting

Zero-Shot Prompting 指的是在大型語言模型(LLM)中,不需要額外微調(diào)或訓練,直接通過文本提示就可以完成指定的下游任務。

主要思想:

  • 先訓練一個通用的大型語言模型,學習語言的基本規(guī)則,掌握豐富的常識和知識。
  • 然后在不改變模型參數(shù)的情況下,只通過軟性提示指導模型完成特定任務。
  • 模型根據(jù)提示和已掌握的知識,生成對應任務的輸出。

缺點:Zero-Shot Prompting 技術(shù)依賴于預訓練的語言模型,這些模型可能會受到訓練數(shù)據(jù)集的限制和偏見。它的輸出有時可能不夠準確,或不符合預期。這可能需要對模型進?進?步的微調(diào)或添加更多的提示?本來糾正。

案例:

2. Few-shot Prompting

few-shot prompting則是通過提供模型少量高質(zhì)量的示例,這些示例包括目標任務的輸入和期望輸出。通過觀察這些良好的示例,模型可以更好地理解人類意圖和生成準確輸出的標準。

關(guān)鍵思想:

  • 仍然基于預訓練好的通用語言模型
  • 使用軟提示指導模型完成新任務
  • 額外提供1-2個相關(guān)示例作為提示補充

缺點:這種方法可能會消耗更多的token,并且在處理長文本的輸入或者輸出的時候可能會遇到上下文長度限制的問題。大型語言模型(例如GPT-3)在zero-shot能力方面表現(xiàn)出色。但對于復雜任務,few-shot 提示性能更好。為了提高性能,我們使用,few-shot 提示進行上下文學習,通過在提示中提供演示來指導模型執(zhí)行任務。換句話說,將模型置于一些特定任務的示例中有助于提高模型性能。

案例:

3. Instruction Prompting

指令提示是LLM的最常見用途,尤其是像ChatGPT這樣的聊天機器人。指令提示旨在向大語言模型提供指令提示示例,以便它可以消除訓練或測試差異(模型是在Web規(guī)模語料庫上訓練并在大多數(shù)指令上進行測試),并模擬聊天機器人的實際使用場景。指令提示使用(任務說明,輸入,真實輸出)元組對預訓練模型進行微調(diào),以使模型更好地與用戶意圖對齊并遵循說明。與說明模型交互時,應該詳細描述任務要求,盡量具體和準確,清楚地指定要做什么(而不是說不要做某事)。

案例:

2.2 組合方式

Prompt Engingeering 之所以成為工程方式,是因為存在著各種相對復雜的Prompt方式,主要包括思維鏈(CoT) 和
遞歸提示( Recursive Prompting)等

1. Chain-of-Thought Prompting

Chain-of-Thought(CoT)提示生成一系列短句,即被稱為推理鏈的句子。

思維鏈提示,就是把一個多步驟推理問題,分解成很多個中間步驟,分配給更多的計算量,生成更多的 token,再把這些答案拼接在一起進行求解。

對于復雜推理的任務和較大的模型,可獲得更多的好處。常見的兩種基本CoT提示包括Few-shot CoT 和 Zero-Shot CoT.

1)Few-shot CoT
Few-shot CoT 允許模型查看一些高質(zhì)量推理鏈的演示。
2)Zero-shot CoT
Zero-shot CoT是由Kojima等人在2022年首先提出的,它在提示中添加了“Let’s think step by step”,有助于提高模型性能。讓我們看一個下面的例子:Zero-shot CoT能夠幫助我們看到模型內(nèi)部,并了解它是如何推理得出答案的。

2. Recursive Prompting

遞歸提示是一種問題解決方法,它涉及將復雜問題分解成更小、更易管理的子問題,然后通過一系列提示遞歸地解決這些子問題。這種方法對需要組合泛化的任務尤其有用,其中語言模型必須學習如何組合不同的信息來解決問題。

在自然語言處理的背景下,遞歸提示可以使用少量提示方法將復雜問題分解為子問題,然后順序解決提取的子問題,使用前一個子問題的解決方案來回答下一個子問題。這種方法可以用于數(shù)學問題或問答等任務,其中語言模型需要能夠?qū)碗s問題分解為更小、更易管理的部分,以得出解決方案。

3. CoT 與 遞歸提示的混合使用

自我提問(self-ask )可以視為另一種類型的遞歸提示,是一種反復提示模型提出后續(xù)問題以迭代構(gòu)建思維過程的方法。后續(xù)問題可以通過搜索引擎結(jié)果來回答。類似地,IRCoT 和 ReAct將迭代 CoT 提示與對 Wikipedia API 的查詢相結(jié)合,以搜索相關(guān)實體和內(nèi)容,然后將其添加回上下文中。

思維樹(Tree of Thought)通過探索每一步的多種推理可能性來擴展 CoT。它首先將問題分解為多個思維步驟,并在每個步驟中生成多個思維,實質(zhì)上是創(chuàng)建一個樹形結(jié)構(gòu)。搜索過程可以是廣度優(yōu)先過程或深度優(yōu)先的過程,而每個節(jié)點的評估分類器可以通過Prompt提示的方式完成。

三、常見應用

3.1 常見實踐

提示工程的實現(xiàn)涉及到基于LLM應用中的各個方面,這里給出一些提示工程的常見實踐:

  1. 靜態(tài)提示:Prompt可以遵循zero、single或few shot的方法。LLM 的生成能力通過在Prompt中包含示例數(shù)據(jù)來遵循一次性學習或幾次性學習得到了極大的增強。

  2. 上下文提示:上下文提示在生成響應時提供對 LLM 的參考框架,在很大程度上可以避免 LLM 的幻覺。

  3. 提示模板:靜態(tài)提示轉(zhuǎn)換為模板,其中鍵值被替換為占位符,占位符在運行時被應用程序的值/變量替換。提示模板中的變量或占位符通過用戶提出的問題,以及從知識存儲中搜索的知識來填充,因此也稱為提示注入或?qū)嶓w注入。

  4. 提示鏈:提示鏈,也稱為LLM鏈,是創(chuàng)建一個由一系列模型調(diào)用組成的鏈的概念。這一系列調(diào)用相繼發(fā)生,其中一個鏈的輸出作為另一個鏈的輸入。每個鏈的目標都是小型且范圍良好的子任務,因此單個 LLM 是用于尋址任務的多個有序子組件之一。

  5. 提示流水線:在機器學習中,流水線可以描述為端到端結(jié)構(gòu),來協(xié)調(diào)事件和數(shù)據(jù)流。流水線由觸發(fā)器啟動或啟動; 并且基于某些事件和參數(shù),遵循一個流程,該流程將產(chǎn)生一個輸出。對于提示流水線而言,流在大多數(shù)情況下是由用戶請求啟動的,請求被定向到特定的提示模板。因此,提示流水線可以描述為提示模板的智能擴展。

  6. Agent代理:對于 LLM 相關(guān)的操作,其自動化的形式是所謂的Agent代理。提示鏈是執(zhí)行預先確定和設置的操作序列,Agent 不遵循預先確定的事件順序,可以保持高度的自主性。Agent可以訪問一組工具,任何屬于這些工具范圍的請求都可以由Agent處理。執(zhí)行流水線為Agent提供了自治權(quán),在代理到達最終答案之前可能需要進行多次迭代。

  7. CoT提示:CoT提示使大型語言模型(LLM)能夠處理常識推理和算術(shù)等復雜任務。通過Prompt建立CoT推理并相應地指導 LLM,這是一種相當直接的實現(xiàn)。思維鏈提示特別有用的地方在于,通過分解 LLM 輸入和 LLM 輸出,它創(chuàng)建了一個洞察和解釋窗口。

  8. ChatML:LLM 的主要安全漏洞和濫用途徑是Prompt注入攻擊,ChatML 將允許針對這些類型的攻擊提供保護。為了消除prompt注入攻擊,會話被分為以下幾個層次或角色: 系統(tǒng)、助理和用戶等, 然后做相應的prompt防護。

3.2 應用

一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

四、Prompt Engineering優(yōu)缺點

優(yōu)點:

1、任務歸一化:將所有的任務歸一化為預訓練語言模型的任務,使得所有的任務在方法上變得一致。避免了預訓練和fine-tuning之間的gap,使得幾乎所有NLP任務都可以直接使用,不需要額外的訓練數(shù)據(jù)。

2、優(yōu)秀的性能:在少樣本的數(shù)據(jù)集上,Prompt Engineering能取得超過fine-tuning的效果。

3、信息量豐富:有研究表明,一個prompt相當于100個真實數(shù)據(jù)樣本。這充分說明了prompt蘊含的「信息量」之巨大。

4、適應能力強:prompt在下游任務「數(shù)據(jù)缺乏」的場景下、甚至是zero-shot場景下,有著無可比擬的優(yōu)勢。因為大模型通常無法在小數(shù)據(jù)上微調(diào),因此,基于prompt的技術(shù)便成為首要選擇。

缺點:

1、設計復雜:對于Label較多的任務,很難合理地定義Prompt和Answer之間的映射。同時構(gòu)建一對最佳的Prompt和Answer也是一個具有挑戰(zhàn)性的問題。

2、理論分析不足:盡管Prompt方法在很多場景中取得了成功,但是目前關(guān)于Prompt-based Learning的理論分析和保證的研究成果很少,Prompt取得成果的可解釋性較差。

3、bias問題:存在以下三種bias問題需要解決:

(1)樣本不平衡的bias:如果few-shot例子中所提供的標簽分布不平衡,則會嚴重影響到測試任務。這是傳統(tǒng)的不平衡學習在prompt上的具體體現(xiàn)。

(2)最近樣本的bias:模型傾向于為測試樣本輸出最近看到的few-shot樣本。這有點像災難遺忘,即模型更喜歡記住最近輸入的樣本信息。

(3)高頻詞的bias:模型傾向于考慮那些出現(xiàn)次數(shù)較多的token。因為大模型本質(zhì)上就是統(tǒng)計模型,當然傾向于出現(xiàn)次數(shù)多的那些詞。

Prompt Engineering是模型開發(fā)最簡單的一步,但是需要理解大模型開發(fā)的方方面面細節(jié),雖然很簡單,確實很值錢。值得深入學習和思考。

五、未來和挑戰(zhàn)

六、拓展閱讀

  1. 非常不錯的教程:earningprompt.wiki/
  2. 吳恩達《ChatGPT Prompt Engineering for Developers》課程中文版:https://www.bilibili.com/video/BV1oi4y167Nz/?spm_id_from=333.999.0.0
  3. Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing
  4. LLM提示詞工程學習筆記
  5. https://zhuanlan.zhihu.com/p/671863250

附錄:什么是prompt?

1. 什么是Prompt

Prompt提示是模型接收以生成響應或完成任務的初始文本輸入。我們給AI一組Prompt輸入,用于指導模型生成響應以執(zhí)行任務。這個輸入可以是一個問題、一段描述、一組關(guān)鍵詞,或任何其他形式的文本,用于引導模型產(chǎn)生特定內(nèi)容的響應。
例如,在chatGPT中,用戶通常使用 prompt 來與大語言模型進行交互,請求回答問題、生成文本、完成任務等。模型會根據(jù)提供的 prompt 來生成一個與之相關(guān)的文本,盡量符合用戶的要求。

2. Prompt的分類

從不同的視角, 可以對Prompt 進行不同的分類。在這里,根據(jù)可解釋性、交互方式和應用領域三個方面對Prompt 進行分類。

2.1 可解釋性分類:硬提示和軟提示

硬提示(hard prompt ) 是手工制作的、預定義的帶有離散輸入標記的文本,或者文本模板。靜態(tài)提示可以合并到程序中用于編程、存儲和重用,基于大模型的應用程序可以有多個提示模板供其使用。
靜態(tài)提示一種硬編碼的提示。建立在LangChain 之上的基于大模型的很多應用程序,其提示模板在很大程度上是靜態(tài)的,它指示代理執(zhí)行哪些操作。一般來說,模板包括: 定義了可以訪問哪些工具,何時應該調(diào)用這些工具,以及一般的用戶輸入。
軟提示(soft prompt ) 是在提示調(diào)優(yōu)過程中創(chuàng)建的。與hard prompt 不同,軟提示不能在文本中查看和編輯,包含一個嵌入或一串數(shù)字,代表從大模型中獲得知識。軟提示缺乏軟可解釋性。人工智能發(fā)現(xiàn)與特定任務相關(guān)的軟提示,但不能解釋為什么它。與深度學習模型本身一樣,軟提示也是不透明的。軟提示可以替代額外的訓練數(shù)據(jù),一個好的語言分類器軟提示有幾百到幾千個額外的數(shù)據(jù)點。
提示微調(diào)包括了在使用 LLM 之前使用一個小的可訓練模型。小模型用于對文本提示進行編碼并生成特定于任務的虛擬令牌。這些虛擬令牌被預先追加到Prompt上并傳遞給 LLM。調(diào)優(yōu)過程完成后,這些虛擬令牌將存儲在一個查找表中,并在推斷期間使用,從而替換原來的小模型。當提供上下文時,LLM 的表現(xiàn)要好得多,而且提示微調(diào)是一種快速有效的方法,能夠以動態(tài)地創(chuàng)建急需的上下文。

2.2 交互方式分類:在線提示和離線提示

在線提示(Online prompt) 是在與模型的實時互動中提供的提示,通常用于即時的交互式應用。這種提示在用戶與模型進行實際對話時提供,用戶可以逐步輸入、編輯或更改提示,在在線聊天、語音助手、實時問題回答等應用中常見。
**離線提示(Offline prompt )**是預先準備好的提示,通常在用戶與模型的實際互動之前創(chuàng)建。這種提示在沒有用戶互動時預先設計和輸入,然后整批輸入模型進行批量處理。在離線文本生成、文章寫作、大規(guī)模數(shù)據(jù)處理等應用中常見。
對提示分類為 “online” 或 “offline” ,可幫助確定如何有效地使用提示,以滿足不同應用的需求。在線提示通常用于需要實時交互和即時反饋的情況,而 離線提示則適用于需要大規(guī)模處理或預生成文本的情況。根據(jù)具體應用和使用情境,您可以選擇適當?shù)奶崾绢愋汀?/p>

2.3 應用領域分類

用途分類可以幫助確定 prompt 的主要目標,以便更有效地使用它們。以下是一些常見的 prompt 類別:

  • Information Retrieval (信息檢索):這些 prompt 用于從模型中檢索特定信息,如回答問題、提供事實或解釋概念。用途包括問答、信息檢索、事實核實等。
  • Text Generation (文本生成):這些 prompt 用于指導模型生成文本,可能是文章、故事、評論等。用途包括創(chuàng)意寫作、內(nèi)容生成、自動摘要等。
  • Translation (翻譯): 這些 prompt 用于將文本從一種語言翻譯成另一種語言。用途包括機器翻譯應用。
  • Sentiment Analysis (情感分析):這些 prompt 用于評估文本的情感傾向,如正面、負面或中性。用途包括社交媒體監(jiān)測、情感分析應用。
  • Programming and Code Generation (編程和代碼生成):這些 prompt 用于生成計算機程序代碼或解決編程問題。用途包括編程輔助、自動化代碼生成等。
  • Conversation (對話): 這些 prompt 用于模擬對話或聊天,并回應用戶提出的問題或評論。用途包括聊天機器人、虛擬助手等。
  • Task-Specific (特定任務) :這些 prompt 針對特定應用或任務,如制定旅行計劃、編寫營銷文案、生成報告等。用途因任務而異。
  • Custom Applications (自定義應用): 這些 prompt 針對特定領域或自定義應用,具體用途由用戶定義。用途根據(jù)用戶需求而定。
    通過將 prompt 分類為不同的用途,可以更好地理解模型如何應用于各種任務和情境。這有助于選擇合適的提示類型,并設計它們以滿足特定需求。

3. Prompt的要素

一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

在應用Prompt的時候,我們需要理解一個Prompt 可能包含的6個要素:任務,上下文,示例,角色,格式和語氣,而且這些要素是按重要性降序排列的。

  1. 任務(Task): 任務是Prompt的核心,通常以動詞開始,明確表達你希望ChatGPT完成的任務或目標。這可以包括生成文本、給予建議、寫作內(nèi)容等??梢杂卸鄠€任務,以清晰地定義你的需求。一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

  2. 上下文(Context): 上下文提供了與任務相關(guān)的背景信息,以確保模型可以理解問題的背景和約束條件。這包括用戶的背景信息、成功標準、所處環(huán)境等。上下文對于任務的明確性和有效性至關(guān)重要。
    一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

  3. 示例(Exemplars): 示例是提供具體例子或框架的部分,用來引導模型生成更準確的輸出。提供示例可以明確示范所需的內(nèi)容和格式,從而提高輸出質(zhì)量。但并不是每次都需要提供示例,有時候也可以讓模型自行生成。
    一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

  4. 角色(Persona): 角色明確指定ChatGPT和Bard(如果涉及到虛構(gòu)的角色)所扮演的角色或身份。這可以是具體的人,也可以是虛構(gòu)的角色,有助于調(diào)整語氣和內(nèi)容以適應特定角色的需求。
    一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

  5. 格式(Format): 格式部分可視化了你期望輸出的外觀和結(jié)構(gòu),如表格、列表、段落等。明確指定輸出的格式可以確保ChatGPT生成的內(nèi)容符合你的預期。

  6. 語氣(Tone): 語氣定義了輸出文本的語氣或風格,如正式、非正式、幽默等。指定語氣有助于確保ChatGPT的回應符合所需的情感和風格要求。
    通過合理組織這六個要素,可以創(chuàng)建一個清晰明了的Prompt,有效引導ChatGPT生成符合期望的文本輸出。

一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

4. Prompt的工作原理

大模型的文本生成可以理解為目標文本的補全,假設想讓“Paris is the city…”這句話繼續(xù)下去。編碼器使用Bloom-560M模型發(fā)送我們擁有的所有token的logits,這些logits可以使用softmax函數(shù)轉(zhuǎn)換為選擇生成token的概率。

如果查看top 5個輸出token,它們都是有意義的。我們可以生成以下看起來合法的短語:

Paris is the city of love.
Paris is the city that never sleeps.
Paris is the city where art and culture flourish.
Paris is the city with iconic landmarks.
Paris is the city in which history has a unique charm.
然后, 有不同的策略來選擇token。

4.1 greedy sampling

貪婪采樣的模型在每一步都選擇它認為最有可能的詞語——它不考慮其他可能性或探索不同的選擇。模型選擇概率最高的詞語,并基于選擇的詞語繼續(xù)生成文本。
一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

使用貪婪策略是計算效率高且直接的方法,但也會帶來重復或過于確定性的輸出。由于模型在每一步中只考慮最可能的標記,可能無法捕捉到上下文和語言的全部多樣性,也不能產(chǎn)生最富創(chuàng)造力的回答。模型的這種目光短淺的特點僅僅關(guān)注每一步中最可能的標記,而忽視了對整個序列的整體影響。
示例中生成的輸出可能是:Paris is the city of the future. The

4.2 Beam Search

Beam搜索是文本生成中使用的另一個策略。在beam搜索中,模型假設一組最有可能的前“k”個token,而不僅僅考慮每個步驟中最有可能的token。這組k個token被稱為“beam”。
一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer
模型通過為每個token生成可能的序列,并通過擴展每個beam在文本生成的每個步驟中跟蹤它們的概率來生成可能的序列。這個過程會一直持續(xù)下去,直到達到生成文本的所需長度或者每個beam遇到一個“終止”標記的時候。模型會從所有beam中選擇具有最高整體概率的序列作為最終輸出。從算法的角度來看,創(chuàng)建beam就是擴展一個k叉樹。在創(chuàng)建beam之后,選擇具有最高整體概率的分支作為最終輸出。
示例中生成的輸出可能是:Paris is the city of history and culture.

4.3 probability sampling

簡單來說就是通過選擇一個隨機值,并將其映射到所選的詞匯來選擇下一個詞??梢詫⑵湎胂鬄樾D(zhuǎn)輪盤,每個詞匯的區(qū)域由其概率決定。概率越高,選中該詞的機會越大。這是一個相對簡單的計算解決方案,由于相對較高的隨機性,句子(或詞語序列)可能每次都會不同。
一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

4.4 ramdom sampling with temperature

一般地,使用softmax函數(shù)將logit轉(zhuǎn)換為概率。在這里,為隨機采樣引入了溫度——一種影響文本生成隨機性的超參數(shù)。比較一下激活函數(shù),可以更好地理解溫度如何影響概率計算。
在引入溫度之后,與典型的softmax不同之處在于分母除以了溫度T。溫度越高(趨向1)輸出結(jié)果會更加多樣化,而溫度越低(趨向0),輸出結(jié)果則更加集中并更具確定性。當T = 1的時候,演變?yōu)樽畛跏褂玫膕oftmax函數(shù)。
一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

4.5 top-k sampling

使用前k個token而不是全部token。這將增強文本生成的穩(wěn)定性,又不會太大程度上降低創(chuàng)造力?,F(xiàn)在只對前k個token進行溫度下的隨機抽樣。唯一可能的問題可能是選擇數(shù)字k,以下是如何改進它。
一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer

4.6 top-P sampling

top-p采樣不是指定一個固定的“k”令牌數(shù)量,而是使用一個概率閾值“p”。該閾值代表了希望在采樣中包括的累積概率。模型在每個步驟中計算所有可能令牌的概率,然后按照降序的方式對它們進行排序。

一文讀懂「Prompt Engineering」提示詞工程,AI:一文讀懂「X」系列,prompt,人工智能,提示詞工程,transformer
該模型將繼續(xù)添加token到生成的文本中,直到它們的概率之和超過指定的閾值。top-p采樣的優(yōu)勢在于它允許根據(jù)上下文進行更動態(tài)和自適應的標記選擇。每步選擇的標記數(shù)量可以根據(jù)該上下文中token的概率而變化,這可以產(chǎn)生更多樣化和更高質(zhì)量的輸出。

4.7 Prompt 的可能工作機制

在預訓練語言模型中,解碼策略對于文本生成非常重要。有多種方法來定義概率,又有多種方法來使用這些概率。溫度控制了解碼過程中token選擇的隨機性。較高的溫度增強了創(chuàng)造力,而較低的溫度則關(guān)注連貫性和結(jié)構(gòu)。雖然創(chuàng)造力可以帶來有趣的語言體驗,但適度的穩(wěn)定性可以確保生成的文本的優(yōu)雅。
那么,Prompt 的本質(zhì)大概應該是語義特征的顯式表達, Prompt 的工作機制很可能只是影響大模型所選擇生成文本token 的概率。由于大模型在很大程度上是一個黑盒子,其涌現(xiàn)特性具有難解釋性,而海量的數(shù)據(jù)關(guān)系很難抽象出確定性的特征,只能是概率性結(jié)果。另一方面,用戶的需求千變?nèi)f化,并且對于需求的表達更是極具多樣性。因此, Prompt 很可能在某些限定的領域才存在一些通用的表達方式。

5. Prompt的使用技巧

原則1:清晰明確

不要像女人說話一樣,讓大模型去猜測,去揣摩人心。寫的越具體越好。

1、使用分隔符:清楚地表示輸入的不同部分,讓模型清楚地了解要處理哪段文本。分隔符可以是任何明確的標點符號(雙引號、單引號、XML標記、章節(jié)標題等)。

2、結(jié)構(gòu)化輸出:為了更容易解析模型的輸出,結(jié)構(gòu)化輸出很有幫助,如HTML或JSON

3、具體和直接:越直接,信息傳遞就越有效

4、要做什么:避免說「不要做」什么,而是說「要做」什么

5、少樣本提示:讓模型執(zhí)行實際任務前,提供給模型成功執(zhí)行該任務的示例,以此告訴模型,你想讓模型做的任務是什么(In context Learning)

原則2:給模型思考的過程

1、指令拆分:分條目編寫指令,指定完成任務所需的步驟

2、邏輯鏈:讓模型給出結(jié)論前先自行推理

3、檢查并改進:設置一個新的prompt,定義什么是「好」,并要求LLM檢查其先前的輸出以查看它是否「好」。文章來源地址http://www.zghlxwxcb.cn/news/detail-790277.html

到了這里,關(guān)于一文讀懂「Prompt Engineering」提示詞工程的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關(guān)文章

  • LangChain(2)提示工程 Prompt Engineering

    提示一般包含如下部分: Instructions:整體結(jié)構(gòu),模型的人設 Instructions tell the model what to do, how to use external information if provided, what to do with the query, and how to construct the output. External information:額外提供給模型的信息 External information or context(s) act as an additional source of knowledge for t

    2024年02月15日
    瀏覽(56)
  • LLM提示詞工程和提示詞工程師Prompting and prompt engineering

    LLM提示詞工程和提示詞工程師Prompting and prompt engineering

    你輸入模型的文本被稱為提示,生成文本的行為被稱為推斷,輸出文本被稱為完成。用于提示的文本或可用的內(nèi)存的全部量被稱為上下文窗口。盡管這里的示例顯示模型表現(xiàn)良好,但你經(jīng)常會遇到模型在第一次嘗試時無法產(chǎn)生你想要的結(jié)果的情況。你可能需要多次修改提示中

    2024年02月12日
    瀏覽(22)
  • ChatGPT prompt engineering (中文版)筆記 |吳恩達ChatGPT 提示工程

    ChatGPT prompt engineering (中文版)筆記 |吳恩達ChatGPT 提示工程

    出處:https://download.csdn.net/download/weixin_45766780/87746321 感謝中文版翻譯https://github.com/datawhalechina/prompt-engineering-for-developers/tree/main/content 國內(nèi) == 需要對openapi的endpoint做一個反向代理,并修改本地openai包的源代碼== 如下圖: completion 原則一:編寫清晰、具體的指令 你應該通過提供

    2024年02月03日
    瀏覽(26)
  • 提示工程(Prompt Engineering)將ChatGPT調(diào)教為傲嬌貓娘~喵

    提示工程(Prompt Engineering)將ChatGPT調(diào)教為傲嬌貓娘~喵

    Prompt Engineering(提示工程)是指通過設計精心構(gòu)造的提示(prompt)或者輸入,來引導大型語言模型生成特定類型的輸出。這個技術(shù)背后的原理是利用模型對輸入的敏感性,通過提供特定格式或者內(nèi)容的提示,引導模型生成符合預期的輸出。 Prompt Engineering通過設計和構(gòu)造精心設

    2024年02月05日
    瀏覽(117)
  • 【簡單入門】ChatGPT prompt engineering (中文版)筆記 |吳恩達ChatGPT 提示工程

    【簡單入門】ChatGPT prompt engineering (中文版)筆記 |吳恩達ChatGPT 提示工程

    出處:https://download.csdn.net/download/weixin_45766780/87746321 感謝中文版翻譯https://github.com/datawhalechina/prompt-engineering-for-developers/tree/main/content 國內(nèi) == 需要對openapi的endpoint做一個反向代理,并修改本地openai包的源代碼== 如下圖: completion 原則一:編寫清晰、具體的指令 你應該通過提供

    2024年02月05日
    瀏覽(23)
  • OpenAI官方吳達恩《ChatGPT Prompt Engineering 提示詞工程師》(5)轉(zhuǎn)換 / Transforming翻譯

    輸入一段文本,將其轉(zhuǎn)換或翻譯為另一種語言,或幫助拼寫和語法糾正 轉(zhuǎn)換格式,例如輸入HTML并輸出JSON 和(①指南)一樣需要搭建一個環(huán)境 將以下英文文本翻譯為西班牙文 識別語言 同時進行多種翻譯,翻譯成法語、西班牙語、英語海盜語 有正式和非正式之分。 正式場合

    2024年02月07日
    瀏覽(26)
  • Prompt工程師指南[應用篇]:Prompt應用、ChatGPT|Midjouney Prompt Engineering

    主題: 與 ChatGPT 對話 Python 筆記本 Topics: ChatGPT介紹 審查對話任務 與ChatGPT對話 Python筆記本 ChatGPT介紹 ChatGPT是OpenAI訓練的一種新型模型,可以進行對話交互。該模型經(jīng)過訓練,可以按照提示中的指令,在對話上下文中提供適當?shù)幕貞?。ChatGPT 可以幫助回答問題、建議菜譜、按

    2024年02月04日
    瀏覽(25)
  • AI 大語言模型的提示詞工程 Prompt ,以及我們?nèi)绾问褂?Prompt 改善 AI 的思考能力

    1、Prompt 的發(fā)展 Prompt 是為了改善 AI 輸出質(zhì)量的一些 關(guān)鍵引導詞 Prompt 是有一定的門檻的 但是后面馬上 GPT 自己生成 Prompt 就被驗證是可行的,且生成的 Prompt 符合人們的預期 為了減少創(chuàng)建和驗證有效指令的人工工作量,來自多倫多大學、滑鐵盧大學等機構(gòu)的研究者提出了一種

    2024年02月10日
    瀏覽(27)
  • 觸手ai繪畫prompt工程之鏡頭遠近提示詞匯總

    觸手ai繪畫prompt工程之鏡頭遠近提示詞匯總

    上篇介紹了觸手ai繪畫平臺的prompt生成教程指南,里面涵蓋了成圖片的方法,寫prompt基本模板,學習prompt的方法等方法,今天介紹一個用prompt控制鏡頭距離及角度的方法和提示詞。 我們把可以使用的視角 prompt 放進 X/Y/Z plot 比較一下,為了突出效果要提高權(quán)重,盡量不要加入

    2024年02月03日
    瀏覽(24)
  • 《ChatGPT Prompt Engineering for Developers》課程-提示詞原則

    本章的主要內(nèi)容為編寫 Prompt 的原則,在本章中,我們將給出兩個編寫 Prompt 的原則與一些相關(guān)的策略,你將練習基于這兩個原則來編寫有效的 Prompt,從而便捷而有效地使用 LLM。 本教程使用 OpenAI 所開放的 ChatGPT API,因此你需要首先擁有一個 ChatGPT 的 API_KEY(也可以直接訪問

    2024年02月03日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包