Эта статья помогает понять параметры/настройки при выводе вашей большой языковой модели.

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

  1. Максимальная длина: этот параметр определяет максимальную длину генерируемого вывода. Он позволяет ограничить количество генерируемых токенов, чтобы избежать чрезмерно длинных ответов.
  2. Выборка Top-k: Выборка Top-k — это метод, который ограничивает выбор следующего токена до k наиболее вероятных токенов на каждом шаге. Это помогает контролировать разнообразие и случайность сгенерированного текста, сужая варианты.
  3. Выборка Top-p (Nucleus): Как обсуждалось ранее, выборка Top-p или ядра ограничивает выбор токенов подмножеством словаря с кумулятивной вероятностной массой до порогового значения. Это помогает контролировать разнообразие генерируемого вывода.
  4. Наказание за повторение: Наказание за повторение — это метод, который наказывает или снижает вероятность создания токенов, которые недавно появились в сгенерированном тексте. Это побуждает модель генерировать более разнообразные и неповторяющиеся результаты.
  5. Контекстная подсказка: предоставляя конкретную контекстную подсказку или ввод, вы можете направлять модель для создания текста, соответствующего этому контексту. Это может помочь гарантировать, что сгенерированный вывод является актуальным и последовательным в данном контексте.
  6. Масштабирование температуры: Масштабирование температуры, как обсуждалось ранее, контролирует случайность и разнообразие генерируемых выходных данных. Регулируя температуру, вы можете влиять на компромисс между исследованием и эксплуатацией во время генерации текста.
  7. Постобработка: после создания текста вы можете применить методы постобработки для уточнения вывода, удаления нежелательных артефактов или улучшения общего качества и согласованности сгенерированного текста.

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

Ниже приведены некоторые подробные сведения о настройках, упомянутых выше:

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

Это относится к параметру или настройке, используемому в развертывании большой языковой модели, который ограничивает количество новых токенов, которые могут быть созданы во время генерации текста или логического вывода.

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

Установив максимальное ограничение, вы можете контролировать длину генерируемых выходных данных и предотвращать создание слишком длинных или подробных ответов моделью. Это может быть полезно в различных сценариях, например, при создании коротких ответов, твитов или сводок.

Значение «Максимум новых токенов» обычно указывается как целое число, представляющее максимальное количество дополнительных токенов помимо входных токенов, которые должна генерировать модель. Фактическое количество токенов в сгенерированном выводе может быть меньше, если модель встречает специальный токен, указывающий на конец текста, или если она достигает предела до создания указанного количества токенов.

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

Top-p (выборка ядра)

Top-p» или «ядерная выборка» — это метод вероятностной выборки, используемый в больших языковых моделях, таких как GPT (Generative Pre-trained Transformer) во время генерации текста. Это помогает контролировать разнообразие и случайность генерируемого вывода.

Во время генерации текста модель предсказывает распределение вероятности следующего токена на основе предшествующего контекста. Выборка Top-p включает в себя выбор следующего токена из «ядра» или подмножества словаря, который составляет кумулятивную вероятностную массу p наиболее вероятных токенов. Значение «p» представляет собой совокупный порог вероятности.

Вот как работает Top-p или выборка ядра:

  1. Вычислить совокупные вероятности токенов, предсказанных моделью, отсортированных в порядке убывания.
  2. Продолжайте добавлять вероятности, пока совокупная вероятность не превысит порог «p».
  3. Учитывайте только те токены, которые вносят вклад в кумулятивную вероятность до порога «p» (ядро).
  4. Случайная выборка из ядра, давая более высокие вероятности маркерам, которые имеют большую долю кумулятивной вероятностной массы.

Используя выборку Top-p, вы обеспечиваете более контролируемый и разнообразный процесс генерации. Это позволяет избежать чрезмерно повторяющихся или детерминированных выходных данных, которые могут возникнуть из-за постоянного выбора наиболее вероятного токена. Вместо этого у модели есть возможность выбирать из более широкого диапазона вариантов внутри ядра, что способствует более разнообразному и творческому созданию текста.

Значение «p» определяет разнообразие генерируемого вывода. Более высокие значения «p» приводят к большей случайности и разнообразию, поскольку для выборки рассматривается большее количество токенов. Более низкие значения «p» приводят к более целенаправленному и детерминированному выводу, поскольку модель фокусируется на наиболее вероятных токенах.

Top-p или ядерная выборка — это эффективный метод, позволяющий сбалансировать исследование и использование при генерации текста, позволяя контролировать творчество и разнообразие вывода при сохранении согласованности и качества.

Штраф за повтор

«Наказание за повторение» — это метод, используемый в больших языковых моделях во время генерации текста, чтобы предотвратить повторяющийся или избыточный вывод. Он предназначен для устранения склонности языковых моделей к созданию повторяющихся фраз, предложений или шаблонов.

При применении штрафа за повторение модель назначает штраф или снижает вероятность генерации токенов, которые недавно появлялись в сгенерированном тексте. Этот штраф помогает продвигать более разнообразный и разнообразный результат, поощряя модель генерировать новый и другой контент, а не повторяться.

Конкретная реализация штрафа за повторение может варьироваться в зависимости от используемой модели или структуры. Общие подходы включают:

  1. Штраф на основе токенов: Штраф применяется к токенам в зависимости от их частоты появления в недавнем контексте или сгенерированных выходных данных. Токены, которые появлялись чаще, наказываются сильнее, что снижает вероятность их повторной генерации.
  2. Штраф за N-грамм: модель рассматривает последовательности токенов (n-грамм) и применяет штраф на основе повторения n-грамм в сгенерированном выводе. Более высокие штрафы назначаются более частым n-граммам.
  3. Температурное масштабирование: Температурное масштабирование можно комбинировать со штрафом за повторение, чтобы контролировать компромисс между исследованием и эксплуатацией во время генерации текста. Более высокая температура увеличивает случайность и исследование, в то время как более низкая температура способствует более сфокусированному и детерминированному результату.

Штраф за повторение — полезная техника для улучшения разнообразия и связности генерируемого текста. Наказывая повторный контент, он побуждает модель генерировать более новые и разнообразные ответы, повышая качество и естественность вывода.

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

Масштабирование температуры

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

При генерации текста языковые модели предсказывают распределение вероятностей следующего токена на основе предшествующего контекста. Параметр температуры корректирует логиты или вероятности предсказанных токенов перед выборкой.

Более высокое значение температуры (> 1,0) увеличивает случайность и разнообразие генерируемого вывода. Это заставляет модель назначать более равные вероятности более широкому диапазону токенов, что позволяет больше исследовать и творчески изменять сгенерированный текст. Это может привести к более неожиданному и разнообразному выводу, но также может привести к большему количеству шума или менее когерентным откликам.

С другой стороны, более низкое значение температуры (‹ 1,0) уменьшает случайность и побуждает модель сосредоточиться на наиболее вероятных токенах. Это делает распределение более пиковым, с более высокими вероятностями, присваиваемыми наиболее вероятным токенам. Это может привести к более детерминированному и консервативному результату с меньшими вариациями и более последовательными ответами.

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

Более высокие значения температуры побуждают к исследованию и могут быть полезны при создании творческого или теоретического текста, в то время как более низкие значения температуры способствуют более сфокусированному и контролируемому выводу, подходящему для создания более конкретных или точных ответов.

Примечание. Вы можете поиграть с этими параметрами для модели LLaMA здесь.