微軟開源PromptWizard,摔碎了提示工程師的飯碗
PromptWizard (PW) 旨在自動化和簡化提示優(yōu)化。它將 LLM 的迭代反饋與高效的探索和改進技術相結合,在幾分鐘內(nèi)創(chuàng)建高效的prompts。
PW的核心是其自我進化和自適應機制,LLM 會同時迭代生成、評論和改進提示和示例。此過程通過反饋和綜合確保持續(xù)改進,實現(xiàn)針對特定任務的整體優(yōu)化。
PromptWizard 經(jīng)過 45 多項任務的嚴格評估,涵蓋了一般挑戰(zhàn)和特定領域挑戰(zhàn)。與最先進的技術(包括 Instinct、InstructZero、APE、PromptBreeder、EvoPrompt、DSPy、APO 和 PromptAgent)對比,PW 在準確性、效率和適應性方面始終優(yōu)于競爭對手。
PromptWizard三個關鍵組件
PromptWizard 概述
- 反饋驅動改進: PW 的核心是利用迭代反饋循環(huán),LLM 在其中生成、批評和改進自己的提示和示例。這種持續(xù)改進機制確保每次迭代都比上一次更好,從而產(chǎn)生高效的提示和示例。
- 多種示例的聯(lián)合優(yōu)化與合成: PW 生成的合成示例不僅穩(wěn)健多樣,而且具有任務感知能力。通過同時優(yōu)化提示和示例,確保它們協(xié)同工作,有效滿足特定任務要求。
- 自生成思維鏈 (CoT) 步驟:結合 CoT 推理可提高模型的解決問題能力。通過使用選定的少量樣本,PW 為每個示例生成詳細的推理鏈,從而促進細致入微、循序漸進的問題解決方法。
PromptWizard 的工作原理
PromptWizard 從用戶輸入開始:問題描述、初始提示指令和一些作為當前任務基礎的訓練示例。
它的輸出是一套經(jīng)過精煉、優(yōu)化的提示指令,并搭配精心挑選的上下文小樣本示例。這些輸出包含詳細的推理鏈、任務意圖和專家資料,將類人推理與人工智能的響應聯(lián)系起來。
第一階段:完善提示指令
第一階段側重于完善提示的任務說明。PromptWizard 生成多個候選說明,使用 LLM 的反饋對其進行評估,并迭代地綜合改進版本。此過程平衡了探索(嘗試各種想法)和利用(完善最有希望的想法)。
例如,如果初始指令產(chǎn)生的結果不是最優(yōu)的,PW 會結合反饋來識別其缺點并生成改進版本。經(jīng)過三到五次迭代,此迭代周期可確保指令收斂到最優(yōu)狀態(tài)。
第二階段:指令與示例的聯(lián)合優(yōu)化
將第一階段得到的精煉提示與精心挑選的示例相結合,共同優(yōu)化。通過批判與綜合機制,PromptWizard 確保提示與示例保持一致,同時綜合新示例以提升任務表現(xiàn)。
這種結構化方法使 PromptWizard 具有高度的通用性,可以適應從解決數(shù)學問題到生成創(chuàng)意內(nèi)容等各種任務。
指令與示例的聯(lián)合優(yōu)化
https://github.com/microsoft/PromptWizard
https://www.microsoft.com/en-us/research/blog/promptwizard-the-future-of-prompt-opt
本文轉載自??PaperAgent??
