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