自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Netflix 機(jī)器學(xué)習(xí)科學(xué)家的提示詞優(yōu)化經(jīng)驗(yàn)分享 原創(chuàng) 精華

發(fā)布于 2024-6-15 10:06
瀏覽
0收藏

編者按: 如何充分發(fā)揮大模型的潛能,用好大模型,關(guān)鍵在于如何優(yōu)化向它們發(fā)送的提示詞(prompt),是為提示詞工程(prompt engineering)。

本文Netflix 機(jī)器學(xué)習(xí)科學(xué)家Cameron R. Wolfe的提示詞優(yōu)化經(jīng)驗(yàn)分享,闡述了目前提示詞的主要構(gòu)成要素,介紹了與提示詞相關(guān)的上下文窗口相關(guān)信息,并總結(jié)了一些行之有效的優(yōu)化策略,如實(shí)事求是,實(shí)證為本、先從簡(jiǎn)單著手、若無(wú)必要,盡量簡(jiǎn)單明了、使用示例等,這些策略應(yīng)能為在實(shí)踐中優(yōu)化提示詞提供參考思路。

作者 | Cameron R. Wolfe, Ph.D.

編譯 | 岳揚(yáng)

本文將介紹一些提示詞工程(prompt engineering)的基本概念,以及如何應(yīng)用這些概念來(lái)提升大語(yǔ)言模型(LLM)的性能。

1. LLM 的界面極其簡(jiǎn)便易用

LLMs 如此受歡迎的主要原因之一是它們采用了 text-to-text 的輸入輸出界面(譯者注:用戶只需要在Web或客戶端界面上輸入文本提示詞,模型就能根據(jù)輸入的文本生成相應(yīng)的文本輸出。),使得使用起來(lái)非常簡(jiǎn)單直觀。在之前,使用深度學(xué)習(xí)解決一項(xiàng)任務(wù)至少需要我們通過一些數(shù)據(jù)對(duì)模型進(jìn)行微調(diào),以教會(huì)模型如何解決這項(xiàng)任務(wù)。此外,大多數(shù)此類模型都是專門解決單一任務(wù)的專家模型。由于 LLMs 具有一種新出現(xiàn)的上下文學(xué)習(xí)(in-context learning)能力,我們可以通過文本提示詞解決各種問題。以往復(fù)雜的問題解決過程現(xiàn)在已經(jīng)被簡(jiǎn)化為通過自然語(yǔ)言描述解決問題!

“prompt工程作為一個(gè)相對(duì)新興的學(xué)科領(lǐng)域,其目標(biāo)是開發(fā)和改進(jìn)優(yōu)化提示詞(prompt),使大模型(LMs)能基于這些提示詞充分發(fā)揮潛力,高效地被用于各項(xiàng)應(yīng)用方向和研究領(lǐng)域?!?------ 摘自文獻(xiàn) [1]

2. 什么是提示詞工程?

得益于大語(yǔ)言模型基于文本對(duì)話的簡(jiǎn)單交互界面,使用它們已不再是專業(yè)人士(數(shù)據(jù)科學(xué)家或機(jī)器學(xué)習(xí)工程師(MLE))的"私房菜"。普通大眾只要掌握一定的語(yǔ)言能力,就可以直接與這些模型對(duì)話交互,借助它們的能力解決較為復(fù)雜的問題。不過,在使用 LLM 解決問題時(shí),我們得到的結(jié)果很大程度上取決于提供給模型的文本提示詞。由于這個(gè)原因,提示詞工程(通過大量的實(shí)證試驗(yàn)和反復(fù)優(yōu)化,指導(dǎo)如何為特定任務(wù)設(shè)計(jì)高質(zhì)量的prompt)變得極其受歡迎和具有影響力,行業(yè)目前已經(jīng)積累了諸多有效的技術(shù)手段和優(yōu)秀的實(shí)踐方法。

3. 提示詞的主要構(gòu)成要素

為大語(yǔ)言模型設(shè)計(jì) prompt,有多種不同的方法。但是,大多數(shù) prompt 設(shè)計(jì)策略通常會(huì)包含以下幾個(gè)共同的組成要素:

  • 要處理的輸入數(shù)據(jù)(Input Data): 大模型需要處理的輸入數(shù)據(jù),比如待翻譯或分類的句子、待總結(jié)的文檔等。
  • 具體的示例(Exemplars):在 prompt 中介紹輸入數(shù)據(jù)和期望輸出之間的對(duì)應(yīng)關(guān)系,明確地指導(dǎo)模型產(chǎn)生所需的輸出形式,提高任務(wù)完成的準(zhǔn)確性,使得大模型完成預(yù)期的文本輸入到模型輸出的映射轉(zhuǎn)換。
  • 指令型文本(Instruction):使用自然語(yǔ)言文字對(duì)期望的模型輸出的性質(zhì)、格式等進(jìn)行描述和指導(dǎo)。
  • 結(jié)構(gòu)化和格式化的元素或標(biāo)簽(Indicators):通過標(biāo)簽、格式化元素( tags、formatting elements)等方式在 prompt 中引入一些人工結(jié)構(gòu),使其不只是簡(jiǎn)單的自然語(yǔ)言文本,而是帶有一些額外的語(yǔ)義信息和視覺提示,從而指導(dǎo)模型的輸出更契合要求。
  • 上下文(Context):prompt 中提供給大模型的一些背景信息、情況說(shuō)明、限制條件等內(nèi)容,有助于模型更好地把握語(yǔ)境,理解 prompt 的全部含義,從而生成更準(zhǔn)確、更符合預(yù)期的輸出結(jié)果。

在下圖中展示了一個(gè)真實(shí)的 prompt 實(shí)例,它將上述所有提示詞的主要構(gòu)成要素都整合到了一個(gè)句子分類任務(wù)的提示詞中。

Netflix 機(jī)器學(xué)習(xí)科學(xué)家的提示詞優(yōu)化經(jīng)驗(yàn)分享-AI.x社區(qū)

4. 上下文窗口(The context window)

在預(yù)訓(xùn)練階段,模型有一個(gè)固定的最大輸入長(zhǎng)度,如果輸入的內(nèi)容超過這個(gè)長(zhǎng)度,模型的輸出就可能失常。這個(gè)預(yù)訓(xùn)練時(shí)設(shè)定的序列長(zhǎng)度限制,就決定了模型實(shí)際運(yùn)行時(shí)能夠一次性處理的最大文本長(zhǎng)度,被稱為上下文窗口(The context window)。如果文本序列的長(zhǎng)度大大超過了這一預(yù)設(shè)的上下文長(zhǎng)度,那么模型的行為就可能無(wú)法預(yù)測(cè),并產(chǎn)生錯(cuò)誤的輸出。不過,有一些方法可以用來(lái)擴(kuò)展模型的上下文窗口,例如 Self-Extend [2] 或位置插值法(positional interpolation)[3]。

Netflix 機(jī)器學(xué)習(xí)科學(xué)家的提示詞優(yōu)化經(jīng)驗(yàn)分享-AI.x社區(qū)

近期關(guān)于 LLMs 的最新研究強(qiáng)調(diào)了創(chuàng)建長(zhǎng)上下文窗口(long context windows)的重要性,從而使得模型能夠在每個(gè)提示詞(prompt)中處理更多的信息(例如,更多的示例對(duì)(Exemplars)或更多的上下文內(nèi)容)。然而,并非所有的 LLM 都能完美地利用上下文 !通常通過 “大海撈針測(cè)試”(needle in the haystack test) [4] 來(lái)評(píng)估 LLM 利用長(zhǎng)上下文窗口信息的能力,這項(xiàng)測(cè)試具體包括:

  1. 在上下文中嵌入一個(gè)隨機(jī) fact(譯者注:獨(dú)立存在、真實(shí)無(wú)誤但與上下文無(wú)關(guān)的陳述性信息,可以檢驗(yàn)?zāi)P驮谡鎸?shí)應(yīng)用場(chǎng)景中對(duì)關(guān)鍵信息的識(shí)別和提取能力。)。
  2. 要求模型檢索這個(gè) fact。
  3. 反復(fù)地改變上下文長(zhǎng)度以及 fact 在上下文中的位置,并在各種上下文配置下反復(fù)測(cè)試。

這項(xiàng)測(cè)試會(huì)生成如下圖所示的測(cè)試結(jié)果(摘自文獻(xiàn) [4]),我們可以很容易地發(fā)現(xiàn)上下文窗口的不足之處。

Netflix 機(jī)器學(xué)習(xí)科學(xué)家的提示詞優(yōu)化經(jīng)驗(yàn)分享-AI.x社區(qū)

5. 我的提示詞(prompt)工程策略

針對(duì)不同的大型語(yǔ)言模型,提示詞工程的具體細(xì)節(jié)會(huì)有很大區(qū)別。但是,有一些通用的原則是非常有用的,可以用來(lái)指導(dǎo)如何設(shè)計(jì)提示詞:

  • 實(shí)事求是,實(shí)證為本:提示詞工程的首要步驟是建立一個(gè)可靠的評(píng)估機(jī)制(例如通過測(cè)試用例評(píng)估、人工評(píng)估或讓大模型進(jìn)行評(píng)估),從而輕松地評(píng)估或測(cè)量提示詞工程中 prompt 的優(yōu)化效果。
  • 先從簡(jiǎn)單著手:剛開始接觸提示詞工程時(shí),不應(yīng)當(dāng)直接嘗試 “chain-of-thought prompt” 這種復(fù)雜技術(shù),而應(yīng)先從最簡(jiǎn)單的形式著手,然后逐步添加復(fù)雜元素,同時(shí)根據(jù)提示詞的性能變化(見上文)來(lái)判斷是否有必要繼續(xù)增加提示詞的復(fù)雜度。
  • 追求明確具體而直接:盡可能消除 prompt 中的任何歧義,盡量使用簡(jiǎn)潔、明確、直接和具體的自然語(yǔ)言來(lái)描述期望大模型輸出的內(nèi)容。
  • 使用一些具體的示例(exemplars):如果很難具體描述期望的理想輸出,可以嘗試在提示詞中添加一些具體的示例,通過具體實(shí)例消除歧義,明確期望輸出的形式。
  • 若無(wú)必要,盡量簡(jiǎn)單明了:有些情況下確實(shí)需要使用很多復(fù)雜的 Prompt 策略(如解決多步推理問題),但我們?cè)谑褂眠@些方法之前應(yīng)三思而后行。要根據(jù)經(jīng)驗(yàn),通過判斷實(shí)踐效果和采用評(píng)估方法來(lái)確定是否必須引入復(fù)雜提示詞策略。

綜上所述,本文介紹的提示詞工程策略主要是:i) 先加大投入構(gòu)建一個(gè)非常好的評(píng)估框架 ;ii) 從簡(jiǎn)單的 Prompt 形式入手 ;iii) 根據(jù)實(shí)際需求,逐步適度引入復(fù)雜提示詞策略,以便盡可能達(dá)到理想的性能水平。

Netflix 機(jī)器學(xué)習(xí)科學(xué)家的提示詞優(yōu)化經(jīng)驗(yàn)分享-AI.x社區(qū)

Thanks for reading!


Cameron R. Wolfe, Ph.D.

I’m a researcher with an interest in deep learning and a passion for explaining scientific concepts to others.

END

參考資料

[1]https://www.promptingguide.ai/zh

[2]https://arxiv.org/abs/2401.01325

[3]https://arxiv.org/abs/2306.15595

[4]https://github.com/gkamradt/LLMTest_NeedleInAHaystack

本文經(jīng)原作者授權(quán),由 Baihai IDP 編譯。如需轉(zhuǎn)載譯文,請(qǐng)聯(lián)系獲取授權(quán)。

原文鏈接:

https://x.com/cwolferesearch/status/1786025095959298234

?著作權(quán)歸作者所有,如需轉(zhuǎn)載,請(qǐng)注明出處,否則將追究法律責(zé)任
標(biāo)簽
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦