Сколько символов можно ввести в "подсказку" для GPT-2

Я использую модель OpenAI GPT-2 с github

Я думаю, что параметр top_k определяет, сколько токенов выбирается. Является ли это параметром, определяющим размер приглашения?

Если top_k = 40, насколько большим может быть приглашение?

1 ответ

Решение

GPT-2 работает не на уровне персонажа, а на уровне подслова. Максимальная длина текстовых сегментов в обучении составила 1024 подслова.

Он использует словарь, основанный на кодировании пар байтов. При таком кодировании частые слова остаются нетронутыми, редкие слова разбиваются на несколько единиц, в конечном итоге вплоть до байтового уровня. На практике сегментация выглядит так (69 символов, 17 подслов):

Hello , ▁Stack Over flow ! ▁This ▁is ▁an ▁example ▁how _a ▁string ▁gets ▁segment ed .

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

Выбор top_kвлияет только на требования к памяти. Длинный запрос также требует больше памяти, но, вероятно, это не главное ограничение.

Другие вопросы по тегам