В каждом вызове модели вы можете отправить конфигурацию модели, чтобы контролировать, как модель генерирует ответ. Каждая модель предлагает различные параметры конфигурации.
Вы также можете экспериментировать с подсказками и конфигурациями моделей с помощью Google AI Studio .Gemini Перейти к параметрам конфигурации Imagen Перейти к параметрам конфигурации
Настройка моделей Gemini
Щелкните своего поставщика API Gemini , чтобы просмотреть специфичный для этого поставщика контент и код на этой странице. |
В этом разделе показано, как настроить конфигурацию для использования с моделями Gemini , и приведено описание каждого параметра .
Настройте конфигурацию модели ( Gemini )
Конфигурация для общих случаев использования
Конфигурация сохраняется на протяжении всего срока службы экземпляра. Если вы хотите использовать другую конфигурацию, создайте новый экземпляр GenerativeModel
с этой конфигурацией.
Быстрый
Установите значения параметров в GenerationConfig
как часть создания экземпляра 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
Установите значения параметров в GenerationConfig
как часть создания экземпляра 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
Установите значения параметров в GenerationConfig
как часть создания экземпляра 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
Установите значения параметров в GenerationConfig
как часть создания экземпляра 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
Установите значения параметров в GenerationConfig
как часть создания экземпляра 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,
);
// ...
Единство
Установите значения параметров в GenerationConfig
как часть создания экземпляра 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
);
Описание каждого параметра вы найдете в следующем разделе этой страницы.
Конфигурация для Gemini Live API
Описание параметров ( Близнецы )
Ниже приведен краткий обзор доступных параметров (по мере применимости).Полный список параметров и их значений можно найти в документации API разработчика Gemini .
Параметр | Описание | Значение по умолчанию |
---|---|---|
Аудио временная меткаaudioTimestamp | Логическое значение, которое позволяет распознавать временные метки для входных файлов, содержащих только аудиоданные. Применимо только при использовании вызовов | false |
Штраф за частотуfrequencyPenalty | Контролирует вероятность включения токенов, которые неоднократно появляются в сгенерированном ответе. Положительные значения штрафуют токены, которые неоднократно появляются в сгенерированном контенте, снижая вероятность повторения контента. | --- |
Максимальное количество выходных токеновmaxOutputTokens | Указывает максимальное количество токенов, которые могут быть сгенерированы в ответе. | --- |
Штраф за присутствиеpresencePenalty | Контролирует вероятность включения токенов, которые уже присутствуют в сгенерированном ответе. Положительные значения штрафуют токены, которые уже присутствуют в сгенерированном контенте, увеличивая вероятность генерации более разнообразного контента. | --- |
Остановочные последовательностиstopSequences | Задает список строк, который сообщает модели о необходимости прекратить генерацию контента, если в ответе встречается одна из строк. Применимо только при использовании конфигурации | --- |
Температураtemperature | Контролирует степень случайности ответа. Более низкие температуры приводят к более детерминированным реакциям, а более высокие температуры приводят к более разнообразным и креативным реакциям. | Зависит от модели |
Топ-КtopK | Ограничивает количество наиболее вероятных слов, используемых в сгенерированном контенте. Значение top-K, равное 1 означает, что следующий выбранный токен должен быть наиболее вероятным среди всех токенов в словаре модели, тогда как значение top-K, равное n , означает, что следующий токен должен быть выбран из n наиболее вероятных токенов (все на основе установленной температуры). | Зависит от модели |
Топ-ПtopP | Контролирует разнообразие генерируемого контента. Токены выбираются от наиболее вероятных (см. top-K выше) к наименее вероятным до тех пор, пока сумма их вероятностей не станет равна значению top-P. | Зависит от модели |
Модальность ответаresponseModality | Указывает тип потокового вывода при использовании Live API , например текст или аудио. Применимо только при использовании Live API и конфигурации | --- |
Речь (голос)speechConfig | Указывает голос, используемый для потокового аудиовывода при использовании Live API . Применимо только при использовании Live API и конфигурации | Puck |
Настройка моделей Imagen
Щелкните своего поставщика Imagen API , чтобы просмотреть специфичный для этого поставщика контент и код на этой странице. |
В этом разделе показано, как настроить конфигурацию для использования с моделями Imagen , и приведено описание каждого параметра .
Настройте конфигурацию модели ( Imagen )
Конфигурация сохраняется на протяжении всего срока службы экземпляра. Если вы хотите использовать другую конфигурацию, создайте новый экземпляр ImagenModel
с этой конфигурацией.
Быстрый
Задайте значения параметров в ImagenGenerationConfig
как часть создания экземпляра 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
Задайте значения параметров в ImagenGenerationConfig
как часть создания экземпляра 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
Задайте значения параметров в ImagenGenerationConfig
как часть создания экземпляра 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
Задайте значения параметров в ImagenGenerationConfig
как часть создания экземпляра 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
Задайте значения параметров в ImagenGenerationConfig
как часть создания экземпляра 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,
);
// ...
Единство
Использование Imagen пока не поддерживается для Unity, но проверьте позже!
Описание каждого параметра вы найдете в следующем разделе этой страницы.
Описание параметров ( Imagen )
Вот общий обзор доступных параметров, если применимо. Полный список параметров и их значений можно найти в документации Google Cloud .
Параметр | Описание | Значение по умолчанию |
---|---|---|
Отрицательная подсказкаnegativePrompt | Описание того, что вы хотите исключить из сгенерированных изображений. Этот параметр пока не поддерживается | --- |
Количество результатовnumberOfImages | Количество сгенерированных изображений, возвращаемых для каждого запроса | по умолчанию одно изображение для моделей Imagen 3 |
Соотношение сторонaspectRatio | Соотношение ширины к высоте генерируемых изображений | по умолчанию квадрат (1:1) |
Формат изображенияimageFormat | Параметры вывода, такие как формат изображения (тип MIME) и уровень сжатия создаваемых изображений. | Тип MIME по умолчанию — PNG сжатие по умолчанию — 75 (если тип MIME установлен на JPEG) |
Водяной знакaddWatermark | Добавлять ли невидимый цифровой водяной знак (называемый SynthID ) к сгенерированным изображениям | по умолчанию установлено значение true для моделей Imagen 3 |
Поколение людейpersonGeneration | Разрешить ли генерацию людей по модели | по умолчанию зависит от модели |
Другие варианты управления генерацией контента
- Узнайте больше о разработке подсказок , чтобы вы могли влиять на модель и генерировать результаты, соответствующие вашим потребностям.
- Используйте настройки безопасности , чтобы отрегулировать вероятность получения ответов, которые могут считаться вредоносными, включая разжигание ненависти и откровенно сексуальный контент.
- Установите системные инструкции для управления поведением модели. Эта функция похожа на преамбулу, которую вы добавляете перед тем, как модель получит какие-либо дальнейшие инструкции от конечного пользователя.
- Передайте схему ответа вместе с приглашением указать определенную схему вывода. Эта функция чаще всего используется при генерации вывода JSON , но ее также можно использовать для задач классификации (например, когда вы хотите, чтобы модель использовала определенные метки или теги).