DeepMind 提出 OPRO:讓大模型自己迭代最佳化 Prompt
DeepMind 研究團隊在一篇新論文中提出 OPRO 方法,直接把大模型當作最佳化器。這項技術用自然語言描述任務並記錄歷史得分,讓模型自主摸索規律,在沒有形式化數學公式的情況下迭代尋找更優解,尤其擅長自己調優提示詞以提升準確率。

大家為了給大語言模型調出最好的回答,常常得絞盡腦汁試各種提示詞。哪怕只是加上一句「讓我們一步一步思考」,答案質量就可能天差地別。
DeepMind 近期在一篇論文裡提出了一個新解法,叫作 OPRO,全稱是 Optimization by PROmpting。簡單來說,他們不再依靠程式設計師寫數學公式去算梯度,而是直接讓大語言模型充當最佳化器,自己給自己改提示詞。
拿自然語言當最佳化運算元
傳統的深度學習最佳化演算法通常依賴導數和複雜的數學公式,但在很多現實場景下往往難以施展。DeepMind 的思路則是把數學問題變成文字描述。
使用者不用去定義複雜的更新公式,只需要用日常大白話把任務要求描述出來,模型就會結合過去的解題表現,迭代生成新的解決方案。在一些小規模的最佳化問題上,大模型自己摸索出來的解法,已經能媲美甚至超越專家手工設計的啟發式演算法。
讓元提示帶著模型滾雪球
OPRO 的核心在於一套迴圈機制。系統首先給模型輸入一段「元提示」,裡面包含任務描述、幾個典型案例、提示詞佔位符以及對應的輸出結果。
大模型會基於這些內容生成一批候選答案。接著,系統給這些候選答案打出質量分數,並挑選出優秀解及其得分,重新塞回元提示裡。這個迴圈會一直跑下去,直到模型再也提不出更好的方案為止。
由於大語言模型擅長在上下文裡找規律,它們能從高分樣本的歷史軌跡中摸索出最佳化方向。研究團隊用經典數學問題進行了驗證,包括線性迴歸以及旅行商問題。雖然在大規模任務上它未必比得過專業數學演算法,但在小規模測試中,模型準確抓住了最佳化的趨勢。
更實用的地方在於自動最佳化提示詞。針對 ChatGPT 和 PaLM 這類模型,OPRO 可以先從準確率很低的基礎提示詞出發,通過一輪又一輪的改寫與打分,逐步試探出大幅提升任務準確率的高階提示詞。
為什麼重要
對於每天跟大模型打交道的開發者和提示詞工程師來說,OPRO 最大的價值就是把靠運氣試錯的體力活變成了自動化流程。每個人都知道換幾個詞效果可能翻倍,但不同的模型和任務對用詞的敏感度完全不同,人類很難窮盡所有組合。現在只要準備好評分標準和少量樣本,就能讓機器跑出針對特定場景的提示詞方案,值得正在做生產級落地的團隊去嘗試類似思路。
對行業而言,這種方法降低了使用演算法最佳化的門檻。傳統最佳化需要演算法工程師編寫專門的求解器,而 OPRO 允許工程師用自然語言直接下達要求,比如順帶加上一句「希望方案既簡短又通用」。這種把自然語言當成控制介面的方式,可能會改變未來工作流的構建模式。
我們認為,DeepMind 這一步聰明在把大模型從被測試的終端,直接變成了調優引擎本身。不過它看起來也存在明顯的代價。這種不斷呼叫模型生成、打分再生成的迭代迴圈,推理成本和時間消耗不會太低。對於超大規模的工程問題,純文本上下文的承載能力也有限。它短期內更適合當作提示詞離線挖掘工具,而不是替代傳統求解器的萬能藥。
來源 (1)
- venturebeat.com(在新分頁開啟)原文venturebeat.com