Bu sayfada, henüz desteklenmeyen özellikler de dahil olmak üzere sunucu istemi şablonlarıyla ilgili bazı en iyi uygulamalar ve dikkat edilmesi gereken noktalar açıklanmaktadır. Bu özelliklerin birçoğunun sunucu istemi şablonları geliştikçe kullanıma sunulacağını unutmayın. Güncellemeler için sürüm notlarını kontrol edin.
En iyi uygulamalar
Bu en iyi uygulamaların çoğu Şablonlarınızı yönetme başlıklı makalede de ayrıntılı olarak açıklanmaktadır.
Şablonlarınıza sürüm oluşturma
Anlamsal sürüm oluşturma (semver) kullanan bir sürümle eklenmiş şablon kimlikleri oluşturun.
Şablonu ve isteğinizdeki diğer değerleri kolayca değiştirebilmek için Firebase Remote Config kullanın.
Şablonunuzu koruma
Değişikliği iyice test etmediyseniz üretimde kullanılan şablonları düzenlemeyin.
Üretime geçmeden önce şablonunuzu kilitleyin.
Şablonu kilitlemek, yanlışlıkla düzenlemeye karşı koruma sağlar ancak kilitleme, düzenlemeyi tamamen engellemez. Gerekli izinlere sahip bir proje üyesi, şablonu düzenlemek için istediği zaman kilidini açabilir.
Kod tarafından etkin olarak kullanılan şablonları (özellikle üretim kodu) kilitlemenizi öneririz.
Gemini API kullanımını koruma
Giriş değişkenleriniz için güçlü giriş doğrulama yazın. Bu, aşağıdakilerde yardımcı olabilir:
- İstem enjeksiyonuna karşı korunmaya yardımcı olabilir.
- İsteklerin başarılı olmasını ve yanıtların beklendiği gibi olmasını sağlamaya yardımcı olabilir.
Firebase projeniz için Gemini API isteklerinin Firebase AI Logic üzerinden gönderilmesi durumunda sunucu istemi şablonu kullanılması zorunlu olacak şekilde yalnızca şablon modunu zorunlu kılın.
Sunucu istemi şablonları tarafından henüz desteklenmeyen özellikler
Bu özelliklerin çoğu, sunucu istemi şablonları geliştikçe kullanıma sunulacaktır. Bu nedenle, güncellemeler için sürüm notlarını kontrol edin.
Firebase AI Logic'nın özellikleri henüz şablonlar tarafından desteklenmiyor
Firebase AI Logic'daki aşağıdaki standart özellikler henüz sunucu istemi şablonları üzerinden desteklenmemektedir:
- İki yönlü akış (Gemini Live API)
- Karma veya cihaz üzerinde çıkarım
- Çıkışı bir enum listesiyle sınırlama
Ayrıca Firebase konsolunda yapay zeka izlemeyi kullanıyorsanız şablon kimliğinin henüz hiçbir kayda doldurulmadığını da unutmayın.
Dotprompt'un yaygın öğeleri henüz şablonlar tarafından desteklenmemektedir.
Sunucu istemi şablonları yakında Dotprompt'un aşağıdaki yaygın öğelerini destekleyecektir:
Ön kısımdaki giriş ve çıkış şemaları için JSON şema spesifikasyonunu kullanma.
- Bu spesifikasyonun sunucu dışı şablon isteklerinde de desteklenmediğini unutmayın. Şu anda yalnızca OpenAPI şema spesifikasyonu desteklenmektedir.
*kullanarak joker karakter alan tanımı bildirme.@keykullanmak veya genellikle bir nesne girişinin alanları üzerinde yineleme yapmak (@key'nın alakalı olduğu durum).@rootkullanarak. Bu, mevcutthis'den bağımsız olarak kök değişken bağlamına başvurmanıza olanak tanır.
Sunucu istem şablonları, Dotprompt'un aşağıdaki yaygın öğelerini büyük olasılıkla desteklemeyecektir:
- Diğer şablonlara dahil edilebilen, yeniden kullanılabilir şablon snippet'leri olan kısmi şablonları kullanma.
Dikkat edilmesi gereken diğer noktalar
Varsayılan olarak, Firebase konsolunda rehberli kullanıcı arayüzünü kullandığınızda şablonu Firebase AI Logic için kullanılabilen tüm bölgelerde sağlıyoruz. Vertex AI Gemini API kullanıyorsanız ve kullanım alanınız konum tabanlı kısıtlamalar gerektiriyorsa REST API'yi kullanarak şablonunuzun konumunu belirtebilirsiniz.
Sunucu istemi şablonunu dosya olarak sağlamak istiyorsanız (Firebase konsolunun rehberli kullanıcı arayüzünü kullanmak yerine) REST API'yi kullanabilirsiniz. Sunucu istemi şablonlarının, uygulama kodunda tanımlanan ve şablona aktarılan şemayı desteklemediğini unutmayın.
Şablon sunucuda olsa bile doğrudan Firebase projenizin diğer sunucu tarafı kaynaklarıyla (ör. veritabanı) etkileşimde bulunamaz. Cloud Storage for Firebase URL'leri (giriş değişkenleri olarak sağlanabilir) bu durumun dışındadır.