本頁說明伺服器提示範本的一些最佳做法和注意事項,包括尚未支援的功能。請注意,許多功能僅在伺服器提示範本的初始版本中無法使用,因此請查看版本資訊瞭解最新動態!
最佳做法
「管理範本」一文也詳細說明瞭許多最佳做法。
管理範本版本
建立範本 ID,並附加使用語意化版本 (semver) 的版本。
使用 Firebase Remote Config,方便您在要求中輕鬆變更範本和其他值。
保護範本
請先鎖定範本,再發布正式版。此外,請勿編輯用於正式環境的範本。
鎖定範本可防止意外編輯,但無法完全禁止編輯。具備適當權限的專案成員隨時可以解鎖範本並進行編輯。
建議鎖定程式碼 (尤其是正式版程式碼) 目前使用的範本。
為輸入變數編寫嚴格的輸入驗證,有助於:
- 有助於防範提示注入攻擊。
- 有助於確保要求成功,並獲得預期中的回應。
尚未支援的功能
許多目前不支援的功能只會在初始版本中無法使用,請參閱版本資訊瞭解最新動態!
Firebase AI Logic 目前不支援的功能
伺服器提示詞範本尚未支援 Firebase AI Logic 的下列功能。其中幾項功能即將推出!
- 即時通訊
- 使用工具 (包括函式呼叫和 Google 搜尋基本事實檢查)
- 使用 Gemini 模型透過對話反覆編輯圖片 (需要對話)
- 使用 Imagen 模型編輯圖片
- 雙向串流 (Gemini Live API)
- 混合式裝置端
- 將輸出內容限制為列舉清單
- 設定思考相關設定
- 調整安全性設定
另請注意,如果您在 Firebase 控制台中使用 AI 監控功能,任何記錄都還不會填入範本 ID。
Dotprompt 尚未支援的常見元素
伺服器提示詞範本可能很快就會支援 Dotprompt 的下列常見元素:
在 frontmatter 中使用輸入和輸出結構定義的 JSON 結構定義規格。
- 請注意,非伺服器範本要求也不支援這項規格。 我們目前僅支援 OpenAPI 結構定義規範。
使用
*宣告萬用字元欄位定義。使用
@key或一般疊代物件輸入的欄位 (這是@key相關的情況)。使用
@root,無論目前的this為何,您都可以參照根變數環境。
伺服器提示詞範本可能不支援 Dotprompt 的下列常見元素:
- 使用局部範本,也就是可重複使用的範本程式碼片段,可納入其他範本。
其他注意事項
根據預設,在 Firebase 控制台使用引導式 UI 時,我們會為 Firebase AI Logic 在所有可用區域佈建範本。如果您使用 Vertex AI Gemini API,且您的用途需要位置限制,則可使用 REST API 指定範本位置。
如要以檔案形式提供伺服器提示範本 (而非使用 Firebase 控制台的導覽式 UI),請使用 REST API。請注意,伺服器提示範本不支援在應用程式程式碼中定義並傳遞至範本的結構定義。
即使範本位於伺服器上,也無法直接與 Firebase 專案的其他伺服器端資源 (例如資料庫) 互動,但 Cloud Storage for Firebase 網址除外 (可做為輸入變數提供)。