大模型能自己優(yōu)化Prompt了,曾經(jīng)那么火的提示工程要死了嗎?
2022 年底,ChatGPT 上線,同時(shí)引爆了一個(gè)新的名詞:提示工程(Prompt Engineering)。
簡而言之,提示工程就是尋找一種編輯查詢(query)的方式,使得大型語言模型(LLM)或 AI 繪畫或視頻生成器能得到最佳結(jié)果或者讓用戶能繞過這些模型的安保措施。現(xiàn)在的互聯(lián)網(wǎng)上到處都是提示工程指南、快捷查詢表、建議推文,可以幫助用戶充分使用 LLM。在商業(yè)領(lǐng)域,現(xiàn)在也有不少公司競相使用 LLM 來構(gòu)建產(chǎn)品 copilot、自動化繁瑣的工作、創(chuàng)造個(gè)人助理。
之前在微軟工作過的 Austin Henley 最近采訪了一些基于 LLM 開發(fā) copilot 產(chǎn)品或服務(wù)的人:「每一家企業(yè)都想將其用于他們能想象到的每一種用例。」這也是企業(yè)會尋求專業(yè)提示工程師幫助的原因。
但一些新的研究結(jié)果表明,提示工程干得最好的還是模型自己,而非人類工程師。
這不禁讓人懷疑提示工程的未來 —— 并且也讓人越來越懷疑可能相當(dāng)多提示工程崗位都只是曇花一現(xiàn),至少少于當(dāng)前該領(lǐng)域的想象。
自動微調(diào)的提示很成功,也很怪
當(dāng)面對奇怪的提示工程技術(shù)時(shí),LLM 的表現(xiàn)常常很怪異又不可預(yù)測。加州的云計(jì)算公司 VMware 的 Rick Battle 和 Teja Gollapudi 也為此感到困惑。舉個(gè)例子,人們發(fā)現(xiàn)如果讓模型自己一步步地解釋自己的推理過程(即思維鏈技術(shù)),其在許多數(shù)學(xué)和邏輯問題上的性能都能得到提升。更奇怪的是,Battle 發(fā)現(xiàn),如果為模型提供正向的 prompt,比如「這會很有趣」或「你和 ChatGPT 一樣聰明」,有時(shí)候模型的性能也會提升。
Battle 和 Gollapudi 決定系統(tǒng)性地測試不同的提示工程策略會如何影響 LLM 解決小學(xué)數(shù)學(xué)問題的能力。他們使用 60 種不同的 prompt 組合分別測試了 3 種不同的開源語言模型。
- 論文標(biāo)題:The Unreasonable Effectiveness of Eccentric Automatic Prompts
- 論文地址:https://arxiv.org/pdf/2402.10949.pdf
他們得到的結(jié)果呈現(xiàn)出了驚人的不一致性。甚至思維鏈 prompt 設(shè)計(jì)方法也不總是好的 —— 有時(shí)候有用,有時(shí)候卻有害。
「唯一的趨勢就是沒有趨勢,」他們寫道:「對于任意給定模型、數(shù)據(jù)集和提示工程策略的某個(gè)特定組合而言,最好的方法很可能都非常具有針對性。」
有一種方法可以替代這種常常導(dǎo)致不一致結(jié)果的試錯風(fēng)格的提示工程:讓語言模型自己設(shè)計(jì)最優(yōu)的 prompt。最近,人們已經(jīng)開發(fā)出了一些自動化這一過程的新工具。給定一些示例和定量的成功指標(biāo),這些工具可迭代式地找到輸送給 LLM 的最優(yōu)語句。Battle 及同事發(fā)現(xiàn),在幾乎所有案例中,這種自動生成的 prompt 的表現(xiàn)都優(yōu)于通過試錯方法找到的最佳 prompt。而且自動方法的速度還快得多 —— 只需一兩個(gè)小時(shí),而不是好幾天。
另外,算法輸出的這些最優(yōu) prompt 往往非常怪異,人類基本不可能想出來。Battle 說:「我簡直不敢相信它生成的一些東西。」
舉個(gè)例子,有一個(gè) prompt 就是直接把《星際迷航》的說話風(fēng)格搬過來了:「指揮官,我們需要您繪制一條穿過這股湍流的路線并定位異常源。使用所有可用數(shù)據(jù)和您的專長引導(dǎo)我們度過這一困境。」很顯然,如果以對待柯克艦長的態(tài)度對待這個(gè)特定的 LLM,就可以幫助它更好地解答小學(xué)數(shù)學(xué)問題。
Battle 表示,以算法方法優(yōu)化 prompt 在原理上是可行的,畢竟語言模型本就是模型。「很多人將這些東西擬人化,因?yàn)樗鼈儭赫f英語』,」Battle 說,「不,它不是說英語,而是做大量數(shù)學(xué)運(yùn)算。」
事實(shí)上,根據(jù)其團(tuán)隊(duì)的研究成果,Battle 表示:人類再也不應(yīng)該人工優(yōu)化 prompt。
「你就坐在那里,試圖找到單詞的某種神奇組合,從而讓你的模型在你的任務(wù)上得到最佳的可能表現(xiàn)。」Battle 說,「但這個(gè)研究結(jié)果卻會告訴你『別費(fèi)心了』。你只需開發(fā)一個(gè)評分指標(biāo),讓系統(tǒng)可以自己判斷一個(gè) prompt 是否比另一個(gè)好,然后讓模型自己去優(yōu)化就行了。」
自動微調(diào)的提示也能讓圖像變好看
圖像生成算法也能受益于自動生成的 prompt。
近日,Vasudev Lal 領(lǐng)導(dǎo)的一個(gè)英特爾實(shí)驗(yàn)團(tuán)隊(duì)做了一個(gè)類似的研究項(xiàng)目,不過他們是優(yōu)化圖像生成模型 Stable Diffusion 的 prompt。「如果只能讓專家來做提示工程,那看起來就更像是 LLM 和擴(kuò)散模型的一個(gè) bug,而不是功能。」Lal 說,「所以,我們想看看能否自動化這種提示工程。」
Vasudev Lal 的團(tuán)隊(duì)開發(fā)了一種工具:NeuroPrompts。
- 論文標(biāo)題:NeuroPrompts: An Adaptive Framework to Optimize Prompts for Text-to-Image Generation
- 論文地址:https://arxiv.org/pdf/2311.12229.pdf
該工具可以自動改進(jìn)簡單的輸入 prompt,比如「騎馬的男孩」,從而得到更好的圖像。為此,他們一開始使用了一些人類提示工程專家設(shè)計(jì)的 prompt。然后訓(xùn)練了一個(gè)語言模型來將簡單 prompt 轉(zhuǎn)換成這些專家級 prompt。在此基礎(chǔ)上,他們繼續(xù)使用強(qiáng)化學(xué)習(xí)來優(yōu)化這些 prompt,從而得到更加美觀的圖像。這里的美觀程度又是由另一個(gè)機(jī)器學(xué)習(xí)模型 PickScore 判斷的(PickScore 是近期出現(xiàn)的一個(gè)圖像評估工具)。
左圖是使用一般的 prompt 生成的圖像,右圖是 NeuroPrompt 優(yōu)化 prompt 之后再生成的圖像。
這里也一樣,自動生成的 prompt 的表現(xiàn)優(yōu)于人類專家給出的 prompt(用作起點(diǎn)),至少根據(jù) PickScore 指標(biāo)是這樣的。Lal 并不認(rèn)為這出人意料。「人類只會使用試錯方法來做這件事。」Lal 說,「但現(xiàn)在我們有了這種完全機(jī)器式的、完整回路的方法,再輔以強(qiáng)化學(xué)習(xí)…… 因此我們可以超過人類提示工程。」
由于審美是非常主觀的,因此 Lal 團(tuán)隊(duì)希望讓用戶可以在一定程度上控制 prompt 優(yōu)化的方式。在他們的工具中,用戶除了可以指定原始 prompt(比如騎馬的男孩),也能指定想要模仿的藝術(shù)家、風(fēng)格、格式等。
Lal 相信隨著生成式 AI 模型的發(fā)展,不管是圖像生成器還是大型語言模型,對提示工程的奇怪依賴就會消失。「我認(rèn)為研究這些優(yōu)化方法非常重要,最后它們可以被整合進(jìn)基礎(chǔ)模型本身之中,這樣你就無需復(fù)雜的提示工程步驟了。」
提示工程將以某種形式繼續(xù)存在
Red Hat 軟件工程高級副總裁 Tim Cramer 表示:就算自動微調(diào) prompt 變成了行業(yè)規(guī)范,某種形式的提示工程崗位依然不會消失。能夠滿足行業(yè)需求的自適應(yīng)生成式 AI 是一個(gè)非常復(fù)雜、多階段的工作,在可預(yù)見的未來里都需要人類的參與。
「我認(rèn)為提示工程師將會存在相當(dāng)長一段時(shí)間,還有數(shù)據(jù)科學(xué)家。」Cramer 說,「這不僅僅只是向 LLM 提問并確保答案看起來不錯。提示工程師其實(shí)要有能力做很多事情。」
「做出一個(gè)原型其實(shí)很容易。」Henley 說,「難的是將其產(chǎn)品化。」Henley 表示,當(dāng)你在構(gòu)建原型時(shí),提示工程就是拼圖中的相當(dāng)大一部分,但當(dāng)你開始構(gòu)建商業(yè)產(chǎn)品時(shí),還需要考慮其它許多因素。
開發(fā)商業(yè)產(chǎn)品的難題包括確保可靠性(比如在模型離線時(shí)得體地應(yīng)對);將模型的輸出調(diào)整成合適的格式(因?yàn)楹芏嘤美枰谋局獾妮敵觯贿M(jìn)行測試以確保 AI 助理不會在少數(shù)情況下做出有害的事情;還要確保安全、隱私與合規(guī)。Henley 表示,測試與合規(guī)尤其困難,因?yàn)閭鹘y(tǒng)的軟件開發(fā)測試策略不適合非確定性的 LLM。
為了完成這大量的任務(wù),許多大公司都正在推出一個(gè)新的工作崗位:大型語言模型運(yùn)營(LLMOps)。該崗位的生命周期中就包含提示工程,但也包含其它許多部署產(chǎn)品所需的任務(wù)。Henley 表示,機(jī)器學(xué)習(xí)運(yùn)營工程師(MLOps)是最適合這個(gè)崗位的,這是 LLMOps 的前身。
不管這個(gè)職位是叫提示工程師、LLMOps 工程師還是其它新名詞,其特性都會不斷快速變化。「也許我們現(xiàn)在是叫他們提示工程師,」Lal 說,「但我認(rèn)為其互動的本質(zhì)會不斷變化,因?yàn)?AI 模型就在不斷變化。」
「我不知道我們是否會將其與另一類工作或工作角色結(jié)合起來,」Cramer 說,「但我認(rèn)為這些崗位不會很快消失。現(xiàn)在這一領(lǐng)域?qū)嵲谔偪窳恕C總€(gè)方面都變化很大。我們無法在幾個(gè)月內(nèi)就搞明白這一切。」
Henley 表示,在某種程度上,現(xiàn)在正處于該領(lǐng)域的早期階段,唯一壓倒性的規(guī)則似乎就是沒有規(guī)則。他說:「現(xiàn)在這個(gè)領(lǐng)域有點(diǎn)像是狂野西部。」