Petunjuk sistem seperti "preamble" yang Anda tambahkan sebelum model diekspos ke petunjuk lebih lanjut dari pengguna akhir. Dengan fitur ini, Anda dapat mengarahkan perilaku model berdasarkan kebutuhan dan kasus penggunaan spesifik Anda.
Saat Anda menetapkan petunjuk sistem, Anda memberi model konteks tambahan untuk memahami tugas, memberikan respons yang lebih disesuaikan, dan mematuhi pedoman tertentu terkait interaksi pengguna secara keseluruhan dengan model. Anda dapat menentukan perilaku tingkat produk dalam petunjuk sistem, terpisah dari perintah yang diberikan oleh pengguna akhir. Misalnya, Anda dapat menyertakan hal-hal seperti peran atau persona, informasi kontekstual, dan petunjuk pemformatan.
Anda dapat menggunakan petunjuk sistem dalam berbagai cara, termasuk:
- Menentukan persona atau peran (misalnya, untuk chatbot)
- Menentukan format output (Markdown, YAML, dll.)
- Menentukan gaya dan nada output (misalnya, kejelasan, formalitas, dan tingkat baca target)
- Menentukan sasaran atau aturan untuk tugas (misalnya, menampilkan cuplikan kode tanpa penjelasan lebih lanjut)
- Memberikan konteks tambahan untuk perintah (misalnya, batas pengetahuan)
Saat petunjuk sistem ditetapkan, petunjuk tersebut akan berlaku untuk seluruh permintaan. Saat disertakan dalam perintah, fitur ini berfungsi di tiap percakapan yang terjadi antara pengguna dan model. Meskipun petunjuk sistem terpisah dari isi perintah, petunjuk tersebut tetap menjadi bagian dari perintah keseluruhan Anda dan oleh karena itu tunduk pada kebijakan penggunaan data standar.
Petunjuk sistem didukung oleh semua model Gemini. Model ini tidak didukung oleh model Imagen 3.
Mengatur petunjuk sistem
Klik penyedia Gemini API untuk melihat konten dan kode khusus penyedia di halaman ini. |
Menetapkan petunjuk sistem untuk kasus penggunaan umum
Swift
Anda menentukan
systemInstruction
saat membuat instance GenerativeModel
.
import FirebaseAI
// 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
Anda menentukan
systemInstruction
saat membuat instance GenerativeModel
.
// 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
Anda menentukan
systemInstruction
saat membuat instance GenerativeModel
.
// 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
Anda menentukan
systemInstruction
saat membuat instance GenerativeModel
.
// ...
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
Anda menentukan
systemInstruction
saat membuat instance GenerativeModel
.
// ...
// 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
Anda menentukan
systemInstruction
saat membuat instance GenerativeModel
.
// ...
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.")
);
Menetapkan petunjuk sistem untuk Gemini Live API
Contoh perintah
Berikut beberapa contoh perintah sistem yang menentukan perilaku yang diharapkan dari model.
Pembuatan kode
- Sistem: Anda adalah pakar coding yang berspesialisasi dalam merender kode untuk antarmuka frontend. Saat saya menjelaskan komponen situs yang ingin saya buat, berikan HTML dan CSS yang diperlukan untuk melakukannya. Jangan berikan penjelasan untuk kode ini. Juga menawarkan beberapa saran desain UI.
- Pengguna: Buat kotak di tengah halaman yang berisi pilihan gambar yang berotasi, masing-masing dengan teks. Gambar di tengah halaman harus memiliki bayangan di belakangnya agar terlihat menonjol. Link ini juga harus ditautkan ke halaman lain di situs. Biarkan URL kosong agar saya dapat mengisinya.
Pembuatan data yang diformat
Sistem: Anda adalah asisten untuk juru masak rumahan. Anda menerima daftar bahan makanan dan merespons dengan daftar resep yang menggunakan bahan-bahan tersebut. Resep yang tidak memerlukan bahan tambahan harus selalu dicantumkan sebelum resep yang memerlukan bahan tambahan.
Respons Anda harus berupa objek JSON yang berisi 3 resep. Objek resep memiliki skema berikut:
- name: Nama resep
- usedIngredients: Bahan-bahan dalam resep yang disediakan dalam daftar
- otherIngredients: Bahan-bahan dalam resep yang tidak disediakan dalam daftar (dihilangkan jika tidak ada bahan lain)
- deskripsi: Deskripsi singkat resep, ditulis secara positif seolah-olah untuk menjualnya
Pengguna:
- 1 lb kantong brokoli beku
- 1 pint krim kental
- 1 lb pack cheese ends and pieces
Chatbot musik
- Sistem: Anda akan merespons sebagai sejarawan musik, yang menunjukkan pengetahuan komprehensif di berbagai genre musik dan memberikan contoh yang relevan. Gaya bahasa Anda harus ceria dan antusias, menyebarkan kegembiraan musik. Jika pertanyaan tidak terkait dengan musik, responsnya harus, "Itu di luar pengetahuan saya."
- Pengguna: Jika seseorang lahir pada tahun enam puluhan, apa genre musik paling populer yang diputar? Buat daftar lima lagu dengan poin butir.
Opsi lain untuk mengontrol pembuatan konten
- Pelajari lebih lanjut desain perintah agar Anda dapat memengaruhi model untuk menghasilkan output yang sesuai dengan kebutuhan Anda.
- Konfigurasi parameter model untuk mengontrol cara model menghasilkan respons. Untuk model Gemini, parameter ini mencakup token output maksimum, suhu, topK, dan topP. Untuk model Imagen, hal ini mencakup rasio aspek, pembuatan orang, pemberian tanda air, dll.
- Gunakan setelan keamanan untuk menyesuaikan kemungkinan mendapatkan respons yang mungkin dianggap berbahaya, termasuk ujaran kebencian dan konten seksual vulgar.
- Teruskan skema respons bersama dengan perintah untuk menentukan skema output tertentu. Fitur ini paling sering digunakan saat membuat output JSON, tetapi juga dapat digunakan untuk tugas klasifikasi (seperti saat Anda ingin model menggunakan label atau tag tertentu).