Актуальні теми
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Ви проходите співбесіду на посаду науковця в OpenAI.
Інтерв'юер запитує:
"Як би ви розширили довжину контексту LLM з 2K до 128K токенів?"
Ви: «Я допрацюю модель на довших документах з контекстом 128K.»
Інтерв'ю закінчено.
Ось що ви пропустили:
Розширення контекстного вікна стосується не лише більших матриць.
У традиційному трансформері розширення токенів у 8 разів збільшує потреби в пам'яті в 64 рази через квадратичну складність уваги. Зверніться до зображення нижче!
Отже, як нам це вдається?
продовжити... 👇

1) Розріджена увага
Він обмежує обчислення уваги підмножиною токенів за допомогою:
- Використання місцевої уваги (токени дбають лише про своїх сусідів).
- Дайте моделі зрозуміти, на які токени слід зосередитися.
Але тут є компроміс між обчислювальною складністю та продуктивністю.

Схожа ідея була використана в ModernBERT.
→ Повна глобальна увага на кожному третьому шарі
→ Місцева увага (128 токенів) інакше
Результат:
- Довжина послідовності у 16 разів більша
- Значно краща продуктивність
- Найефективніший за пам'яттю енкодер
Просто, але потужно.

Ось інтуїтивне пояснення, взяте з статті:
Уявіть, що ви читаєте книгу. Чи потрібно вам бути повністю обізнаним з кожним прочитаним реченням, щоб зрозуміти більшу його частину (повна глобальна увага)?
Чи достатньо обізнаності про поточну главу (локальна увага), якщо ви час від часу згадуєте про її значення для основного сюжету (глобальної уваги)?
У переважній більшості випадків це останнє.
2) Спалах уваги
Це швидкий і ефективний для пам'яті метод, який зберігає точність традиційних механізмів уваги, т. Е. Використовує глобальну увагу, але ефективно.
Вся ідея обертається навколо оптимізації руху даних у пам'яті графічного процесора.
Давайте розбиратися!

Деякі подробиці:
- Нитка – найменша одиниця виконання.
- Кілька ниток утворюють блок.
Також:
- Потоки в блоці ділять швидку (але дефіцитну) пам'ять під назвою SRAM.
- Всі блоки мають спільну глобальну пам'ять під назвою HBM (багато, але повільно).
Перевірте це 👇

Увага переміщається великими матрицями між SRAM і HBM:
Щоб обчислити QK:
- розподілити матриці по нитках
- обчислювати;
- відправити товар в HBM
Щоб обчислити softmax:
- розподілити продукт по нитках
- обчислювати;
- надсилати вихідні дані в HBM
Повторіть для всіх шарів.
Перевірте це 👇

Flash Attention включає оптимізацію на рівні апаратного забезпечення, в якій вона використовує SRAM для кешування проміжних результатів.
Таким чином, він зменшує зайві рухи, пропонуючи прискорення до 7,6 разів порівняно зі стандартними методами уваги.
Перевірте це 👇

3) DeepSeek Sparse Attention (DSA)
Нова модель DeepSeek V3.2 вводить DeepSeek Sparse Attention (DSA), яка знижує складність з O(L²) до O(Lk), де k фіксоване.
Як це працює:
Легкий Lightning Indexer оцінює, які токени дійсно важливі для кожного запиту.
Невелика кількість головок, працює у FP8, обчислювально дешево.
Тоді механізм вибору отримує лише верхні k записів значення ключа.
Головне розуміння полягає в тому, що на кожен запит вибирається лише 2048 токенів, незалежно від довжини контексту.
Отже, дорогі обчислення уваги відбуваються на цій невеликій підмножині, а не на повній послідовності 128K.

При контексті 128K вартість попереднього заповнення знижується з ~$0.65 до ~$0.35 за мільйон токенів. А Decoding падає з ~$2.4 до ~$0.8.
І продуктивність залишається незмінною. У деяких довгоконтекстних бенчмарках V3.2 насправді отримує вищі бали.
Обмежена увага — не новина. Але зробити так, щоб це працювало, не втрачаючи якість, складно.
Які ще існують методи збільшення довжини контексту в LLM?

152,61K
Найкращі
Рейтинг
Вибране

