從失望到精通:AI 大模型的掌握與運(yùn)用技巧(2)
現(xiàn)在 AI 很智能,但是 AI 產(chǎn)品并不智能。ChatGPT 官方聊天頁面只有一個(gè)輸入框,似乎秉承著 “Simple is Better” 的理念,但很多時(shí)候并非越簡(jiǎn)單越好,使用 ChatGPT 經(jīng)常需要輸入相似的提示詞,用起來效率極低。
下面將從四個(gè)方面簡(jiǎn)要解釋如何通過預(yù)定義提示詞提高輸入效率。
單平臺(tái)層面,如果你使用 ChatGPT 官網(wǎng),推薦 ChatGPT Prompt Plus 插件,支持自定義提示詞,可以快速呼出,還支持提示詞中定義變量,支持為提示詞分組,在呼出提示詞時(shí)選擇或者填寫即可進(jìn)行提問,非常方便。下圖就是通過該插件預(yù)定了 “解釋某句” 的界面,可以將需要填寫的內(nèi)容定義為變量,使用時(shí)呼出后填充即可。
直接通過 “/解釋某句” 即可呼出,不需要每次都輸入重復(fù)的提示詞,每次只需要必要的內(nèi)容,如這里的內(nèi)容和問題即可自動(dòng)拼接好提示詞發(fā)送給 ChatGPT 進(jìn)行提問。
如果你使用 Poe 平臺(tái),可以在平臺(tái)上預(yù)定義機(jī)器人,具體方法和上面大同小異,感興趣可以自行研究。
瀏覽器層面,可以通過安裝 ChatGPT Sidebar 這類的 AI 插件,可以在頁面上選擇一段內(nèi)容后,直接選擇內(nèi)置或預(yù)定義的提示詞進(jìn)行處理即可。
在輸入法層面,可以通過自定義短語設(shè)置,來預(yù)先定義提示詞,輸入內(nèi)容時(shí),可以通過輸入縮寫自動(dòng)填充提示詞。
在通用方法層面,你可以利用 Alfred 的 Snippets 功能(支持將剪切板內(nèi)容作為變量自動(dòng)替換預(yù)定義提示詞中的占位符)或者 utools 的備忘功能,來預(yù)定義并快速粘貼提示詞。
在使用 AI 工具時(shí),如果回答不滿意,可以檢查自己的提示詞是否真正符合“清晰具體、重點(diǎn)突出和充分詳盡”的原則。如果調(diào)整優(yōu)化提示詞還是得不到想要的答案,可以嘗試通過下面的方法解決。
有時(shí)候你以為你表達(dá)很清楚,其實(shí)模型理解和你的表達(dá)有偏差,你可以嘗試讓模型重述你的任務(wù),你可以根據(jù)他的重述發(fā)現(xiàn)偏差,對(duì)提示詞進(jìn)行針對(duì)性糾正。
對(duì)于提示詞并不是很復(fù)雜,但是模型似乎不能很好理解你的意圖的情況,可以考慮使用英文提問,有時(shí)候會(huì)有奇效。這可能與模型的語料中英文占比更多,模型更擅長(zhǎng)英語有關(guān),也可能是中文提問優(yōu)先匹配中文語料,但是中文語料質(zhì)量不高原因?qū)е碌?。之前就遇到過一個(gè)技術(shù)問題,用中文對(duì) New Bing 提問很多次都沒得到想要的答案,換成英文提問,一次就得到了靠譜的答案的情況。大家如果英文不好,也可以采用“套娃”的方法,如讓 ChatGPT 幫你翻譯成英文提示詞再對(duì) ChatGPT 進(jìn)行提問。
如果模型理解無誤,使用英文提問也沒有效果,建議換更高級(jí)的模型。在我看來不同的模型就像不同層次的學(xué)生,比如有些模型可能是中學(xué)生水平,有些模型可能是高中生水平,有些模型則相當(dāng)于大學(xué)生甚至研究生水平。而且不同的模型的擅長(zhǎng)之處也有所不同。因此當(dāng)提示詞已經(jīng)寫得很好,但模型回答并不滿意時(shí),有條件可以考慮切換到更強(qiáng)大的模型。在我的實(shí)際中,能夠明顯的感覺到 GPT-4 在大多數(shù)任務(wù)上都會(huì)比 GPT-3.5 回答更好,未來或許還會(huì)出現(xiàn)更強(qiáng)大的模型。
當(dāng)使用更高級(jí)模型也得不到滿意的答案,說明當(dāng)前任務(wù)對(duì)大模型來說過于復(fù)雜,此時(shí)可以考慮任務(wù)分解。對(duì)于復(fù)雜任務(wù),建議大家先進(jìn)行拆解,拆解到模型比較容易完成的步驟,然后每個(gè)步驟讓模型去完成,往往效果更好。比如你想讓模型寫出一個(gè)類,可以拆解成不同的函數(shù),然后每個(gè)函數(shù)讓模型去寫。
當(dāng)嘗試上述方法還是效果不滿意時(shí),可以嘗試任務(wù)接力。所謂“任務(wù)接力”是指,將任務(wù)拆解后分步驟讓 AI 分步完成或者人與 AI 分工合作完成。比如寫代碼,你可以開一個(gè)對(duì)話窗讓 AI 寫代碼,用另外一個(gè)對(duì)話框讓 AI 去找出其中的問題,再讓 AI 工具優(yōu)化代碼。比如寫稿件,你可以讓 AI 寫目錄供自己參考,也可以讓 AI 寫草稿自己優(yōu)化或者你自己直接寫稿子,最終再讓 AI 去潤(rùn)色。這樣復(fù)雜任務(wù)通過每個(gè)步驟拆解成 AI 比較容易完成的粒度或者通過將簡(jiǎn)單重復(fù)的任務(wù)分配給 AI ,將復(fù)雜 AI不擅長(zhǎng)的部分分配給人,可以實(shí)現(xiàn)更好地效果。
2.2.4 上下文丟失問題在使用 AI 工具過程中,經(jīng)過多輪對(duì)話之后,你可能會(huì)發(fā)現(xiàn)模型已經(jīng)忘了最初的任務(wù)是什么。
對(duì)于這種情況,最簡(jiǎn)單的處理辦法就是重新開一個(gè)對(duì)話窗口,重新表述問題,繼續(xù)處理后面的材料。
如果步驟特別多,需要重新開太多對(duì)話非常麻煩,可以嘗試下面的方法。
前面講到模型重述任務(wù)有助于檢查模型是否真正理解任務(wù),在我看來對(duì)上下文丟失的問題也有幫助,如果你的任務(wù)需要多輪對(duì)話才可以完成,可以嘗試沒隔幾輪對(duì)話問 AI 任務(wù)是什么,通過提醒可以降低“遺忘”的概率。
我在實(shí)踐過程中經(jīng)常使用“簡(jiǎn)述任務(wù)”這一方法。例如,當(dāng)需要讓模型概括每個(gè)段落的重點(diǎn)時(shí),我會(huì)在第一個(gè)提示詞中詳細(xì)寫明要求。然后,在第二輪發(fā)送段落前,我都會(huì)重述或簡(jiǎn)述這個(gè)要求。這樣即使模型忘記了最初的任務(wù),也能根據(jù)第二輪之后的簡(jiǎn)述完成任務(wù)。如“請(qǐng)按照我最初的要求,繼續(xù)提取下面段落重點(diǎn)發(fā)送給我。段落內(nèi)容:XXX”。
如果模型確認(rèn)或者簡(jiǎn)述任務(wù)方法還不能解決問題,側(cè)面說明這個(gè)任務(wù)可能對(duì)于模型來說有些復(fù)雜了,建議可以將任務(wù)進(jìn)一步拆解,讓每一個(gè) Chat 界面只做其中的一個(gè)步驟或者有些步驟讓 AI 來做,有些步驟讓人來完成。
2.2.5 回答可靠性問題很多人用大模型時(shí)偶爾會(huì)碰到明明回答錯(cuò)誤,但是大模型回答的卻很有自信的情況,很容易被大模型所“唬住”。
建議對(duì)于自己拿不太準(zhǔn)的問題可以問多個(gè)不同的模型,他們答案之間相互印證,降低都“胡說”的概率。有時(shí),對(duì)于相對(duì)嚴(yán)謹(jǐn)?shù)膬?nèi)容,可以將 AI 的回答僅作為基本參考,并需結(jié)合傳統(tǒng)的研究方式,如使用搜索引擎、查閱論文和其他資料等。
最關(guān)鍵的還是自己要具備辨識(shí)能力。因?yàn)榧词共皇?AI 時(shí)代,你讓其他人幫你準(zhǔn)備材料,如果你沒有足夠的辨識(shí)度,也很容易出現(xiàn)問題。雖然 AI 能夠提高我們的效率,但是我們比以往更需要提高專業(yè)素養(yǎng),提高對(duì)信息真?zhèn)蔚谋孀R(shí)能力。
2.2.6 如何更好發(fā)收費(fèi)模型的價(jià)值以 ChatGPT 為例, GPT-3.5 目前免費(fèi)使用, GPT-4 則需要開通 Plus 服務(wù),而且還有每 3 小時(shí) 50 個(gè) message 的限制(未來有可能進(jìn)一步提高,甚至完全放開)。在 Poe 平臺(tái)上,ChatGPT 和 Claude 也分為免費(fèi)版和收費(fèi)版本,收費(fèi)版也有次數(shù)限制。
很多簡(jiǎn)單的任務(wù)免費(fèi)的模型就可以做的很好,優(yōu)先可以使用免費(fèi)模型進(jìn)行處理。對(duì)于復(fù)雜的任務(wù),可以安排給收費(fèi)模型進(jìn)行處理。
在使用收費(fèi)模型時(shí),可以將多個(gè)步驟合并成一個(gè)提示詞,節(jié)省收費(fèi)模型的調(diào)用次數(shù)。
可以使用免費(fèi)模型產(chǎn)出草稿版本,然后讓收費(fèi)的高級(jí)模型進(jìn)行二次優(yōu)化,這也是一個(gè)不錯(cuò)的選擇。
2.2.7 業(yè)務(wù)接入大模型接入經(jīng)驗(yàn)現(xiàn)在很多公司開始自研大模型,很多業(yè)務(wù)也開始接入大模型,下面談?wù)剺I(yè)務(wù)接入大模型的一些經(jīng)驗(yàn),掌握這些經(jīng)驗(yàn)可以讓你少走一些彎路。
大模型不是萬能的,我們不應(yīng)該“為了使用 AI 而使用 AI”。就像汽車雖然方便快捷,但不是在所有情況下都是最佳選擇。在實(shí)踐過程中,我們發(fā)現(xiàn)某些任務(wù)通過工程化方式解決效果更佳且成本更低。因此,在接入大模型時(shí),我們需要權(quán)衡哪些任務(wù)適合工程化解決,哪些任務(wù)更適合用大模型來解決。
在正式接入模型之前,需要確定模型的效果評(píng)估標(biāo)準(zhǔn),這樣才可以發(fā)現(xiàn)模型的不足,針對(duì)性優(yōu)化。我們還需要確定可進(jìn)行工程化開發(fā)的前提,比如生成的代碼采納率在 50%,生成的段落達(dá)到 80 分以上等。如果我們過早進(jìn)入工程化開發(fā),產(chǎn)品可能上線后長(zhǎng)時(shí)間達(dá)不到預(yù)期標(biāo)準(zhǔn),甚至可能永遠(yuǎn)無法達(dá)成,從而導(dǎo)致產(chǎn)品可用性較差,并浪費(fèi)大量資源。
有些復(fù)雜任務(wù)需要對(duì)模型進(jìn)行微調(diào),需要大量的人工標(biāo)注,以及評(píng)估模型效果工作。為了提高效率,建議大家可以自己編寫腳本,或借助 AI 模型進(jìn)行輔助,實(shí)現(xiàn)自動(dòng)化或半自動(dòng)化的流程。
在將 AI 模型落地到業(yè)務(wù)的過程中,開發(fā)人員雖然熟悉業(yè)務(wù),但可能不了解模型優(yōu)化的方法;算法人員雖然更專業(yè),卻可能對(duì)業(yè)務(wù)不夠了解。因此,想要不斷優(yōu)化大模型的效果,就需要開發(fā)同學(xué)和算法同學(xué)通力合作。而且由于有些公司大模型團(tuán)隊(duì)的算法人員緊缺,很多業(yè)務(wù)又想盡早上線,有些開發(fā)人員也開始親自訓(xùn)練大模型。但缺乏專業(yè)指導(dǎo)可能會(huì)導(dǎo)致許多優(yōu)化思路不科學(xué),從而會(huì)走許多彎路。因此,建議大家在考慮將業(yè)務(wù)加入 AI 能力,讓 AI 為業(yè)務(wù)提效時(shí),增加算法同學(xué)的投入,讓算法和開發(fā)同學(xué)通力合作,更好地解決問題。
總結(jié)
或許,提示詞只是大語言模型發(fā)展早期階段的一種折中方案??梢灶惐葹槠嚨陌l(fā)展,從手動(dòng)擋逐漸演化到輔助駕駛和自動(dòng)駕駛,未來我們和大模型的交互可能也會(huì)采用更先進(jìn)的方式,如腦電波、意念等。
雖然 ChatGPT 的出現(xiàn)讓人眼前一亮,但是大語言模型還存在很多其他待解決的問題,現(xiàn)在還需要我們?nèi)ミw就它。
不過,在我看來,這卻是一件值得慶幸的事情。正是因?yàn)?AI 的不完美,我們才沒那么容易失業(yè)。
在 AI 發(fā)展的當(dāng)前階段,我認(rèn)為最重要的是學(xué)好提示詞,掌握 AI 工具的最佳實(shí)踐,才能成為最早一批靈活駕馭大模型來更好解決你生活和工作問題的人,才能在 AI 時(shí)代的早期取得一些競(jìng)爭(zhēng)優(yōu)勢(shì)。希望本文提供的一些經(jīng)驗(yàn)?zāi)軌蜃尨蠹疑僮咭恍澛贰?/p>
你在 AI 工具使用中還有哪些經(jīng)驗(yàn)?你對(duì)當(dāng)前大語言模型的發(fā)展有啥看法?歡迎大家在評(píng)論區(qū)進(jìn)行評(píng)論補(bǔ)充和討論。
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。