Menggunakan konfigurasi model untuk mengontrol respons

Dalam setiap panggilan ke model, Anda dapat mengirim konfigurasi model untuk mengontrol cara model menghasilkan respons. Setiap model menawarkan opsi konfigurasi yang berbeda.

Anda dapat bereksperimen dengan prompt dan konfigurasi model serta melakukan iterasi dengan cepat menggunakan Vertex AI Studio.

Langsung ke opsi konfigurasi Gemini Langsung ke opsi konfigurasi Imagen



Mengonfigurasi model Gemini

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.

// ...

// 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"]
)

// Specify the config as part of creating the `GenerativeModel` instance
let model = vertex.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
}

// Specify the config as part of creating the `GenerativeModel` instance
val generativeModel = Firebase.vertexAI.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 generationConfig = configBuilder.build();

// Specify the config as part of creating the `GenerativeModel` instance
GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
    "GEMINI_MODEL_NAME",
    generationConfig
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// ...

Web

Tetapkan nilai parameter dalam GenerationConfig sebagai bagian dari pembuatan instance GenerativeModel.

// ...

// 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(vertex, { 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,
);
final model = FirebaseVertexAI.instance.generativeModel(
  model: 'GEMINI_MODEL_NAME',
  // Specify the config as part of creating the `GenerativeModel` instance
  config: generationConfig,
);

// ...

Anda dapat menemukan deskripsi setiap parameter di bagian berikutnya di halaman ini.

Konfigurasi untuk Gemini Live API

Konfigurasi dipertahankan selama masa aktif instance. Jika Anda ingin menggunakan konfigurasi yang berbeda, buat instance LiveModel baru dengan konfigurasi tersebut.

Swift

Live API belum didukung untuk aplikasi platform Apple, tetapi periksa kembali nanti.

Kotlin

Tetapkan nilai parameter dalam LiveGenerationConfig sebagai bagian dari pembuatan instance LiveModel.

// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
val config = liveGenerationConfig {
    maxOutputTokens = 200
    responseModality = ResponseModality.AUDIO
    speechConfig = SpeechConfig(voice = Voices.FENRIR)
    temperature = 0.9f
    topK = 16
    topP = 0.1f
}

// Specify the config as part of creating the `LiveModel` instance
val generativeModel = Firebase.vertexAI.liveModel(
    modelName = "gemini-2.0-flash-live-preview-04-09",
    generationConfig = config
)

// ...

Java

Tetapkan nilai parameter dalam LiveGenerationConfig sebagai bagian dari pembuatan instance LiveModel.

// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
LiveGenerationConfig.Builder configBuilder = new LiveGenerationConfig.Builder();
configBuilder.setMaxOutputTokens(200);
configBuilder.setResponseModalities(ResponseModality.AUDIO);

configBuilder.setSpeechConfig(new SpeechConfig(Voices.FENRIR));
configBuilder.setTemperature(0.9f);
configBuilder.setTopK(16);
configBuilder.setTopP(0.1f);

LiveGenerationConfig generationConfig = configBuilder.build();

// Specify the config as part of creating the `LiveModel` instance
LiveGenerativeModel gm = FirebaseVertexAI.getInstance().liveModel(
    "gemini-2.0-flash-live-preview-04-09",
    generationConfig
);

LiveModelFutures model = LiveModelFutures.from(gm);

// ...

Web

Live API belum didukung untuk aplikasi Web, tetapi periksa kembali nanti.

Dart

Tetapkan nilai parameter dalam LiveGenerationConfig sebagai bagian dari pembuatan instance LiveModel.

// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
final generationConfig = LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: [ResponseModality.audio],
  speechConfig: SpeechConfig(voice: Voice.fenrir),
  temperature: 0.9,
  topP: 0.1,
  topK: 16,
);

// Specify the config as part of creating the `LiveModel` instance
final model = FirebaseVertexAI.instance.LiveModel(
  model: 'gemini-2.0-flash-live-preview-04-09',
  config: generationConfig,
);

// ...

Anda dapat menemukan deskripsi setiap parameter di bagian berikutnya di halaman ini.

Deskripsi parameter (Gemini)

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
Stempel waktu audio
audioTimestamp

Boolean yang memungkinkan pemahaman stempel waktu untuk file input hanya audio.

Hanya berlaku saat menggunakan panggilan generateContent atau generateContentStream dan jenis inputnya adalah file khusus audio.

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 GenerativeModel.

---
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 LiveModel.

---
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 LiveModel.

Puck



Mengonfigurasi model Imagen

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.

// ...

// 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
)

// Specify the config as part of creating the `ImagenModel` instance
let model = vertex.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
)

// Specify the config as part of creating the `ImagenModel` instance
val imagenModel = Firebase.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
ImagenModel m = FirebaseVertexAI.getInstance().imagenModel(
    "IMAGEN_MODEL_NAME",
    config
);

ImagenModelFutures model = ImagenModelFutures.from(m);

// ...

Web

Tetapkan nilai parameter dalam ImagenGenerationConfig sebagai bagian dari pembuatan instance ImagenModel.

// ...

// 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 imagenModel = getImagenModel(vertexAI, { 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
);

// Specify the config as part of creating the `ImagenModel` instance
final model = FirebaseVertexAI.instance.imagenModel(
  model: 'IMAGEN_MODEL_NAME',
  config: generationConfig,
);

// ...

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 imagen-3.0-generate-002.

---
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).