![]()
Prompt 作為一種接口,直接影響 LLM 與 agent system 的行為方式與性能表現。對 prompts 的理解與控制,本質上決定了系統能力能夠被釋放到什么程度。Prompt learning 的出現,使這一過程從經驗驅動走向可系統研究,也逐步形成了一條清晰的發展脈絡。回顧這一路徑,本身就足以幫助我們理解 prompt learning 是如何一步步被構建出來的。
但更重要的是,當這條路徑被真正看清之后,另一件事情會變得異常明確:prompt learning 并不是終點,而是第一次把一個巨大而長期被遮蔽的創新源頭暴露出來。一旦 prompt 不再被視為靜態對象,而被納入一個能夠評估、修正、重寫并持續演化的閉環之中,研究不再圍繞 “技巧是否有效”,而開始圍繞系統如何生長展開。而這種系統性的展開,將會自然地帶來數之不盡的創新點(詳見本文第 5 節)。SIPDO(ICLR 2026)正是在這一時刻作為一個例子出現的 —— 它不是對既有工作的修補,而是把 prompt learning 打開成一片可以不斷生成新問題、新機制、新方法的連續創新地帶。
LLM 在不同任務里表現強逐漸增強,但一個長期存在的問題是:prompt 的微小改動可能帶來顯著性能波動;更麻煩的是,task 會持續變化,新問題、edge cases、甚至 adversarial queries 不斷出現,導致固定數據集上最優的 prompt 在真實環境里變脆、甚至出現類似 catastrophic forgetting 的退化。
這篇文章想回答三個問題:
- prompt optimization 這幾年到底在怎么 “進化”?— 01-04 章節
- 這種進化能夠推進哪些創新點供大家使用 — 05 章節
- 以 SIPDO(ICLR 2026)為例子,闡釋 SIPDO 在這條進化鏈上解決了什么關鍵瓶頸?— 06 章節
![]()
- 博客鏈接: https://dream.ischool.illinois.edu/blogs/evolution_of_prompt_optimization.html
- 論文鏈接: https://arxiv.org/pdf/2505.19514
01|一張關鍵地圖:Prompt Optimization 的演化,幾乎復刻了 Parameter Learning 的歷史
DREAM Lab 總結的 Key Insight:prompt optimization 的演化路徑,鏡像了神經網絡參數訓練(parameter learning)的歷史—— 從早期的 “黑盒擾動 + 選擇”(genetic/evolutionary),到更有方向感的更新(類梯度),再到 Beyond First-Order 的優化(利用歷史信息、閉環反饋、加速收斂與跳出局部最優)。
![]()
Figure 1 把兩條脈絡并排對照:
Parameter Learning:1980s Genetic Algorithms → 1990s SGD → 2000s Adam/Advanced optimizers
Prompt Learning:2022 Genetic approaches → 2023 Textual gradients → 2024 Advanced methods
02|Phase 1:從進化搜索開始 —— 在離散文本空間里先學會探索
Prompt 是離散文本,很難像參數那樣直接寫 where p is prompt 。DREAM Lab 的 Blog 里提到,早期方法很自然地走向進化式探索:維護一群候選 prompts、評估效果、保留好的、再 mutation/crossover 生成新候選。
2.1 GPS (Xu et al., 2022):Genetic Prompt Search
- Population:候選 prompt 集合
- Fitness:驗證集表現
- Selection:保留 top-K
- Mutation:回譯、隨機編輯、或用 LLM 生成變體
- Crossover:組合不同 prompt 的片段,并且報告了相對人工 baseline 的提升
2.2 Survival of the Safest (SoS) (Sinha et al., 2024):多目標進化(性能 × 安全)
SoS 的關鍵是:不只追 performance,還把 security 一起做 Pareto 權衡,并用 semantic mutations 保持 prompt 可讀與語義一致。
2.3 EvoPrompt (Guo et al., 2024):讓 LLM 當智能 mutation operator
DREAM Lab Blog 提到 EvoPrompt:變異不再是隨機擾動,而是由 LLM 生成語義上合理、質量更高的變體 —— 進化框架仍在,但 mutation 變得更聰明。在沒有可微梯度的離散空間里,先把探索能力搭起來;缺點是成本高、迭代方向感弱。
03|Phase 2:“Textual Gradients” 出現 —— 像 SGD 一樣有方向地改 prompt
DREAM Lab Blog 中,把 2023 年 之后的變化稱為 prompt optimization 的 “gradient revolution”:雖然不能真的對文本求導,但可以用自然語言反饋來扮演 “梯度方向”。
3.1 ProTeGi (Pryzant et al., 2023):用批評當做梯度,用 beam search 保持候選
跑一批樣本 → 讓 LLM 生成對 prompt 的批評(textual gradient)→ 按批評方向改寫 prompt → beam search 保留多個候選并擇優。并在文中提到可帶來顯著提升。
3.2 TextGrad (Yuksekgonul et al., 2024):把文本反饋系統化成類似 autodiff 的框架
TextGrad 的野心更大:把多模塊 LLM 系統當作 computation graph,通過文本形式的反向傳播把反饋傳回去優化 prompt / 模塊接口,并提供類似 PyTorch 的 API 體驗。
04|Phase 3:Beyond First-Order—— 引入歷史信息和閉環反饋,讓 prompt 真正自適應
在參數優化里,SGD 之后有 momentum/Adam/ 二階方法來利用歷史信息、調節步長、跳出局部最優。DREAM Lab Blog 中強調了 prompt optimization 也進入了類似階段,并用兩個代表說明:
4.1 REVOLVE (Zhang et al., 2024):跟蹤 response evolution,類似動量 / 二階的歷史信號
一階方法只用當前迭代的即時反饋;REVOLVE 會利用輸出在多輪迭代中的演化軌跡來判斷停滯、調整更新幅度,并報告更快收斂與更高收益。
![]()
4.2 SIPDO (Yu et al., 2025):用 Synthetic Data 主動找難錯題,把 prompt optimization 變成 closed-loop
SIPDO 的定位非常明確:它在 Beyond First-Order 階段引入了一個更強的信號源 —不是只在固定數據集上被動優化,而是生成 synthetic data 主動 probe 當前 prompt 的弱點,形成閉環,并配合 difficulty progression(逐級加難)。
05 | 從 Parameter Learning 到 Prompt Optimization, 比比皆是的下一個創新點
看到這里,其實一條非常清晰的邏輯已經浮現出來:prompt optimization 正在重復 parameter learning 早期走過的那條演化路徑。參數訓練并不是一開始就具備今天這些成熟的優化方法,而是經歷了從啟發式搜索,到一階梯度更新,再到系統性引入歷史信息、穩定性控制與閉環反饋的長期演進過程。正是這條路徑,在數十年的積累中不斷分叉,持續催生出新的方法、新的系統設計與新的研究問題。
Prompt optimization 正處在一個高度相似、但時間尺度被大幅壓縮的階段。今天我們已經看到了類梯度更新、歷史反饋、difficulty control、closed-loop signals 等關鍵要素逐步出現,但這并不是終點,而恰恰意味著這條路線剛剛被真正打開。在 parameter learning 中被反復驗證有效的思想 —— 更穩定的更新策略、更高信息密度的反饋信號、更魯棒的回歸控制、更系統的訓練流程 —— 都有極大的可能在 prompt optimization 中以新的形式重新成立,并形成一系列尚未被系統覆蓋的研究切口。
在這個背景下,創新并不需要憑空構造。它更多來自于把已經成熟的優化思想,真正落到 prompt optimization 的具體機制里。也正是在這里,實踐路徑變得非常直接、也非常具體:
- 大家可以在這里找到 code base:https://github.com/Peiyance/REVOLVE
- 然后把在 gradient descent 中已經被驗證有效的升級版本實現出來,在現有的 benchmark 上與這些方法系統性地做對比。
- 當更高級的優化策略帶來穩定、可復現的性能提升時,它自然就構成了一篇新的 paper。
這并不是 “照搬參數優化”,而是一次重新生長的過程。SIPDO 正是在這樣的背景下出現的:它不是對 gradient descent 的簡單延伸,而是從 synthetic feedback 與 adversarial-style probing 的角度,把 prompt optimization 推進到真正的閉環階段。從一階更新走向 difficulty-driven 的自適應演化,本身就標志著 prompt optimization 開始具備長期擴展的系統結構。
因此,這里所謂 “比比皆是的下一個創新點”,并不是一句修辭,而是一個已經被歷史反復驗證過的事實:當一條優化路徑被真正走通之后,后續的創新會沿著這條路徑不斷自然生長。Parameter learning 用幾十年證明了這一點;而 prompt optimization,才剛剛進入它最有生命力的階段。
06|SIPDO 核心:兩類 agent 協作 + 難度遞進 + 失敗驅動的 prompt 修復閉環
Paper《SIPDO: Closed-Loop Prompt Optimization via Synthetic Data Feedback》(arXiv:2505.19514v4)將問題說得很直白:現有方法多在固定數據集上優化,默認輸入分布靜態,缺少持續迭代的機制;而真實世界輸入會演化,因此需要把優化從一次性流程升級為動態自適應閉環。
![]()
SIPDO 定義為 two-agent system:
- Data Generator:生成能暴露 prompt 弱點的合成樣本,且難度可控、逐級增加;
- Auto Prompt Optimizer:在失敗樣本上做 error analysis → recommendation → refinement,不斷改寫 prompt。豐富的難度梯把錯誤案例壓縮成一個可執行的修改建議,像給 prompt 打補丁。
6.1 Data Generator:purposeful & stressful,而非單純的生成
SIPDO 將 Data Generator 定位為面向當前 prompt’s targeted stress tester:其輸出fresh、well-targeted的 synthetic instances,目標是以可控方式持續暴露 prompt 的 weakness—— 即生成難度刻意超出當前 prompt 能力邊界的數據,從而為后續 prompt 修復提供高信息密度的反饋信號。
6.1.1 先定 label,再生成 input:消除 label 生成過程中產生的錯誤與語義錯配
在合成數據生成中,一個常見隱患是:模型在生成輸入時錯誤的生成答案,導致 Question (x) –Answer (y) 不一致。SIPDO 的處理非常明確:先從 estimated population label prior p*(y) 抽取目標 answer,再在該 answer 條件下生成對應 question,從而減去合成樣本語義合理但標簽錯配的噪聲。SIPDO 也正面處理了合成數據最常見的現實問題:當任務域更復雜或合成有效樣本更困難時,question–answer 一致性與基本事實正確性會成為瓶頸。對此,論文提出在特定任務 / 領域啟用three-voter check:由三個 expert agents 獨立核驗每個生成項的 question–answer consistency 與基本事實正確性,只有同時通過三個 expert-agents 的樣本數據才會進入 synthetic data pool。
進一步地,p*(y) 并不只是采樣分布,它還承擔了分布約束(distributional regularization)的角色:SIPDO 用它來 regularize generator,懲罰合成標簽分布偏離真實標簽先驗,避免 generator 退化成只生成少數最容易擊穿 prompt 的標簽 / 類別,從而造成訓練信號單一與分布失真。
6.1.2 latent template:在貼近真實任務結構的前提下生成新樣本數據
SIPDO 引入 latent variable(SPIDO 強調其捕捉 few-shot set 結構的作用)。用更工程化的語言來說:generator 先從 few-shot 示例中抽取 / 采樣一個題型骨架(latent template),再在該骨架上生成具體樣本。這樣做的目的是在結構對齊真實數據分布的同時,仍能在內容層面產生新變體,從而避免生成樣本偏離任務語義或不可判定的低質量數據。
6.1.3 difficulty tier:同一模板下的難度對齊生成
SIPDO 的 difficulty tier c 是 data-generator 的核心控制變量:generator 明確以 c 為條件生成樣本,使得同一 latent variable 與同一目標 label 可以產出一組 difficulty-aligned variants。換言之,合成數據是圍繞同一結構模板形成難度可對齊、可比較的一系列挑戰,便于 prompt 在統一結構下學習到從易到難的能力遷移。
6.1.4 curriculum generation:用 summarizer 將上一層難度 “壓縮成下一層線索”,形成語義累積
![]()
6.2 Auto Prompt Optimizer:基于 failure slice 的結構化修復,并通過回歸驗證抑制性能回退
Auto Prompt Optimizer 的職責就是把失敗轉化為可復用的 prompt 規則。SIPDO 將這一過程明確組織為閉環:每引入一個新的 synthetic data sample,就先用當前 prompt 評估;若出現錯誤,則進入 optimizer 做修復;若通過,則提升難度繼續生成更具挑戰性的樣本。該循環持續進行,直至 prompt 正確解決所有生成的數據。
6.2.1 error analysis:以 error slice 形式 “顯式化” 失敗模式,而非憑經驗改寫
Auto Prompt Optimizer 的第一步不是立刻重寫 prompt,而是對當前累積的 synthetic data pool 進行評估,形成當前錯誤(error slice /failure slice)。這一設計的含義在于:prompt 更新不再依賴主觀直覺,而是以 “失敗集合” 的形式顯式定位 prompt 的不足(如:指令歧義、推理步驟缺失、格式約束不充分)。當 error slice 為空時,意味著當前 prompt 已覆蓋已見案例,可觸發終止條件。
6.2.2 recommendation:以 reflection module 生成 textual patch,將失敗壓縮為 “可執行修改指令”
在 recommendation 階段,SIPDO 引入 reflection module:它同時檢視(1)error slice,(2)具體導致當前 prompt 失敗的生成樣本,(3)當前 prompt,(4)以及模型在該樣本上的錯誤輸出,并生成一個textual patch:既解釋失敗為何發生,也提出應當如何修改 prompt。
6.2.3 Refinement:將 patch 具體寫入 prompt,并以 “局部 — 全局” 兩級驗證抑制回退
refinement 階段的目標是產出一個可泛化、不過擬合的 revised prompt:把 textual patch 落成具體的指令改寫,并對 prompt 結構做必要的重排與強化。論文在 Fig.1 的描述中強調:revised prompt 不僅要在 “當前失敗樣本(present failures)” 上通過,還要在 “所有歷史已解決樣本(previously solved examples)” 上通過;若仍出錯,則回到 optimizer 繼續細化。這個 “局部修復 + 全局回歸驗證” 的閉環,實質上是將regression control寫進 prompt optimization 流程,以降低 “修一處壞一片” 的性能波動與遺忘風險。
6.2.4 Confirmation: 局部 vs. 全局
Local confirmation 只在當前 error slice 上測試 revised prompt。如果 revised prompt 在這些明確已知的失敗樣本上仍未全部修復(即仍有殘余錯誤),SIPDO 不會立刻做全局回歸,而是認為當前 patch 還不充分:
- 將 revised prompt 作為新的 baseline prompt;
- 更新 error slice 為 “仍未修復的殘余錯誤”;
- 回到 recommendation/refinement,生成更充分、更針對性的 patch 再迭代。
Global confirmation:修好了新錯誤,不代表在已生成的 synthetic pool 中沒有錯誤。因此,當 local confirmation 通過后,SIPDO 會把 revised prompt 放到整個 synthetic history(截至當前輪累計的所有樣本)上評估測試,檢查它是否仍覆蓋所有已見案例。如果 global confirmation 中發現任何 “歷史回退”(即某些此前已解決的樣本現在又失敗了),SIPDO 會:
- 將這些回退樣本并入新的 error slice;
- 把它們送回 recommendation/refinement 流程繼續修復;
- 直到在全量歷史上不再出現回退,才接受這次 revision,并進入下一輪更高難度的數據生成與評測。
6.2.5 可復用的 prompt templates:將閉環流程固化為標準化操作規程
為了讓 closed-loop 更易復現與遷移,論文在附錄中給出了自改進流程的 prompt templates(涵蓋 error analysis、improvement recommendation、prompt refinement 三類模板),并給出典型 failure modes 與建議示例(例如對表格處理失敗、數值比較不明確等)。
07|整體效果:跨模型、跨基線,SIPDO 在不同任務上穩定且更強
![]()
論文在 Table 2 匯總了 BIG-Bench 六個任務,表現 SIPDO 在多數任務與模型上consistently outperforms標準 baselines(CoT / APE / PromptAgent),體現 synthetic data feedback 帶來的泛化收益。
![]()
![]()
此外,論文還在 MMLU(College CS, Machine Learning, College Biology)以及 FOLIO / PrOntoQA / ProofWriter 等結構化推理任務上的對比與提升。SIPDO 的獨特點在于:讓系統主動生成 “剛好能打穿當前 prompt” 的合成樣本,再用失敗反饋驅動 prompt 修復,并通過難度遞進持續加壓。
08|Difficulty Progression – SIPDO 的核心
![]()
論文在 Table 4 做了 ablation study:移除 difficulty gradient 后,BIG-Bench 的每個子任務都掉點,并且給出平均損失,其中 Object Counting、Geometric Shapes 的跌幅最大:
- GPT-4o 平均下降 17.3%
- GPT-4o-mini 平均下降 24.3%
直接說明 SIPDO 的增益不是單純生成更多數據帶來的,而是通過可控難度梯度,把 prompt 推著走過一條持續變強的學習曲線
總的來說,Data Generator:以 p*(y) 約束標簽分布,通過 latent template 保持任務結構對齊,并以 difficulty tier 逐級加難,持續產出能夠暴露當前 prompt weakness 的 targeted synthetic instances;在困難任務上可用 three-voter check 提升 label–input 一致性與事實可靠性。Auto Prompt Optimizer:以 error slice 顯式刻畫失敗模式,通過 reflection-based textual patch 給出可執行修復策略,再將修復寫入 revised prompt,并在 present failures 與 previously solved examples 上做回歸驗證,以閉環方式累積魯棒性并抑制性能回退。
論文作者:
Haohan Wang (汪浩瀚), UIUC 助理教授,主要研究方向為 Agentic AI and Scientific Discovery, Trustworthy AI / AI security, Computational Biology. 平時主要帶領團隊攻堅有價值的問題,同時也喜歡研究 “創新” 這件事本身,以幫助更廣大的社區和老師同學。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.