Dalam setiap panggilan ke model, Anda dapat mengirim konfigurasi model untuk mengontrol cara model menghasilkan respons. Setiap model menawarkan opsi konfigurasi yang berbeda.
Anda juga dapat bereksperimen dengan perintah dan konfigurasi model menggunakan Google AI Studio.Gemini Langsung ke opsi konfigurasi Imagen Langsung ke opsi konfigurasi
Mengonfigurasi model Gemini
Klik penyedia Gemini API untuk melihat konten dan kode khusus penyedia di halaman ini. |
Bagian ini menunjukkan cara menyiapkan konfigurasi untuk digunakan dengan model Gemini dan memberikan deskripsi setiap parameter.
Menyiapkan konfigurasi model (Gemini)
Konfigurasi untuk kasus penggunaan umum
Konfigurasi dipertahankan selama masa aktif instance. Jika Anda ingin menggunakan konfigurasi yang berbeda, buat instance GenerativeModel
baru dengan konfigurasi tersebut.
Swift
Tetapkan nilai parameter dalam
GenerationConfig
sebagai bagian dari pembuatan instance GenerativeModel
.
import FirebaseAI
// Set parameter values in a `GenerationConfig` (example values shown here)
let config = GenerationConfig(
temperature: 0.9,
topP: 0.1,
topK: 16,
maxOutputTokens: 200,
stopSequences: ["red"]
)
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).generativeModel(
modelName: "GEMINI_MODEL_NAME",
generationConfig: config
)
// ...
Kotlin
Tetapkan nilai parameter dalam
GenerationConfig
sebagai bagian dari pembuatan instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
val config = generationConfig {
maxOutputTokens = 200
stopSequences = listOf("red")
temperature = 0.9f
topK = 16
topP = 0.1f
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
modelName = "GEMINI_MODEL_NAME",
generationConfig = config
)
// ...
Java
Tetapkan nilai parameter dalam
GenerationConfig
sebagai bagian dari pembuatan instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
configBuilder.temperature = 0.9f;
configBuilder.topK = 16;
configBuilder.topP = 0.1f;
GenerationConfig config = configBuilder.build();
// Specify the config as part of creating the `GenerativeModel` instance
GenerativeModelFutures model = GenerativeModelFutures.from(
FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"GEMINI_MODEL_NAME",
config
);
);
// ...
Web
Tetapkan nilai parameter dalam
GenerationConfig
sebagai bagian dari pembuatan instance GenerativeModel
.
// ...
// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `GenerationConfig` (example values shown here)
const generationConfig = {
max_output_tokens: 200,
stop_sequences: ["red"],
temperature: 0.9,
top_p: 0.1,
top_k: 16,
};
// Specify the config as part of creating the `GenerativeModel` instance
const model = getGenerativeModel(ai, { model: "GEMINI_MODEL_NAME", generationConfig });
// ...
Dart
Tetapkan nilai parameter dalam
GenerationConfig
sebagai bagian dari pembuatan instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
final generationConfig = GenerationConfig(
maxOutputTokens: 200,
stopSequences: ["red"],
temperature: 0.9,
topP: 0.1,
topK: 16,
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
final model = FirebaseAI.googleAI().generativeModel(
model: 'GEMINI_MODEL_NAME',
config: generationConfig,
);
// ...
Unity
Tetapkan nilai parameter dalam
GenerationConfig
sebagai bagian dari pembuatan instance GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
var generationConfig = new GenerationConfig(
maxOutputTokens: 200,
stopSequences: new string[] { "red" },
temperature: 0.9f,
topK: 16,
topP: 0.1f
);
// Specify the config as part of creating the `GenerativeModel` instance
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
var model = ai.GetGenerativeModel(
modelName: "GEMINI_MODEL_NAME",
generationConfig: generationConfig
);
Anda dapat menemukan deskripsi setiap parameter di bagian berikutnya di halaman ini.
Konfigurasi untuk Gemini Live API
Deskripsi parameter (Gemini)
Berikut adalah ringkasan umum parameter yang tersedia, sebagaimana berlaku. Anda dapat menemukan daftar lengkap parameter dan nilainya dalam dokumentasi Gemini Developer API.
Parameter | Deskripsi | Nilai default |
---|---|---|
Stempel waktu audio
audioTimestamp
|
Boolean yang memungkinkan pemahaman stempel waktu untuk file input hanya audio. Hanya berlaku saat menggunakan panggilan |
false |
Denda frekuensi
frequencyPenalty
|
Mengontrol probabilitas penyertaan token yang berulang kali muncul dalam respons yang dihasilkan. Nilai positif menghukum token yang berulang kali muncul dalam konten yang dihasilkan, sehingga mengurangi kemungkinan konten berulang. |
--- |
Token output maks
maxOutputTokens
|
Menentukan jumlah maksimum token yang dapat dibuat dalam respons. | --- |
Denda kehadiran
presencePenalty
|
Mengontrol probabilitas penyertaan token yang sudah muncul dalam
respons yang dihasilkan. Nilai positif menghukum token yang sudah muncul dalam konten yang dihasilkan, sehingga meningkatkan probabilitas untuk menghasilkan konten yang lebih beragam. |
--- |
Urutan berhenti
stopSequences
|
Menentukan daftar string yang memberi tahu model untuk berhenti menghasilkan konten jika salah satu string ditemukan dalam respons. Hanya berlaku saat menggunakan
konfigurasi |
--- |
Suhu
temperature
|
Mengontrol tingkat keacakan dalam respons. Suhu yang lebih rendah menghasilkan respons yang lebih deterministik, dan suhu yang lebih tinggi menghasilkan respons yang lebih beragam atau kreatif. |
Bergantung pada model |
Top-K
topK
|
Membatasi jumlah kata dengan probabilitas tertinggi yang digunakan dalam
konten yang dihasilkan. Nilai top-K 1 berarti token yang dipilih berikutnya harus
yang paling mungkin di antara semua token dalam kosakata model,
sedangkan nilai top-K n berarti token berikutnya harus
dipilih dari antara token n yang paling mungkin
(semuanya berdasarkan suhu yang ditetapkan).
|
Bergantung pada model |
Top-P
topP
|
Mengontrol keberagaman konten yang dihasilkan. Token dipilih dari yang paling mungkin (lihat top-K di atas) hingga yang paling tidak mungkin sampai jumlah probabilitasnya sama dengan nilai top-P. |
Bergantung pada model |
Modalitas respons
responseModality
|
Menentukan jenis output yang di-streaming saat menggunakan Live API, misalnya teks atau audio. Hanya berlaku saat menggunakan konfigurasi Live API dan
|
--- |
Ucapan (suara)
speechConfig
|
Menentukan suara yang digunakan untuk output audio yang di-streaming saat menggunakan Live API. Hanya berlaku saat menggunakan konfigurasi Live API dan
|
Puck |
Mengonfigurasi model Imagen
Klik penyedia Imagen API untuk melihat konten dan kode khusus penyedia di halaman ini. |
Bagian ini menunjukkan cara menyiapkan konfigurasi untuk digunakan dengan model Imagen dan memberikan deskripsi setiap parameter.
Menyiapkan konfigurasi model (Imagen)
Konfigurasi dipertahankan selama masa aktif instance. Jika Anda ingin menggunakan konfigurasi yang berbeda, buat instance ImagenModel
baru dengan konfigurasi tersebut.
Swift
Tetapkan nilai parameter dalam
ImagenGenerationConfig
sebagai bagian dari pembuatan instance ImagenModel
.
import FirebaseAI
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
let config = ImagenGenerationConfig(
negativePrompt: "frogs",
numberOfImages: 2,
aspectRatio: .landscape16x9,
imageFormat: .jpeg(compressionQuality: 100),
addWatermark: false
)
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).imagenModel(
modelName: "IMAGEN_MODEL_NAME",
generationConfig: config
)
// ...
Kotlin
Tetapkan nilai parameter dalam
ImagenGenerationConfig
sebagai bagian dari pembuatan instance ImagenModel
.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
val config = ImagenGenerationConfig {
negativePrompt = "frogs",
numberOfImages = 2,
aspectRatio = ImagenAspectRatio.LANDSCAPE_16x9,
imageFormat = ImagenImageFormat.jpeg(compressionQuality = 100),
addWatermark = false
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
val model = Firebase.ai(backend = GenerativeBackend.vertexAI()).imagenModel(
modelName = "IMAGEN_MODEL_NAME",
generationConfig = config
)
// ...
Java
Tetapkan nilai parameter dalam
ImagenGenerationConfig
sebagai bagian dari pembuatan instance ImagenModel
.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
ImagenGenerationConfig config = new ImagenGenerationConfig.Builder()
.setNegativePrompt("frogs")
.setNumberOfImages(2)
.setAspectRatio(ImagenAspectRatio.LANDSCAPE_16x9)
.setImageFormat(ImagenImageFormat.jpeg(100))
.setAddWatermark(false)
.build();
// Specify the config as part of creating the `ImagenModel` instance
ImagenModelFutures model = ImagenModelFutures.from(
FirebaseAI.getInstance(GenerativeBackend.googleAI())
.imagenModel(
"IMAGEN_MODEL_NAME",
config
);
);
// ...
Web
Tetapkan nilai parameter dalam
ImagenGenerationConfig
sebagai bagian dari pembuatan instance ImagenModel
.
// ...
// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
const generationConfig = {
negativePrompt: "frogs",
numberOfImages: 2,
aspectRatio: ImagenAspectRatio.LANDSCAPE_16x9,
imageFormat: ImagenImageFormat.jpeg(100),
addWatermark: false
};
// Specify the config as part of creating the `ImagenModel` instance
const model = getImagenModel(ai, { model: "IMAGEN_MODEL_NAME", generationConfig });
// ...
Dart
Tetapkan nilai parameter dalam
ImagenGenerationConfig
sebagai bagian dari pembuatan instance ImagenModel
.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
final generationConfig = ImagenGenerationConfig(
negativePrompt: 'frogs',
numberOfImages: 2,
aspectRatio: ImagenAspectRatio.landscape16x9,
imageFormat: ImagenImageFormat.jpeg(compressionQuality: 100)
addWatermark: false
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
final model = FirebaseAI.googleAI().imagenModel(
model: 'IMAGEN_MODEL_NAME',
config: generationConfig,
);
// ...
Unity
Penggunaan Imagen belum didukung untuk Unity, tetapi periksa kembali nanti.
Anda dapat menemukan deskripsi setiap parameter di bagian berikutnya di halaman ini.
Deskripsi parameter (Imagen)
Berikut adalah ringkasan umum parameter yang tersedia, sebagaimana berlaku. Anda dapat menemukan daftar lengkap parameter dan nilainya dalam dokumentasi Google Cloud.
Parameter | Deskripsi | Nilai default |
---|---|---|
Perintah negatif
negativePrompt
|
Deskripsi tentang hal yang ingin Anda hapus dalam gambar yang dibuat
Parameter ini belum didukung oleh
|
--- |
Jumlah hasil
numberOfImages
|
Jumlah gambar yang dibuat dan ditampilkan untuk setiap permintaan | default adalah satu gambar untuk model Imagen 3 |
Rasio aspek
aspectRatio
|
Rasio lebar tinggi gambar yang dihasilkan | defaultnya adalah persegi (1:1) |
Format gambar
imageFormat
|
Opsi output, seperti format gambar (jenis MIME) dan tingkat kompresi gambar yang dihasilkan | jenis MIME default adalah PNG kompresi default adalah 75 (jika jenis MIME disetel ke JPEG) |
Watermark
addWatermark
|
Apakah akan menambahkan watermark digital yang tidak terlihat (disebut SynthID) ke gambar yang dihasilkan | default-nya adalah true untuk model Imagen 3
|
Pembuatan orang
personGeneration
|
Apakah akan mengizinkan pembuatan orang berdasarkan model | default bergantung pada model |
Opsi lain untuk mengontrol pembuatan konten
- Pelajari lebih lanjut desain perintah agar Anda dapat memengaruhi model untuk menghasilkan output yang spesifik untuk kebutuhan Anda.
- Gunakan setelan keamanan untuk menyesuaikan kemungkinan mendapatkan respons yang mungkin dianggap berbahaya, termasuk ujaran kebencian dan konten seksual vulgar.
- Tetapkan petunjuk sistem untuk mengarahkan perilaku model. Fitur ini seperti preamble yang Anda tambahkan sebelum model diekspos ke petunjuk lebih lanjut dari pengguna akhir.
- 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).