本页介绍了一些最佳实践和注意事项 ,适用于服务器提示模板,包括 尚未支持的功能。请注意,其中许多 功能仅在 服务器提示模板的初始版本中不可用,因此请查看 版本说明以了解更新!
最佳实践
管理模板中还详细介绍了许多最佳实践。
对模板进行版本控制
创建附加了使用 语义版本控制 (semver)的版本的模板 ID。
使用 Firebase Remote Config ,以便您可以轻松更改请求中的模板和其他值。
保护模板
在投入生产之前锁定模板。并避免编辑在生产环境中使用的模板。
锁定模板可以防止意外编辑,但锁定 并不能 完全阻止编辑。具有相应权限的项目成员始终可以解锁模板进行编辑。
我们建议锁定代码(尤其是生产代码)正在积极使用的模板。
为输入变量编写强大的 输入验证 ,这有助于实现以下目标:
- 有助于防范提示注入。
- 有助于确保请求成功,并确保响应符合预期。
尚未支持的功能
其中许多尚未支持的功能仅在初始 版本中不可用,因此请查看版本说明以了解更新!
尚未支持的功能Firebase AI Logic
服务器提示模板 尚不 支持以下功能: Firebase AI Logic
- 双向流式传输 (Gemini Live API)
- 混合或设备端推断
- 将输出限制为枚举列表
另请注意,如果您在 Firebase 控制台中使用 AI 监控,则 模板 ID 尚未填充到任何记录中。
Dotprompt 尚未支持的常见元素
服务器提示模板 可能很快 会支持 Dotprompt 的以下常见元素:
在 frontmatter 中使用 JSON 架构规范 作为输入和输出架构。
- 请注意,此规范在非服务器模板请求中也不受支持。 我们目前仅支持 OpenAPI 架构规范。
使用
*声明通配符字段定义。使用
@key或通常迭代对象输入的字段(这是@key相关的情况)。使用
@root,无论当前的this如何,您都可以引用根变量上下文。
服务器提示模板 可能不支持 Dotprompt 的以下常见元素:
- 使用局部模板,这些局部模板是可重用的模板代码段,可以包含在其他模板中。
其他注意事项
默认情况下,当您在 Firebase 控制台中使用引导式界面时,我们会 为所有 可用区域预配模板,以用于 Firebase AI Logic。 如果您使用 Vertex AI Gemini API,并且您的用例需要 基于位置的限制,则可以使用 REST API 为模板指定位置 。
如果您想以文件形式提供服务器提示模板(而不是使用 Firebase 控制台的引导式界面),可以使用 REST API。请注意,服务器提示模板不支持在应用代码中定义并传递到模板的架构。
即使模板位于服务器上,它也无法直接与 Firebase 项目的其他服务器端资源(例如数据库)进行交互, 但 Cloud Storage for Firebase 网址除外(这些网址可以作为输入 变量提供)。