Vertex AI Prompt Optimizer是一個優化Prompt的工具,幫助使用者為Vertex AI上的任何模型找到最佳Prompt(包括Instruction和Demonstration)。我們稍後會詳細解釋Instruction(指令)和Demonstration(範例)的概念。
Prompt Optimizer基於Google Research發表的Automatic Prompt Optimization(APO)方法,採用迭代的LLM優化算法,並且針對 Gemini 及其他 Google 模型的獨特屬性。它結合了優化模型和評估模型:優化模型負責產生改寫的Instruction,而評估模型負責評估所產生的Instruction和Demonstration。最後,Prompt Optimizer會根據使用者設定的評估指標,選擇最佳的Instruction和Demonstration。
讓我們進一步解釋上述提到的Prompt、Instruction和Demonstration概念:
這裡的Prompt可以視為一個概念或框架,這裡指的Prompt又包括Instruction和Demonstration。
- Instruction(指令):指引模型完成任務。它通常包括:
- System instruction (系統指令):定義模型的角色或背景,例如告訴模型它是某個領域的專家。
- Context (上下文):為模型提供必要的背景資訊,使其能根據相關背景理解並執行任務。
- Task (任務描述):具體說明模型需要完成的任務,如摘要、分類或問答等。
- Demonstration(範例):是Prompt中的具體範例,展示期望的輸出風格或結果。通過少量範例(few-shot examples),可以引導模型生成相似的輸出。提供這些明確的範例,使模型對期望的回答方式、語氣、格式等有具體參考。
以下是該工具的主要特色:
- 簡便優化:快速優化提示,適用於任何目標 Google 模型,包括提示從其他模型遷移和翻譯。
- 多樣化任務處理:支持任何基於文本的任務(如問答、摘要、分類、實體提取),並即將擴展到多模態任務。
- 全面評估:支持多種評估指標,包括基於模型的、計算的和自定義的指標,確保提示在您關心的指標下表現最佳。
- 靈活且可定制:通過進階設置調整優化過程和延遲,並使用不同的 notebook 版本,以滿足您的專業水準和需求。
使用 Vertex AI Prompt Optimizer,開發者不再需要每次針對不同的大型語言模型(LLM)手動調整提示,從而減少開發過程中的 "提示疲勞"。
所以為甚麼應該要用Vertex AI Prompt Optimizer?
需要優化Prompt 該用,使用 Gemini 及其他 Google 模型更該用
Getting Started
開始之前必須先準備
- 一組範例提示
- 所有範例提示共用的系統指令
- 參照範例提示的提示模板
準備好資料之後第一步是要先打開GCP權限,要賦予帳號三種權限
- Vertex AI User
roles/aiplatform.user
- Storage Object Admin
roles/storage.objectAdmin
- Artifact Registry Reader
roles/artifactregistry.reader
我們到「身份與存取權管理」
再找到Compute Engine default service account
接著點最右手邊鉛筆可以編輯權限
因為我怕麻煩
在準備好輸入項目後,您需要選擇優化模式、評估指標以及目標模型。
- 優化模式:指定 Vertex AI 提示優化器是否優化系統指令、選擇範例提示來作為 few-shot 範例加入系統指令,或兩者皆進行優化。
- 評估指標:Vertex AI 提示優化器用來優化系統指令和/或選擇範例提示的評估標準。
- 目標模型:Vertex AI 提示優化器用來優化系統指令和/或範例提示的 Google 模型。
- Maze: 迷宮
- Experiment with: 試驗、嘗試
- Instructions: 指令
- Desired output: 預期輸出、理想結果
- Deliver optimal results: 產生最佳結果
- Behave differently: 表現不同
- Reuse: 重用
- Effective: 有效的
- Intelligent prompt optimizer: 智能提示優化器
- Prompt fatigue: 提示疲勞
- Public Preview: 公開預覽版
- Announce: 宣布
後續待更新