10種實(shí)用的Prompt技巧圖解
收集整理了prompt engineering的10種實(shí)用技巧,以圖解的方式解釋了它們的主要原理。
本文追求以極簡風(fēng)格逼近這些方法的第一性原理,把黑話翻譯成人話,并使用圖片范例進(jìn)行說明。
同時(shí)也加入了一些自己的理解,如有出入歡迎指正。

一,Structured Prompt (結(jié)構(gòu)化提示詞)
可以按照 prompt = 角色 + 任務(wù) + 要求 + 提示 的結(jié)構(gòu)設(shè)計(jì)清晰明了的提示詞。
簡單地說,這個結(jié)構(gòu)就是要告訴chatgpt: 你是誰?你要做什么?要做成什么樣?要如何做?

二,Prompt Creator (提示詞生成器)
簡單地說,就是讓ChatGPT扮演一個提示詞生成專家,幫助你完成/完善/改進(jìn) 你的prompt。

三,One/Few Shot Prompt (單樣本/少樣本提示)
沒有范例:zero shot;給1個范例 one shot;幾個范例:few shot;
如果有許許多多的范例,可以嘗試finetune模型權(quán)重。

四,COT(Chain of Thought,思維鏈)
在few shot prompt的范例中給出思維鏈,讓模型學(xué)習(xí)不僅輸出結(jié)果還要給出思考過程??梢燥@著提升LLM的表現(xiàn)。

五,Self-Consistency COT (一致性思維鏈)
把temprature 調(diào)成大于0,如0.4. 然后讓模型多回答幾次,對回答結(jié)果進(jìn)行投票,可以顯著改善 COT。

六,Zero-Shot COT (零樣本思維鏈)
不提供范例,只在prompt的結(jié)尾加入"Let's think step by step (讓我們一步步思考)“ 能夠取得接近 COT的效果。

也可以試試: Let's work this out in a step by step way to be sure we have the right answer. 讓我們逐步解決這個問題,以確保我們得到正確的答案。
根據(jù)測試這個 咒語效果更好。

七,Self-ask Prompt (自我提問)
在prompt范例中引導(dǎo)LLM將一個復(fù)雜的問題拆分為簡單的子問題,逐個回答,然后匯總成為答案。
和COT思維鏈效果有些類似,但同時(shí)要求LLM提出子問題并給出答案,對生成內(nèi)容的約束更大,有時(shí)候效果更好。

八,ReACT(Reaon+Act 協(xié)同思考和動作 )
按照 think(思考)->act(行動)->observation(觀察)->think→act→observation...的模式來解決問題。
ReACT是以強(qiáng)化學(xué)習(xí)這種范式實(shí)現(xiàn)的,需要定義一個可以交互的環(huán)境env。
智能體agent就是LLM。act就是和環(huán)境交互(如查詢互聯(lián)網(wǎng),調(diào)用工具,執(zhí)行代碼等)。

AutoGPT也是這種強(qiáng)化學(xué)習(xí)范式prompt的產(chǎn)物,AutoGPT設(shè)計(jì)的主要prompt模式如下:
Thoughts(當(dāng)前的思考)->Reasoning(推理過程->Plan(后續(xù)計(jì)劃)->Criticism(自我批判審視)->Next action(下一步行動)
九,Reflexion (失敗后自我反思)
按照 任務(wù)->嘗試->評估->如果失敗則反思(Reflection)失敗原因->再次嘗試→...的模式來解決問題。
加了Reflection步驟可以明顯提升成功率。作者認(rèn)為反思步驟可以幫助LLM建立長期記憶或者經(jīng)驗(yàn)。
Reflection也是以強(qiáng)化學(xué)習(xí)范式實(shí)現(xiàn)的,需要定義一個可以交互的環(huán)境env,和ReACT出自同一批作者。

十,Langchain
將本地文檔做成知識庫,根據(jù)Query問題按照文本emedding向量相似度查詢到最相關(guān)的知識內(nèi)容,按照模版拼接到Prompt中。
核心技術(shù)是Embedding算法,以及向量數(shù)據(jù)庫查詢。

公眾號算法美食屋后臺回復(fù)關(guān)鍵詞:chatgpt,獲取本文notebook源碼以及吃貨更多chatgpt相關(guān)prompt技巧分享~
