Sistem talimatları, modelin son kullanıcıdan başka talimatlar almadan önce eklediğiniz bir "giriş" gibidir. Modelin davranışını özel ihtiyaçlarınıza ve kullanım alanlarınıza göre yönlendirmenize olanak tanır.
Sistem talimatları tüm Gemini modellerinde desteklenir.
Sistem talimatı ayarladığınızda modele görevi anlaması, daha özelleştirilmiş yanıtlar vermesi ve modelle olan tüm kullanıcı etkileşimi boyunca belirli kurallara uyması için ek bağlam sağlamış olursunuz. Sistem talimatlarında, son kullanıcılar tarafından sağlanan istemlerden ayrı olarak ürün düzeyinde davranış belirtebilirsiniz. Örneğin, rol veya karakter, bağlama dayalı bilgiler ve biçimlendirme talimatları ekleyebilirsiniz.
Sistem talimatlarını aşağıdakiler dahil birçok şekilde kullanabilirsiniz:
- Bir karakter veya rol tanımlama (ör. chatbot için)
- Çıkış biçimini (Markdown, YAML vb.) tanımlama
- Çıkış stilini ve tonunu tanımlama (örneğin, ayrıntı düzeyi, resmiyet ve hedef okuma düzeyi)
- Görev için hedefler veya kurallar tanımlama (ör. daha fazla açıklama olmadan bir kod snippet'i döndürme)
- İstem için ek bağlam bilgisi sağlama (örneğin, son güncel bilgi tarihi)
Sistem talimatı, isteğin tamamına uygulanır. İsteme dahil edildiğinde birden fazla kullanıcı ve model yanıtı genelinde geçerli olur. Sistem talimatları istemlerin içeriğinden ayrı olsa da genel istemlerinizin bir parçasıdır ve bu nedenle standart veri kullanım politikalarına tabidir.
Sistem talimatlarını ayarlama
|
Bu sayfada sağlayıcıya özel içerikleri ve kodu görüntülemek için Gemini API sağlayıcınızı tıklayın. |
Genel kullanım alanları için sistem talimatlarını ayarlama
Swift
GenerativeModel örneği oluştururken systemInstruction değerini belirtirsiniz.
import FirebaseAILogic
// Specify the system instructions as part of creating the `GenerativeModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).generativeModel(
modelName: "GEMINI_MODEL_NAME",
systemInstruction: ModelContent(role: "system", parts: "You are a cat. Your name is Neko.")
)
Kotlin
GenerativeModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// Specify the system instructions as part of creating the `GenerativeModel` instance.
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
modelName = "GEMINI_MODEL_NAME",
systemInstruction = content { text("You are a cat. Your name is Neko.") }
)
Java
GenerativeModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// Specify the system instructions as part of creating the `GenerativeModel` instance.
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
/* modelName */ "GEMINI_MODEL_NAME",
/* generationConfig (optional) */ null,
/* safetySettings (optional) */ null,
/* requestOptions (optional) */ new RequestOptions(),
/* tools (optional) */ null,
/* toolsConfig (optional) */ null,
/* systemInstruction (optional) */ new Content.Builder().addText("You are a cat. Your name is Neko.").build()
);
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Web
GenerativeModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Specify the system instructions as part of creating the `GenerativeModel` instance
const model = getGenerativeModel(ai, {
model: "GEMINI_MODEL_NAME",
systemInstruction: "You are a cat. Your name is Neko."
});
Dart
systemInstruction'yi
bir GenerativeModel örneği oluştururken belirtirsiniz.
// ...
// Specify the system instructions as part of creating the `GenerativeModel` instance.
final model = FirebaseAI.googleAI().generativeModel(
model: 'GEMINI_MODEL_NAME',
systemInstruction: Content.system('You are a cat. Your name is Neko.'),
);
// ...
Unity
GenerativeModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
// Specify the system instructions as part of creating the `GenerativeModel` instance.
var model = ai.GetGenerativeModel(
modelName: "GEMINI_MODEL_NAME",
systemInstruction: ModelContent.Text("You are a cat. Your name is Neko.")
);
Gemini Live API için sistem talimatlarını ayarlama
Swift
LiveModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
// Specify the system instructions as part of creating the `liveModel` instance
let liveModel = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: ModelContent(role: "system", parts: "You are a cat. Your name is Neko."),
// ...
)
// ...
Kotlin
LiveModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance.
val liveModel = Firebase.ai(backend = GenerativeBackend.googleAI()).liveModel(
modelName = "GEMINI_LIVE_MODEL_NAME",
systemInstruction = content { text("You are a cat. Your name is Neko.") },
// ...
)
// ...
Java
LiveModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance.
LiveGenerativeModel lm = FirebaseAI.getInstance(GenerativeBackend.googleAI()).liveModel(
/* modelName */ "GEMINI_LIVE_MODEL_NAME",
/* systemInstruction (optional) */ new Content.Builder().addText("You are a cat. Your name is Neko.").build()
// ...
);
LiveModelFutures liveModel = LiveModelFutures.from(lm);
// ...
Web
LiveGenerativeModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Specify the system instructions as part of creating the `LiveGenerativeModel` instance.
const liveModel = getLiveGenerativeModel(ai, {
model: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: "You are a cat. Your name is Neko.",
// ...
});
// ...
Dart
LiveGenerativeModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
// Specify the system instructions as part of creating the `liveGenerativeModel` instance.
final liveModel = FirebaseAI.googleAI().liveGenerativeModel(
model: 'GEMINI_LIVE_MODEL_NAME',
systemInstruction: Content.system('You are a cat. Your name is Neko.'),
// ...
);
// ...
Unity
LiveModel örneği oluştururken systemInstruction değerini belirtirsiniz.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance.
var liveModel = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetLiveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: ModelContent.Text("You are a cat. Your name is Neko."),
// ...
);
// ...
Sistem talimatı örnekleri
Modelin beklenen davranışını yönlendirmeye yardımcı olan bazı sistem talimatı örneklerini aşağıda bulabilirsiniz. Bazı örneklerde, sistem talimatının faydalı olacağı örnek bir istem de gösterilir.
Kod üretme
Sistem talimatı:
Ön uç arayüzleri için kod oluşturma konusunda uzman bir kodlama uzmanısınız. Oluşturmak istediğim bir web sitesinin bileşenini açıkladığımda lütfen bunu yapmak için gereken HTML ve CSS kodunu döndür. Bu kodla ilgili açıklama yapma. Ayrıca kullanıcı arayüzü tasarımıyla ilgili bazı öneriler de sunun.Kullanıcı istemi:
Sayfanın ortasında, her biri başlık içeren ve dönüşümlü olarak gösterilen resimlerin yer aldığı bir kutu oluştur. Sayfanın ortasındaki resim, öne çıkması için arkasında gölge içermelidir. Ayrıca sitenin başka bir sayfasına bağlantı vermesi gerekir. URL'yi boş bırakın, ben dolduracağım.
Müzik chatbot'u
Sistem talimatı:
Farklı müzik türleri hakkında kapsamlı bilgi sahibi olan ve alakalı örnekler veren bir müzik tarihçisi olarak yanıt vereceksiniz. Üslubunuz neşeli ve coşkulu olacak, müziğin keyfini yayacak. Müzikle ilgili olmayan sorulara "Bu konuda bilgim yok." yanıtı verilmelidir.Kullanıcı istemi:
Altmışlı yıllarda doğan birinin gençliğinde en popüler müzik türü hangisiydi? Madde işareti kullanarak beş şarkı listele.
Biçimlendirilmiş veri oluşturma
Sistem talimatı:
Evde yemek yapanlara yardımcı olan bir asistansın. Size bir malzeme listesi verilir ve bu malzemeleri kullanan tariflerin listesini yanıt olarak verirsiniz. Ekstra malzeme gerektirmeyen tarifler her zaman ekstra malzeme gerektiren tariflerden önce listelenmelidir.Yanıtınız 3 tarif içeren bir JSON nesnesi olmalıdır. Yemek tarifi nesnesi aşağıdaki şemaya sahiptir:
- name: Tarifin adı
- usedIngredients: Tarifte kullanılan ve listede belirtilen malzemeler
- otherIngredients: Listede belirtilmeyen tarifteki malzemeler (başka malzeme yoksa atlanır)
- description: Tarifi satıyormuş gibi olumlu bir şekilde yazılmış kısa bir açıklama
Kullanıcı istemi:
- 1 paket dondurulmuş brokoli (yaklaşık 450 g)
- 1 pint ağır krema
- 450 g paket peynir parçaları
İçerik üretimini kontrol etmek için diğer seçenekler
- İstem tasarımı hakkında daha fazla bilgi edinin. Böylece modeli, ihtiyaçlarınıza özel çıkışlar oluşturması için etkileyebilirsiniz.
- Modelin nasıl yanıt oluşturacağını kontrol etmek için model parametrelerini yapılandırın. Örneğin, maksimum çıkış jetonu sayısı, tekrarlanan çıkış jetonlarının olasılığı vb.
- Nefret söylemi ve müstehcen içerik de dahil olmak üzere zararlı olarak kabul edilebilecek yanıtlar alma olasılığını ayarlamak için güvenlik ayarlarını kullanın.
- Belirli bir çıkış şeması belirtmek için istemle birlikte bir yanıt şeması iletin. Bu özellik en çok tercih edilen olarak JSON çıkışı oluştururken kullanılır ancak sınıflandırma görevleri için de kullanılabilir (örneğin, modelin belirli etiketleri kullanmasını istediğinizde).