Na tej stronie znajdziesz sprawdzone metody i wskazówki dotyczące szablonów promptów serwera, w tym funkcje, które nie są jeszcze obsługiwane. Pamiętaj, że wiele z tych funkcji będzie dostępnych w miarę rozwoju szablonów promptów serwera, więc sprawdzaj informacje o wersji, aby być na bieżąco.
Sprawdzone metody
Wiele z tych sprawdzonych metod zostało również opisanych w artykule Zarządzanie szablonami.
Wersjonowanie szablonów
Twórz identyfikatory szablonów z dodaną wersją, która korzysta z semantycznej obsługi wersji (semver).
Użyj Firebase Remote Config aby móc łatwo zmieniać szablon i inne wartości w swoim żądaniu.
Ochrona szablonu
Unikaj edytowania szablonów używanych w środowisku produkcyjnym, chyba że dokładnie przetestujesz zmianę.
Zablokuj szablon przed przejściem do środowiska produkcyjnego.
Zablokowanie szablonu chroni przed przypadkową edycją, ale nie całkowicie blokuje edytowanie. Członek projektu z odpowiednimi uprawnieniami może zawsze odblokować szablon, aby go edytować.
Zalecamy blokowanie szablonów, które są aktywnie używane przez kod, zwłaszcza kod produkcyjny.
Ochrona korzystania z Gemini API
Napisz solidną weryfikację danych wejściowych dla zmiennych wejściowych, która może pomóc w tych kwestiach:
- Może pomóc w ochronie przed wstrzykiwaniem promptów.
- Może pomóc w zapewnieniu, że żądania zostaną zrealizowane, a odpowiedzi będą zgodne z oczekiwaniami.
Wymuś w projekcie Firebase tryb tylko szablonu, aby wszystkie Gemini API żądania wysyłane za pomocąFirebase AI Logic musiały korzystać z szablonu prompta serwera.
Funkcje, które nie są jeszcze obsługiwane przez szablony promptów serwera
Wiele z tych funkcji będzie dostępnych w miarę rozwoju szablonów promptów serwera, więc sprawdzaj informacje o wersji, aby być na bieżąco.
Funkcje Firebase AI Logic nie są jeszcze obsługiwane przez szablony
Te standardowe funkcje z Firebase AI Logic nie są jeszcze obsługiwane w szablonach promptów serwera:
- Dwukierunkowe przesyłanie strumieniowe (Gemini Live API)
- Wnioskowanie hybrydowe lub na urządzeniu
- Ograniczanie danych wyjściowych do listy wyliczeń
Pamiętaj też, że jeśli korzystasz z monitorowania wykorzystania AI w konsoli Firebase, identyfikator szablonu nie jest jeszcze wypełniany w żadnym rekordzie.
Typowe elementy Dotprompt nie są jeszcze obsługiwane przez szablony
Szablony promptów serwera wkrótce będą prawdopodobnie obsługiwać te typowe elementy Dotprompt:
Używaj specyfikacji schematu JSON w przypadku schematów wejściowych i wyjściowych w sekcji z metadanymi.
- Pamiętaj, że ta specyfikacja nie jest też obsługiwana w przypadku żądań szablonów innych niż serwerowe. Obecnie obsługujemy tylko specyfikację schematu OpenAPI.
Deklarowanie definicji pola z symbolem wieloznacznym za pomocą znaku
*.Używanie
@keylub ogólne iterowanie po polach wejściowych obiektu (w przypadku gdy@keyjest odpowiednie).Użyj
@root, aby odwołać się do kontekstu zmiennej głównej niezależnie od bieżącegothis.
Szablony promptów serwera prawdopodobnie nie będą obsługiwać tych typowych elementów Dotprompt:
- Używanie plików częściowych, czyli fragmentów szablonów, których można ponownie używać w innych szablonach.
Inne uwagi
Domyślnie, gdy korzystasz z interfejsu z instrukcjami w konsoli Firebase, udostępniamy szablon we wszystkich obsługiwanych regionach dla Firebase AI Logic. Jeśli używasz Agent Platform Gemini API (formerly Vertex AI) i Twój przypadek użycia wymaga ograniczeń opartych na lokalizacji, możesz określić lokalizację szablonu za pomocą interfejsu REST API.
Jeśli chcesz udostępnić szablon promptu serwera jako plik (zamiast korzystać z interfejsu Firebase konsoli), możesz użyć interfejsu REST API. Pamiętaj, że szablony promptów serwera nie obsługują schematu zdefiniowanego w kodzie aplikacji i przekazywanego do szablonu.
Chociaż szablon znajduje się na serwerze, nie może bezpośrednio wchodzić w interakcje z innymi zasobami po stronie serwera w projekcie Firebase (np. z bazą danych), z wyjątkiem Cloud Storage for Firebase adresów URL (które można podać jako zmienne wejściowe).