+11 голос |
Технологія штучного інтелекту вже зайняла міцні позиції на ринку ПК, і тепер виробники націлюються не просто на локальне виконання завдань на базі великих мовних моделей, а говорять про можливість комфортної взаємодії з ними, коли затримка відгуку на запит залишається непоміченою.
Так AMD заявила про те, що вже через кілька років на ринок вийдуть портативні комп'ютери, здатні виконувати великі мовні моделі (LLM) з 30 млрд параметрів. Причому це відбуватиметься зі швидкістю 100 токенів на секунду. На думку аналітиків, впоратися з вирішенням такого завдання можна тільки шляхом оптимізації як апаратної, так і програмної складових. Досить нагадати, що за твердженням AMD, її процесори Ryzen AI 300-ї серії Strix Point, анонсовані на виставці Computex 2024, здатні виконувати із 4-бітною точністю LLM до семи мільярдів параметрів за скромної швидкості 20 токенів за секунду та затримки першого токена 1-4 секунди.
Досягнення цільового показника продуктивності «North Star» у 30 млрд параметрів, 100 токенів на секунду - це не просто питання встановлення потужнішого NPU. Більша кількість TOPS або FLOPS, звісно, допоможе - особливо коли йдеться про затримку першого токена, - але коли йдеться про локальне виконання великих мовних моделей, набагато важливішими є обсяг пам'яті та пропускна здатність.
У цьому відношенні продуктивність LLM на Strix Point багато в чому обмежується 128-бітною шиною пам'яті, яка в парі з LPDDR5x забезпечує пропускну спроможність у районі 120-135 ГБ/с залежно від швидкості пам'яті.
Якщо прийняти за чисту монету, то справжня модель із 30 млрд параметрів, квантована до 4 біт, займатиме близько 15 ГБ пам'яті та потребуватиме понад 1,5 ТБ/с пропускної спроможності, щоб досягти мети в 100 токенів на секунду. Для порівняння, це приблизно така сама пропускна здатність, як у карти Nvidia A100 PCIe з HBM2 на 40 ГБ, але потребує набагато більше потужності.
Це означає, що без оптимізацій, які дають змогу зробити модель менш вимогливою, майбутнім SoC від AMD знадобиться набагато швидша і ємніша LPDDR, щоб досягти поставленої розробником чіпа мети.
Махеш Субрамоні (Mahesh Subramony), старший науковий співробітник та інженер із проєктування кремнію, що займається розробкою SoC в AMD, не приховує цих проблем.
«Ми знаємо, як до цього прийти», - сказав Субрамоні, «Але хоча сьогодні можна розробити деталь, здатну досягти цілей AMD, немає особливого сенсу, якщо ніхто не зможе дозволити собі її використовувати або не буде нічого, що могло б скористатися її перевагами. Якщо почати поширення з того, що кожен повинен мати Ferrari, автомобілі не будуть поширюватися. Потрібно почати з того, що кожен отримає чудову машину, а для початку показати, що з нею можна робити відповідально».
«Ми повинні створити SKU, яка відповідатиме вимогам 95% користувачів», - продовжив він. «Я б вважав за краще мати ноутбук за $1300, а потім у хмарі запускати свою модель із 30 млрд параметрів. Сьогодні це все ще дешевше».
Коли справа доходить до демонстрації цінності ПК зі штучним інтелектом, AMD значною мірою спирається на своїх партнерів із програмного забезпечення. У випадку з такими продуктами, як Strix Point, це в основному означає Microsoft. «Коли Strix тільки починався, у нас була глибока співпраця з Microsoft, яка певною мірою визначала наші кордони», - згадує Субрамоні. «Але хоча програмне забезпечення може допомогти визначити напрямок розвитку нового обладнання, на розробку і впровадження нового чіпа можуть піти роки. Ген AI та сценарії використання AI розвиваються набагато швидше».
Минуло два роки з моменту дебюту ChatGPT, щоб простежити його розвиток, і Субрамоні вважає, що AMD тепер краще розуміє, куди рухаються вимоги до обчислень, що, безсумнівно, є однією з причин, чому AMD встановила для себе цю мету.
Існує кілька способів розв'язати проблему пропускної здатності пам'яті. Наприклад, пам'ять LPDDR5 можна замінити на пам'ять із вищою пропускною спроможністю - але, як зазначає Субрамоні, це не зовсім вигідно, оскільки різко збільшить вартість і погіршить енергоспоживання SoC.
«Якщо ми не можемо отримати модель із 30 млрд параметрів, ми повинні бути в змозі отримати щось, що забезпечить таку саму точність. Це означає, що насамперед необхідно буде поліпшити процес навчання, щоб зробити ці моделі меншими», - пояснює Субрамоні. Хороша новина полягає в тому, що існує досить багато способів зробити саме це - залежно від того, що для вас є пріоритетом: пропускна спроможність чи обсяг пам'яті.
Один із можливих підходів - використання моделі суміші експертів (MoE), подібної до Mixtral AI. Такі MoE являють собою набір невеликих моделей, які працюють у зв'язці одна з одною. Зазвичай у пам'ять завантажується повна MoE, але оскільки активна тільки одна підмодель, вимоги до пропускної здатності пам'яті істотно знижуються порівняно з монолітною модельною архітектурою еквівалентного розміру.
MoE, що складається з шести моделей з 5 млрд параметрів, потребуватиме лише трохи більше ніж 250 ГБ/с пропускної спроможності для досягнення мети в 100 токенів за секунду - принаймні, за 4-бітної точності.
Інший підхід полягає у використанні спекулятивного декодування - процесу, за якого невелика легка модель генерує чернетку, яку потім передають більшій моделі для виправлення будь-яких неточностей. В AMD повідомили, що цей підхід дає значний приріст продуктивності, однак він не завжди розв'язує проблему того, що LLM вимагають багато пам'яті.
Більшість сучасних моделей навчаються на типах даних brain float 16 або FP16, що споживає два байти на параметр. Це означає, що для моделі з 30 млрд параметрів потрібно 60 ГБ пам'яті для роботи з власною точністю.
Але оскільки для переважної більшості користувачів це, найімовірніше, недоцільно, нерідко моделі квантуються до 8- або 4-бітної точності. Це знижує точність і збільшує ймовірність галюцинацій, але скорочує обсяг пам'яті на чверть. Як ми розуміємо, саме таким чином AMD вдається змусити модель із сімома мільярдами параметрів працювати зі швидкістю близько 20 токенів на секунду.
Як своєрідний компроміс, починаючи зі Strix Point, NPU XDNA 2 підтримує тип даних Block FP16. Попри назву, він вимагає всього 9 біт на параметр - для цього потрібно взяти вісім значень із комою, що плаває, та використовувати загальну експоненту. За словами AMD, ця форма здатна досягти точності, що практично не відрізняється від рідної FP16, займаючи при цьому лише трохи більше місця, ніж Int8. Що ще більш важливо, формат не вимагає перенавчання моделей для використання його переваг - наявні моделі BF16 і FP16 працюватимуть без кроку квантування. Але якщо середній ноутбук не почне постачатися з 48 ГБ або більше оперативної пам'яті, AMD все одно доведеться шукати кращі способи скоротити обсяг моделі.
Хоча про це не говориться прямо, неважко уявити, що майбутні NPU і/або інтегрована графіка AMD будуть підтримувати менші формати блоків з комою, що плаває, такі як MXFP6 або MXFP4. З цією метою ми вже знаємо, що графічні процесори AMD CDNA для центрів обробки даних підтримують FP8, а CDNA 4 буде підтримувати FP4.
У будь-якому разі, схоже, що в найближчі кілька років апаратне забезпечення ПК зазнає значних змін, оскільки штучний інтелект залишить хмари та оселиться на кінцевих пристроях.
Про DCIM у забезпеченні успішної роботи ІТ-директора
+11 голос |