YaRN и расширение длины контекста
YaRN (еще одно расширение RoPE) — это эффективный метод расширения полезного контекстного окна модели далеко за пределы того, на чем оно было обучено.
Обзор
It cleverly rescales rotary position embeddings so a model trained on, say, 4K tokens can handle 32K or more with minimal fine-tuning.
Глубокое погружение
Большинство современных LLM кодируют позиции токенов с помощью RoPE (Rotary Position Embeddings), который вращает векторы запроса и ключевые векторы на углы, привязанные к положению. Когда вы подаете последовательности, длина которых превышает длину тренировки, эти вращения входят в невидимые диапазоны, и модель выходит из строя. YaRN, представленный в 2023 году Боуэном Пэном и его коллегами, исправляет эту проблему с помощью интерполяции с поддержкой NTK, применяемой к каждой частоте: он оставляет высокочастотные измерения (которые фиксируют локальные, ближние связи) в основном нетронутыми, в то время как интерполирует низкочастотные измерения (которые отслеживают положение на большом расстоянии). YaRN также добавляет регулировку температуры для внимания, чтобы противостоять изменениям энтропии, возникающим в более длительных контекстах. Результатом является высокая производительность в длительном контексте после точной настройки лишь небольшой части данных и шагов, которые требуются наивным подходам.
Техническая информация
RoPE присваивает каждому размеру внедрения частоту вращения. Наивная линейная интерполяция одинаково сжимает все частоты, нанося вред высокочастотным измерениям, которые кодируют мелкие локальные детали. YaRN использует функцию линейного изменения для интерполяции только низкочастотных (длинноволновых) измерений, сохраняя при этом высокочастотные, а также масштабирование температуры внимания 1/sqrt(t), которое сохраняет стабильность резкости softmax по мере увеличения длины последовательности. Такой подход NTK по частям расширяет контекст с гораздо меньшей деградацией.
Стратегическое воздействие
Стоимость и бюджет
Архитектурные решения влияют на производительность и эксплуатационные расходы на протяжении многих лет.
Более четкие решения
Техническое образование помогает командам выбрать правильный стек, а не только самый новый.
Контроль качества
Лучший инженерный выбор снижает вероятность возникновения проблем с надежностью на производстве.
Будущее YaRN и расширение длины контекста
Расширение контекста теперь является стандартной практикой: открытые модели регулярно поставляют расширенные YaRN варианты, достигающие 128 000 токенов или больше. Исследования движутся к методам, которые расширяют контекст с нулевой или почти нулевой точной настройкой, сочетают масштабирование RoPE с трюками с шаблоном внимания и поддерживают качество во всем окне, а не только на его концах. Ожидайте более тесной интеграции этих методов в предварительную подготовку, если контекст является родным, а не модифицированным.
Реальная реализация
Расширение открытой модели 4K-контекста до 32K или 128K для ответов на длинные вопросы с краткой тонкой настройкой
Обеспечение возможности системам с расширенным поиском поглощать множество объединенных отрывков без усечения.
Поддержка помощников по написанию кода, которым нужен весь большой файл репозитория или несколько файлов в одном запросе.
Адаптация базовой модели для долгих многоходовых разговоров, в которых накапливается большая история чатов.
Риски и ограничения
Оптимизация одного теста может скрыть более широкие недостатки системы.
Затраты на инфраструктуру и техническое обслуживание часто недооцениваются.
Пробелы в безопасности и наблюдаемости могут увеличиваться по мере усложнения систем.
Дорожная карта реализации
Определите целевые показатели задержки, качества и стоимости перед внедрением.
Тестирование при реалистичной нагрузке и условиях данных.
Мониторинг прибора на наличие ошибок, дрейфа и влияния пользователя.
Перед масштабированием подготовьте пути отката и реагирования на инциденты.
Продолжайте исследовать
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the YaRN and Context Length Extension quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Следующее руководство
Интерполяция позиции для расширения контекста
Часто задаваемые вопросы
What is YaRN and Context Length Extension?
YaRN (еще одно расширение RoPE) — это эффективный метод расширения полезного контекстного окна модели далеко за пределы того, на чем оно было обучено. Он умело масштабирует встраивания вращающихся позиций, поэтому модель, обученная, скажем, на токенах 4 КБ, может обрабатывать 32 КБ или более с минимальной тонкой настройкой.
Какой метод кодирования позиции изменяет YaRN для расширения контекста?
YaRN, чье название означает «Еще одно расширение RoPE», изменяет масштаб встраивания вращающихся позиций, используемых в большинстве современных LLM.
Что происходит не так, когда модель RoPE видит последовательности, длина которых превышает длину ее обучения?
Позиции, выходящие за рамки обучения, создают углы поворота, которые модель никогда не видела, поэтому поведение внимания резко ухудшается.
Как YaRN обрабатывает различные частотные измерения RoPE?
YaRN использует поэтапную рампу NTK, которая интерполирует длинноволновые низкочастотные диммы и оставляет короткодействующие высокочастотные диммы практически нетронутыми.
Помимо изменения масштаба частот, какие дополнительные настройки применяет YaRN?
YaRN добавляет температурное масштабирование к логитам внимания, чтобы противодействовать сдвигам энтропии, которые происходят по мере роста контекста.
В чем ключевое практическое преимущество YaRN перед наивной интерполяцией?
YaRN достигает высокого качества в длинном контексте после тонкой настройки небольшой части данных, которые требуются наивным методам.