本頁說明伺服器提示詞範本的一些最佳做法和注意事項,包括尚未支援的功能。請注意,隨著伺服器提示詞範本不斷演進,許多功能將陸續推出,請查看版本資訊,瞭解最新動態!
最佳做法
「管理範本」一文也詳細說明瞭許多最佳做法。
管理範本版本
建立範本 ID,並附加使用語意版本管理 (semver) 的版本。
使用 Firebase Remote Config,即可輕鬆變更要求中的範本和其他值。
保護範本
除非您已徹底測試變更,否則請避免編輯正式環境中使用的範本。
請先鎖定範本,再進入正式環境。
鎖定範本可防止意外編輯,但鎖定「不會」完全禁止編輯。具備適當權限的專案成員隨時可以解鎖範本並進行編輯。
建議您鎖定程式碼 (尤其是正式版程式碼) 正在使用的範本。
保護 Gemini API 的使用
為輸入變數編寫強大的輸入驗證,有助於:
- 可防範提示詞注入。
- 可確保要求成功,且回應符合預期。
為 Firebase 專案強制執行僅限範本模式,這樣一來,所有透過 Firebase AI Logic 提出的 Gemini API 要求都必須使用伺服器提示詞範本。
伺服器提示詞範本尚不支援的功能
隨著伺服器提示詞範本不斷演進,許多功能將陸續推出,請查看版本資訊,瞭解最新動態!
範本尚不支援 Firebase AI Logic 的功能
伺服器提示詞範本尚不支援下列 Firebase AI Logic 標準功能:
- 雙向串流 (Gemini Live API)
- 混合式或裝置端推論
- 將輸出內容限制為列舉清單
另請注意,如果您在 Firebase 控制台使用 AI monitoring,範本 ID 尚未填入任何記錄。
範本尚未支援的 Dotprompt 常見元素
伺服器提示詞範本可能很快就會支援下列 Dotprompt 常見元素:
在 frontmatter 中,使用 JSON 結構定義規格定義輸入和輸出結構定義。
- 請注意,非伺服器範本要求也不支援這項規格。我們目前僅支援 OpenAPI 結構定義規格。
使用
*宣告萬用字元欄位定義。使用
@key或一般疊代物件輸入的欄位 (@key相關的情況)。使用
@root,無論目前的this為何,都能參照根變數結構定義。
伺服器提示詞範本可能不支援下列 Dotprompt 常見元素:
- 使用部分範本,也就是可納入其他範本的可重複使用範本程式碼片段。
其他注意事項
根據預設,當您在 Firebase 控制台使用引導式使用者介面時,我們會在支援 Firebase AI Logic 的所有區域佈建範本。如果您使用 Agent Platform Gemini API (formerly Vertex AI),且用途需要依據位置設定限制,可以使用 REST API 指定範本位置。
如要以檔案形式提供伺服器提示詞範本 (而非使用 Firebase 控制台的引導式 UI),可以使用 REST API。請注意,伺服器提示詞範本不支援在應用程式程式碼中定義並傳遞至範本的結構定義。
雖然範本位於伺服器上,但無法直接與 Firebase 專案的其他伺服器端資源 (例如資料庫) 互動,Cloud Storage for Firebase 網址除外 (可做為輸入變數提供)。