Auf dieser Seite werden einige Best Practices und Überlegungen zu Server-Promptvorlagen beschrieben, einschließlich Funktionen, die noch nicht unterstützt werden. Viele dieser Funktionen werden im Laufe der Entwicklung von Server-Promptvorlagen verfügbar sein. In den Versionshinweisen finden Sie aktuelle Informationen.
Best Practices
Viele dieser Best Practices werden auch unter Vorlagen verwalten beschrieben.
Vorlagen versionieren
Erstellen Sie Vorlagen-IDs mit einer Version, die die semantische Versionierung (semver) verwendet.
Verwenden Sie Firebase Remote Config , damit Sie die Vorlage und andere Werte in Ihrer Anfrage ganz einfach ändern können.
Vorlagen schützen
Bearbeiten Sie keine Vorlagen, die in der Produktion verwendet werden, es sei denn, Sie haben die Änderung gründlich getestet.
Sperren Sie Ihre Vorlage, bevor Sie sie in der Produktion verwenden.
Das Sperren einer Vorlage schützt vor unbeabsichtigten Änderungen, aber das Sperren verhindert nicht vollständig, dass sie bearbeitet werden kann. Ein Projektmitglied mit den entsprechenden Berechtigungen kann eine Vorlage jederzeit entsperren, um sie zu bearbeiten.
Wir empfehlen, Vorlagen zu sperren, die aktiv von Code verwendet werden, insbesondere von Produktionscode.
Nutzung der Gemini API schützen
Schreiben Sie eine strenge Eingabevalidierung für Ihre Eingabevariablen. Das kann in folgenden Fällen hilfreich sein:
- Schutz vor Prompt-Injection
- Sicherstellen, dass Anfragen erfolgreich sind und Antworten wie erwartet ausfallen
Erzwingen Sie den Modus „Nur Vorlage“ für Ihr Firebase-Projekt, damit alle Gemini API Anfragen über Firebase AI Logic eine Server-Promptvorlage verwenden müssen.
Funktionen, die von Server-Promptvorlagen noch nicht unterstützt werden
Viele dieser Funktionen werden im Laufe der Entwicklung von Server-Promptvorlagen verfügbar sein, in den Versionshinweisen finden Sie aktuelle Informationen.
Funktionen von Firebase AI Logic die von Vorlagen noch nicht unterstützt werden
Die folgenden Standardfunktionen von Firebase AI Logic werden noch nicht von Server-Promptvorlagen unterstützt:
- Bidirektionales Streaming (Gemini Live API)
- Hybrid- oder On-Device-Inferenz
- Ausgabe auf eine Liste von Enums beschränken
Wenn Sie die KI-Überwachung in der Firebase Console verwenden, wird die Vorlagen-ID noch nicht in Datensätzen ausgefüllt.
Häufige Elemente von Dotprompt, die von Vorlagen noch nicht unterstützt werden
Server-Promptvorlagen werden wahrscheinlich bald die folgenden häufigen Elemente von Dotprompt unterstützen:
Verwenden der JSON-Schema-Spezifikation für Eingabe- und Ausgabeschemas in der Frontmatter.
- Diese Spezifikation wird auch in Anfragen für Nicht-Server-Vorlagen nicht unterstützt. Derzeit wird nur die OpenAPI-Schemaspezifikation unterstützt.
Deklarieren einer Platzhalterfelddefinition mit
*.Verwenden von
@keyoder allgemeines Durchlaufen der Felder einer Objekteingabe (was der Fall ist, wenn@keyrelevant ist).Verwenden von
@root, mit dem Sie unabhängig vom aktuellenthisauf den Kontext der Stammvariablen verweisen können.
Server-Promptvorlagen werden die folgenden häufigen Elemente von Dotprompt wahrscheinlich nicht unterstützen:
- Verwenden von Partials, die wiederverwendbare Vorlagen-Snippets sind, die in andere Vorlagen eingefügt werden können.
Weitere Hinweise
Wenn Sie die geführte Benutzeroberfläche in der Firebase Konsole verwenden, stellen wir die Vorlage standardmäßig in allen verfügbaren Regionen für Firebase AI Logic bereit. Wenn Sie die Vertex AI Gemini API verwenden und Ihr Anwendungsfall standortbasierte Einschränkungen erfordert, können Sie den Standort für Ihre Vorlage mit der REST API angeben.
Wenn Sie eine Server-Promptvorlage als Datei bereitstellen möchten (anstatt die geführte Benutzeroberfläche der Firebase Console zu verwenden), können Sie die REST API verwenden. Server-Promptvorlagen unterstützen kein Schema, das im App-Code definiert und an die Vorlage übergeben wird.
Obwohl sich die Vorlage auf dem Server befindet, kann sie nicht direkt mit anderen serverseitigen Ressourcen Ihres Firebase-Projekts interagieren (z. B. einer Datenbank), mit Ausnahme von Cloud Storage for Firebase URLs, die als Eingabevariablen bereitgestellt werden können.