在对模型的每次调用中,您都可以发送模型配置,以控制模型如何生成回答。每种型号都提供不同的配置选项。
您可以使用 Vertex AI Studio 试验提示和模型配置,并快速迭代。
Gemini 配置选项 跳转到 Imagen 配置选项 跳转到
配置 Gemini 模型
本部分介绍了如何设置配置以与 Gemini 模型搭配使用,并提供了每个参数的说明。
设置模型配置 (Gemini)
适用于一般使用场景的配置
在创建 GenerativeModel
实例时,在 GenerationConfig
(Kotlin | Java) 中设置参数的值。
该配置会在实例的整个生命周期内保持有效。如果您想使用其他配置,请使用该配置创建新的 GenerativeModel
实例。
Kotlin
// ...
// 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
// ...
// 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);
// ...
您可以在本页的下一部分中找到每个参数的说明。
Gemini Live API 的配置
在创建 LiveModel
实例时,在 LiveGenerationConfig
(Kotlin | Java) 中设置参数的值。
该配置会在实例的整个生命周期内保持有效。如果您想使用其他配置,请使用该配置创建新的 LiveModel
实例。
Kotlin
// ...
// 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
// ...
// 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);
// ...
您可以在本页的下一部分中找到每个参数的说明。
参数 (Gemini) 的说明
以下是可用参数(如适用)的简要概览。 您可以在 Google Cloud 文档中找到参数及其值的完整列表。
参数 | 说明 | 默认值 |
---|---|---|
音频时间戳
audioTimestamp
|
一个布尔值,用于为仅音频输入文件启用时间戳理解功能。 仅当使用 |
false |
频次惩罚
frequencyPenalty
|
控制在生成的回答中包含反复出现的令牌的概率。 正值会惩罚生成内容中反复出现的词元,从而降低重复内容概率。 |
--- |
输出令牌数量上限
maxOutputTokens
|
指定回复中可生成的令牌数量上限。 | --- |
存在惩罚
presencePenalty
|
控制包含已出现在生成的回答中的令牌的概率。 正值会惩罚生成的内容中已存在的 token,从而增加生成更多样化内容的概率。 |
--- |
停止序列
stopSequences
|
指定一个字符串列表,告知模型在响应中遇到其中一个字符串时,停止生成内容。 仅在使用 |
--- |
温度
temperature
|
控制回答的随机性。 温度越低,回答越确定;温度越高,回答越多样化或富有创造力。 |
取决于型号 |
前 K 个
topK
|
限制生成的内容中使用概率最高的字词的数量。 如果 top-K 值为 1 ,则表示下一个所选 token 应为模型词汇表的所有 token 中概率最高的 token;如果 top-K 值为 n ,则表示下一个 token 应从n 个概率最高的 token 中选择(所有这些都基于设置的温度)。
|
取决于型号 |
Top-P
topP
|
控制生成内容的多样性。 系统会按照概率从最高(见上文中的 top-K)到最低的顺序选择 token,直到所选 token 的概率总和等于 top-P 的值。 |
取决于型号 |
回答方式
responseModality
|
指定使用 Live API 时流式传输的输出类型,例如文本或音频。 仅在使用 Live API 和 |
--- |
语音 (voice)
speechConfig
|
指定使用 Live API 时用于流式音频输出的语音。 仅在使用 Live API 和 |
Puck |
配置 Imagen 模型
本部分介绍了如何设置配置以与 Imagen 模型搭配使用,并提供了每个参数的说明。
设置模型配置 (Imagen)
在创建 ImagenModel
实例时,在 ImagenGenerationConfig
(Kotlin | Java) 中设置参数的值。
该配置会在实例的整个生命周期内保持有效。如果您想使用其他配置,请使用该配置创建新的 ImagenModel
实例。
Kotlin
// ...
// 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
// ...
// 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);
// ...
您可以在本页的下一部分中找到每个参数的说明。
参数 (Imagen) 的说明
以下是可用参数(如适用)的简要概览。 您可以在 Google Cloud 文档中找到参数及其值的完整列表。
参数 | 说明 | 默认值 |
---|---|---|
否定提示
negativePrompt
|
有关您要在生成的图片中省略的内容的说明
|
--- |
结果数量
numberOfImages
|
为每个请求返回的生成图片数量 | 默认值为 Imagen 3 型号的一张图片 |
宽高比
aspectRatio
|
生成图片的宽高比 | 默认值为方形 (1:1) |
图片格式
imageFormat
|
输出选项,例如图片格式(MIME 类型)和生成图片的压缩级别 | 默认 MIME 类型为 PNG 默认压缩率为 75(如果 MIME 类型设为 JPEG) |
水印
addWatermark
|
是否向生成的图片添加不可见的数字水印(称为 SynthID) | Imagen 3 型号的默认值为 true
|
人物生成
personGeneration
|
是否允许模型生成人物 | 默认值取决于模型 |
用于控制内容生成的其他选项
- 详细了解问题设计,以便影响模型生成符合您需求的输出。
- 您可以使用安全设置来调整系统提供可能被视为有害的回答(包括仇恨言论和露骨色情内容)的可能性。
- 设置系统指令,以引导模型的行为。此功能类似于您在模型接触到来自最终用户的任何进一步指令之前添加的“序言”。
- 将回答架构与提示一起传递,以指定特定的输出架构。此功能最常用于生成 JSON 输出,但也可以用于分类任务(例如,当您希望模型使用特定标签或标记时)。