Велика мовна модель, яка потребує хмарного кінцевого вузла, непридатна на тактичному краю, адже мережа — найненадійніший елемент оперативного середовища. Заборонений, деградований, переривчастий або обмежений за смугою пропускання канал не може доставити запит до віддаленої моделі та повернути відповідь у межах часу, відведеного на прийняття рішення, — а надсилання оперативного тексту за межі платформи створює як емісійний сигнал, так і ризик витоку даних. Альтернатива — запускати модель там, де перебувають дані: на пристрої, з вимкненим радіо, генеруючи кожен токен локально. Ця стаття описує, як це реально робиться: вибір моделі, квантування, бюджет апаратного забезпечення, кеш ключів-значень і деталі середовища виконання, які визначають, чи буде інференція на пристрої чуйною або неприйнятно повільною.
Навіщо на пристрої, і чого це коштує
Аргумент на користь інференції на пристрої очевидний: вона виключає мережу з критичного шляху. Після завантаження моделі до пам'яті немає віддалених дзвінків, залежності від супутникового або mesh-радіоканалу, і жодна телеметрія не залишає платформу. Затримка стає детермінованою — функцією апаратного забезпечення та моделі, а не спірного каналу. Запити та виводи, що можуть містити координати, позначення підрозділів або наміри, ніколи не залишають пристрій.
Вартість — це можливість. Модель, що вміщується на одному пристрої краю, значно менша за фронтирну хмарну модель, а модель з параметрами 7B–8B суттєво поступається у відкритих міркуваннях моделі, більшій на два порядки. Інженерна дисципліна роботи з LLM на пристрої — це тому визначення завдань: підбір вузького, чітко визначеного завдання до найменшої моделі, яка може виконати його надійно, а не очікування від малої моделі функцій загального асистента. Узагальнення контактного звіту, класифікація вхідних повідомлень за пріоритетом, вилучення структурованих полів з вільного тексту або відповіді на запитання за локальним набором документів — усе це завдання, з якими мала модель справляється добре. Багатокрокові міркування в широкому неоднозначному контексті — там, де малі моделі дають збій.
Вибір моделі: менша, ніж ви думаєте
Інстинкт завантажити найбільшу модель, яку може фізично вмістити апаратне забезпечення, — найпоширеніша помилка при розгортанні LLM на краю. Найбільша модель не залишає запасу пам'яті для контекстного вікна, кешу ключів-значень або будь-якого паралельного робочого навантаження на пристрої — а при авторегресивній генерації більша модель означає менше токенів на секунду. Правильна відправна точка — найменша родина моделей, яка правдоподібно здатна впоратися з завданням, перевірена на відкладеній вибірці реальних прикладів, перш ніж щось інше буде оптимізовано.
Приблизне відображення: моделі з параметрами 1B–3B підходять для шаблонного вилучення, класифікації та коротких перетворень; вони працюють на скромному апаратному забезпеченні та генерують швидко. Моделі 7B–8B є робочим класом для узагальнення, питань-відповідей із доповненою пошуком інформацією та обмеженого міркування, і комфортно поміщаються на акселераторах краю середнього рівня після квантування. Понад приблизно 13B параметрів вимоги до пам'яті та смуги пропускання загалом перевищують те, що один захищений пристрій краю може підтримувати при інтерактивній швидкості токенів, а граничні переваги рідко виправдовують витрати на краю.
Квантування: ключовий компроміс
Квантування — це техніка, що робить LLM на пристроях практичними. Модель тренується та розповсюджується з точністю 16-бітної з плаваючою комою, але більшість цієї точності не потрібна для інференції. Квантування перекодує ваги з меншою бітовою розрядністю — 8, 5 або 4 біти і нижче — що пропорційно зменшує обсяг пам'яті та збільшує пропускну здатність, оскільки обмежувальним чинником генерації є пропускна здатність пам'яті, а менше байт на вагу означає менше байт для переміщення на токен.
Вартість точності нелінійна, і розуміння її форми відрізняє надійне розгортання від крихкого. Восьмибітне квантування практично без втрат для майже кожного завдання. Чотирибітне квантування з використанням сучасної K-quant схеми (зазвичай позначається Q4_K_M) зазвичай коштує 1–3 відсотки на тестах міркування, при цьому вдвічі зменшуючи слід відносно 8 біт — це стандартна золота середина для розгортання на краю. Нижче 4 біт деградація прискорюється: 3-бітні та 2-бітні збірки можуть руйнуватися при виконанні завдань міркування, навіть продовжуючи генерувати зв'язний текст, що робить їх небезпечними саме тому, що збій не очевидний при побіжному читанні.
Вирішальний момент у тому, що цей компроміс залежить від завдання і повинен вимірюватися, а не припускатися. Для екстрактивних і шаблонних завдань — витягнути координату сітки з цього повідомлення, класифікувати цей звіт — 4-бітова модель виконує завдання близько до базової лінії повної точності, оскільки завдання не зачіпає вразливі частини моделі. Для багатокрокових міркувань та сама 4-бітова збірка може втрачати достатньо, щоб це мало значення. Єдиний спосіб дізнатися — запустити відкладену оцінювальну вибірку через базову лінію повної точності, 8-бітну збірку та 4-бітну збірку, порівняти метрики, що стосуються конкретного завдання, і прийняти найменшу збірку, втрата якої перебуває в межах оперативної допустимості. Вибір правильного акселератора краю для цієї моделі — окрема дисципліна: дивіться наш аналіз вибору апаратного забезпечення edge AI для оборони.
Квантування з урахуванням навчання vs квантування після навчання
Більшість розгортань на краю використовують квантування після навчання: беруть існуючу модель і квантують ваги безпосередньо, з опціональним калібруванням на невеликому репрезентативному наборі даних. Це швидко, не потребує навчальної інфраструктури та достатньо ефективне при 4 бітах для більшості завдань. Квантування з урахуванням навчання — тонке налаштування моделі з симульованим квантуванням у прямому проході — відновлює більше точності при дуже низьких розрядностях, але потребує навчального конвеєра та вихідних даних. Для більшості розгорнутих систем 4-бітне квантування після навчання з калібруванням є прагматичним вибором; резервуйте квантування з урахуванням навчання для випадків, коли субчотирибітна робота вимушена апаратними обмеженнями.
Бюджет апаратного забезпечення та стіна пам'яті-смуги пропускання
Апаратне питання для LLM на пристроях визначається пам'яттю, а не обчисленнями. Авторегресивна генерація виробляє по одному токену за раз, і виробництво кожного токена вимагає зчитування всього набору ваг моделі з пам'яті. Пропускна здатність у токенах на секунду обмежується пропускною здатністю пам'яті, поділеною на розмір моделі в байтах, значно частіше, ніж сирою арифметичною пропускною здатністю. Пристрій з великою кількістю FLOPS, але скромною пропускною здатністю пам'яті буде повільним при генерації незалежно від свого обчислювального рейтингу.
Практичний мінімум для чуйної моделі класу 7B — приблизно 8 ГБ пам'яті, доступної акселератору інференції, та достатньо смуги пропускання для підтримки 10–20 токенів на секунду. Jetson Orin NX у конфігурації 8 ГБ або 16 ГБ точно потрапляє в цей діапазон, як і невелика захищена система x86 з інтегрованим або дискретним GPU. Інференція тільки на CPU цілком можлива для моделей 1B–3B та дає кілька токенів на секунду на моделях 7B — прийнятно для пакетного узагальнення, що виконується без очікування оператора, але неприйнятно для інтерактивного використання. Prefill (обробка запиту) та decode (генерація відповіді) мають різні вузькі місця: prefill обмежений обчисленнями та паралельний, decode обмежений смугою пропускання та послідовний, тому їх необхідно вимірювати окремо при виборі апаратного забезпечення.
Кеш ключів-значень: прихована вартість пам'яті
Розмір ваг — це вартість пам'яті, яку всі враховують; кеш ключів-значень (KV) — та, що застає команди зненацька. Під час генерації модель кешує ключі та значення уваги для кожного вже обробленого токена, щоб не перераховувати їх, і цей кеш зростає лінійно з довжиною контексту. Для моделі 7B при 16-бітній точності KV-кеш коштує порядку 0,5 МБ на токен, тому контекст з 8 000 токенів додає приблизно 4 ГБ поверх ваг — що нерідко більше, ніж самі квантовані ваги. На обмеженому апаратному забезпеченні саме KV-кеш, а не ваги, обмежує доступну довжину контексту. Квантування KV-кешу до 8 або 4 біт зменшує це вдвічі або вчетверо і нерідко є різницею між робочим бюджетом контексту та помилкою нестачі пам'яті. Висновок: встановлюйте довжину контексту на мінімальне значення, необхідне для завдання, а не на максимально підтримуване моделлю.
Ключова думка: Обмежувальним чинником розгортання LLM на пристрої рідко є розмір квантованих ваг — це кеш ключів-значень, який зростає з довжиною контексту і регулярно перевищує розмір ваг. Явно враховуйте KV-кеш у бюджеті, квантуйте його, коли пам'ять обмежена, та встановлюйте контекстне вікно на мінімально необхідний розмір. Розгортання, що вмістило ваги, але проігнорувало кеш, дасть збій, як тільки оператор вставить довгий документ.
Середовище виконання, пакування та перевірена офлайн-робота
Середовище виконання на пристрої — це шар, який завантажує квантовані ваги, керує KV-кешем та надає інтерфейс генерації для застосунку. Рушій на основі llama.cpp є поширеним вибором, оскільки він безпосередньо запускає квантований формат GGUF, підтримує CPU та бекенди акселераторів, і має невеликий обсяг залежностей, що підходить для захищеного образу. Яким би не було середовище виконання, модель слід закріпити в пам'яті після першого завантаження, щоб вартість завантаження тривалістю в секунди сплачувалася один раз, а не при кожному запиті; застосунок повинен розглядати затримку генерації як першочергову метрику, що відображається оператору.
Пакування — це місце, де заяви про роботу на пристрої виграють або програють. Файл моделі, середовище виконання, токенізатор і шаблони запитів повинні бути присутніми в образі пристрою — нічого не завантажується під час виконання. Єдиний чесний тест офлайн-роботи — запустити весь робочий процес з вимкненим радіо, у режимі «у літаку» або в ізольованій мережі, і підтвердити, що система запускається та відповідає без доступного кінцевого вузла. Будь-який прихований дзвінок — завантаження токенізатора, телеметричний маяк, перевірка ліцензії — повинен бути знайдений і видалений, оскільки на краю він дасть тихий збій і разом із собою забере можливість. Оновлення моделей доставляються через фізичні носії або автентифікований локальний синхронізм — ніколи через припущення про наявність підключення.
LLM на пристроях також розширюють поверхню атаки способами, недоступними для хмарної моделі: ваги, запити та будь-який корпус пошуку перебувають на пристрої, який може бути захоплений. Ін'єкція запитів через поглинені документи, ексфільтрація даних через сформовані виводи та фальсифікація файлу моделі — все це в межах сфери загроз, проти якої необхідно проектувати захист: ця тема детально розглянута в нашому посібнику з безпеки LLM для оборонних систем штучного інтелекту.
Запускайте мовні моделі там, де перебувають дані
Corvus SENSE забезпечує квантований AI на пристрої для відключеного тактичного апаратного забезпечення — локальна інференція без хмарної залежності, детермінована затримка та оперативні дані, що ніколи не залишають платформу. Створено для забороненого, деградованого та переривчастого середовища.
Цей аналіз підготовлено інженерами Corvus Intelligence, які розробляють критично важливі системи edge AI та ISR для оборонних і державних організацій. Дізнатися про нашу команду →