Post content
Вчера вышла интересная статья YaRN про еще один способ увеличения контекста в LLM (точнее в тех моделях, которые используют метод RoPE для позиционного кодирования, например, LLaMa-2) до 64k, 128k токенов. Направление сейчас популярное, ведь такая штука позволяет поместить в контекст среднюю книгу или же иметь очень длинную историю сообщений. В статье графики выглядят впечатляюще и самое крутое, что можно уже брать модельки с hugging face. В отличие от предыдущих работ, где модифицировали только RoPE (Rotary Positional Encodings, по сути это поворот вектора в пространстве на некоторый угол, который зависит от позиции), авторы заметили, что изменения в позиционном кодировании сильно влияют на распределение attention скоров после софтмакса. Поэтому помимо прочего добавили температуру, которой можно это распределение контролировать. Причем сделано это по-хитрому, чтобы не менять код самого attention и соответственно использовать все существующие оптимизации. Как и другие методы, YaRN требует дообучения на данных с длинным контекстом, хотя и в небольшом количестве (~0.1% от данных претрейна). Единственный вопрос — сколько памяти требуется для инференса таких моделек.