設計提示沒有絕對正確或錯誤的方法,但有一些常見策略可用來影響模型的回覆。嚴格測試和評估仍是改善模型效能的重要關鍵。
大型語言模型 (LLM) 會以大量文字資料進行訓練,學習語言單元之間的模式和關係。當我們提供文字 (提示) 時,語言模型就能像是精密的自動完成工具一樣,預測下一個可能出現的內容。因此,設計提示時,請考量可能影響模型預測結果的各種因素。
提示工程工作流程
提示工程是以測試為依據的疊代程序,可增強模型效能。建立提示時,請務必明確定義每個提示的目標和預期成果,並有系統地測試,找出可改善之處。
下圖顯示提示工程工作流程:

如何建立有效的提示
提示的兩個面向最終會影響其成效:內容和結構。
- 內容:
為了完成工作,模型需要與工作相關的所有資訊。這類資訊可能包括指示、範例、背景資訊等。詳情請參閱「提示的元件」。
- 結構:
即使提示中已提供所有必要資訊,提供資訊結構也有助於模型剖析資訊。提示是否利用排序、標籤或分隔符號等結構,都會影響回覆的品質。如需提示結構範例,請參閱提示範本。
提示的元素
下表列出提示的必要與選用元素:
元件 | 說明 | 範例 |
---|---|---|
目標 | 您希望模型達到的成果,請提供具體說明並涵蓋所有首要目標。也稱為「任務」或「目標」。 | 你的目標是協助學生解出數學問題,但不能直接提供答案。 |
操作說明 | 如何執行手上工作的逐步指令。也稱為「工作」、「步驟」或「指示」。 |
|
選用元件 | ||
系統指示 | 透過技術或環境指令,控管或改變模型執行一系列工作時的行為。在許多模型 API 中,系統指令會透過專屬參數來指定。 系統操作說明適用於 Gemini 2.0 Flash 以上版本。 |
您是專門負責轉譯前端介面程式碼的程式設計專家。當我說明要建構的網站元件時,請傳回所需的 HTML 和 CSS。請勿說明此程式碼。並提供一些 UI 設計建議。 |
角色 | 模型要扮演的角色。也稱為「角色」或「願景」。 | 你是一名數學家教,目標是指導學生完成數學作業。 |
限制 | 模型生成回覆時必須遵守的限制,包括模型可做和不能做的事情。也稱為「防護裝置」、「邊界」或「控制項」。 | 請勿直接告訴學生答案。請給予提示,讓他們知道解決問題的下一步是什麼。如果學生完全沒有頭緒,請給他們解決問題的詳細步驟。 |
語氣 | 回覆時採用的語氣。您也可以指定角色來調整回覆風格和語氣。也稱為「風格」、「語氣」或「情緒」。 | 以輕鬆又符合技術專業的態度回覆。 |
背景資訊 | 模型執行手上工作所需的任何參考資訊。 也稱為「背景」、「文件」或「輸入資料」。 | 學生的數學教案副本。 |
少量樣本示例 | 模型收到提示時該如何回覆的範例。也稱為「範例」或「樣本」。 | input: 我想計算一個體積為一立方公尺的盒子可以放多少顆高爾夫球。我已將一立方公尺轉換為立方公分,並除以高爾夫球的立方公分體積,但系統表示我的答案錯誤。output: 高爾夫球是球體,無法以完美效率裝入空間。計算時會考量球體的最大填充效率。 |
推論步驟 | 引導模型說明推論過程。模型的推理能力有時能因此而提升。也稱為「思考步驟」。 | 逐一說明推論過程。 |
回覆格式 | 您希望回覆使用的格式。舉例來說,您可以要求模型輸出回覆時採用 JSON、資料表、Markdown、段落、項目符號清單、關鍵字、電梯簡報等格式。也稱為「結構」、「呈現方式」或「版面配置」。 | 以 Markdown 格式提供回覆。 |
重點回顧 | 在結尾簡要重述提示中的重點,特別是限制和回覆格式。 | 不要直接給答案,而是提供提示。一律採用 Markdown 格式來回覆。 |
保護措施 | 將問題範圍限縮在機器人的任務中。也稱為「安全規則」。 | 不適用 |
視手邊的具體工作而定,您可以選擇加入或排除部分選用元件。您也可以調整元件的順序,並檢查這會如何影響回應。
提示範本範例
以下提示範本為結構良好的提示範例:
<OBJECTIVE_AND_PERSONA> You are a [insert a persona, such as a "math teacher" or "automotive expert"]. Your task is to... </OBJECTIVE_AND_PERSONA> <INSTRUCTIONS> To complete the task, you need to follow these steps: 1. 2. ... </INSTRUCTIONS> ------------- Optional Components ------------ <CONSTRAINTS> Dos and don'ts for the following aspects 1. Dos 2. Don'ts </CONSTRAINTS> <CONTEXT> The provided context </CONTEXT> <OUTPUT_FORMAT> The output format must be 1. 2. ... </OUTPUT_FORMAT> <FEW_SHOT_EXAMPLES> Here we provide some examples: 1. Example #1 Input: Thoughts: Output: ... </FEW_SHOT_EXAMPLES> <RECAP> Re-emphasize the key aspects of the prompt, especially the constraints, output format, etc. </RECAP> |
最佳做法
提示設計的最佳做法包括:
後續步驟
- 在提示庫中探索提示範例。
- 瞭解如何使用 Vertex AI 提示最佳化工具 (預先發布版),針對Google 模型最佳化提示。
- 瞭解負責任的 AI 最佳做法和 Vertex AI 的安全過濾器。