本頁說明伺服器提示範本的一些最佳做法和注意事項,包括尚未支援的功能。請注意,隨著伺服器提示範本的演進,許多功能都會陸續推出,因此請查看版本資訊,掌握最新動態!
最佳做法
「管理範本」一文也詳細說明瞭許多最佳做法。
管理範本版本
建立範本 ID,並附加使用語意化版本 (semver) 的版本。
使用 Firebase Remote Config ,方便您在要求中輕鬆變更範本和其他值。
保護範本
除非已徹底測試變更,否則請勿編輯實際工作環境中使用的範本。
在發布正式版之前,請先鎖定範本。
鎖定範本可防止意外編輯,但無法完全禁止編輯。具備適當權限的專案成員隨時可以解鎖範本並加以編輯。
建議您鎖定程式碼 (尤其是正式版程式碼) 目前使用的範本。
保護 Gemini API 的使用情形
為輸入變數編寫嚴格的輸入驗證,有助於:
- 有助於防範提示詞注入。
- 有助於確保要求成功,並獲得預期中的回應。
為 Firebase 專案強制啟用僅限範本模式,確保所有透過 Gemini API Firebase AI Logic 提出的要求都使用伺服器提示詞範本。
伺服器提示範本尚未支援的功能
隨著伺服器提示詞範本不斷演進,許多功能都會陸續推出,請參閱版本資訊瞭解最新動態!
範本尚未支援 Firebase AI Logic 的功能
伺服器提示詞範本目前不支援 Firebase AI Logic 的下列標準功能:
- 雙向串流 (Gemini Live API)
- 混合式或裝置端推論
- 將輸出內容限制為列舉清單
另請注意,如果您在 Firebase 控制台中使用 AI monitoring 功能,任何記錄目前都不會填入範本 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 網址除外 (可做為輸入變數提供)。