Понимание и настройка параметров модели

Каждый вызов, который вы отправляете модели, включает значения параметров, которые управляют тем, как модель генерирует ответ. Модель может генерировать разные результаты для разных значений параметров. Поэкспериментируйте с различными значениями параметров, чтобы получить наилучшие значения для задачи. Параметры, доступные для разных моделей, могут отличаться.

Конфигурация сохраняется в течение всего срока службы инициализированного сервиса Vertex AI и экземпляра модели . Чтобы обновить конфигурацию модели, экземпляр модели необходимо повторно инициализировать.

Далее на этой странице вы сможете узнать, как настроить параметры модели .

Описание каждого параметра

Наиболее распространенными параметрами являются следующие:

Узнайте о каждом из этих параметров в следующих разделах этой страницы.

Максимальное количество выходных токенов

Максимальное количество токенов, которое может быть сгенерировано в ответе. Токен состоит примерно из четырех символов. 100 токенов соответствуют примерно 20 словам.

Укажите меньшее значение для более коротких ответов и большее значение для более длинных ответов.

Температура

Температура используется для выборки во время генерации ответа, которая происходит при применении topP и topK . Температура контролирует степень случайности при выборе токенов. Более низкие температуры хороши для подсказок, требующих более детерминированного и менее открытого или творческого ответа, в то время как более высокие температуры могут привести к более разнообразным и творческим результатам. Температура 0 является детерминированной, что означает, что всегда выбирается ответ с наибольшей вероятностью.

В большинстве случаев попробуйте начать с температуры 0.2 . Если модель возвращает слишком общий или слишком короткий ответ или модель дает запасной ответ, попробуйте увеличить температуру.

Топ-К

Top-K меняет способ выбора токенов моделью для вывода. Значение top-K, равное 1 , означает, что следующий выбранный токен является наиболее вероятным среди всех токенов в словаре модели (также называемое жадным декодированием), а значение top-K, равное 3 , означает, что следующий токен выбирается из трех наиболее вероятных токенов. с помощью температуры.

На каждом этапе выбора токенов отбираются топ-K токенов с наибольшей вероятностью. Затем токены дополнительно фильтруются на основе top-P, причем последний токен выбирается с использованием температурной выборки.

Укажите меньшее значение для менее случайных ответов и более высокое значение для более случайных ответов. Значение top-K по умолчанию равно 40 .

Топ-П

Top-P меняет способ выбора токенов моделью для вывода. Токены выбираются от наиболее (см. top-K) до наименее вероятных до тех пор, пока сумма их вероятностей не станет равна значению top-P. Например, если токены A, B и C имеют вероятность 0,3, 0,2 и 0,1, а значение top-P равно 0.5 , то модель выберет либо A, либо B в качестве следующего токена, используя температуру, и исключит C как кандидат.

Укажите меньшее значение для менее случайных ответов и более высокое значение для более случайных ответов. Значение top-P по умолчанию равно 0.95 .

Настройте параметры модели


Вы настраиваете параметры модели в generationConfig во время инициализации модели. Вот базовый пример:

Kotlin+KTX

// ...

val config = generationConfig {
    maxOutputTokens = 200
    stopSequences = listOf("red")
    temperature = 0.9f
    topK = 16
    topP = 0.1f
}

val generativeModel = Firebase.vertexAI.generativeModel(
    modelName = "MODEL_NAME",
    generationConfig = config
)

// ...

Java

// ...

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();

GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
    "MODEL_NAME",
    generationConfig
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// ...

Другие варианты управления созданием контента

  • Узнайте больше о разработке подсказок , чтобы вы могли влиять на модель и генерировать выходные данные, соответствующие вашим потребностям.
  • Используйте настройки безопасности , чтобы настроить вероятность получения ответов, которые могут быть расценены как вредные, включая разжигание ненависти и контент откровенно сексуального характера.
  • Установите системные инструкции для управления поведением модели. Эта функция похожа на «преамбулу», которую вы добавляете перед тем, как модель будет подвергнута дальнейшим инструкциям от конечного пользователя.
  • Передайте схему ответа вместе с приглашением указать конкретную схему вывода. Эта функция чаще всего используется при генерации выходных данных JSON , но ее также можно использовать для задач классификации (например, когда вы хотите, чтобы модель использовала определенные метки или теги).