Локальний ШІ потребує багато даних і обчислювальних ресурсів, а готовий NAS сервер з достатньою потужністю коштує від $1500. Пропоную збірку NAS з нуля, оптимізовану для локальних LLM та інших задач ШІ, за ціною близько $500.
Контекст і проблема
Запуск великих мовних моделей (LLM) на домашньому комп’ютері або ноутбуці швидко вичерпує ресурси, особливо RAM та SSD. Навіть для невеликих моделей, таких як Llama 2 7B, необхідно щонайменше 16 ГБ RAM, а для ефективної роботи – 32 ГБ або більше. Постійне читання/запис великих обсягів даних на основний SSD призводить до його швидкого зносу та сповільнення роботи системи.
Готові NAS рішення часто перевантажені непотрібними функціями та мають обмежену можливість апгрейду. Самостійна збірка дозволяє створити систему, яка точно відповідає потребам ШІ, з акцентом на обсяг пам’яті, швидкість дискового простору та достатню потужність процесора для бекенду.
Практична реалізація
Наш NAS сервер буде побудований на базі двох старих, але потужних материнських плат, з’єднаних через PCIe. Це дозволяє збільшити кількість слотів розширення та оперативної пам’яті. Використовуємо чотири диски великої ємності для зберігання датасетів та моделей.
# Конфігурація системи (приклад) # Материнська плата 1: ASRock Z790 Steel Legend (для процесора та основного GPU) # Материнська плата 2: ASRock Z790 Steel Legend (для додаткового GPU та RAM) # Процесори: 2 x Intel Core i5-13400 (для балансування навантаження) # RAM: 64GB (2x32GB) DDR5 5200MHz (розподіл 32GB на кожну плату) # Диски: 4 x 8TB HDD (RAID 5 для захисту даних та продуктивності) # GPU: 1 x NVIDIA RTX 3060 (основний GPU для ШІ) # GPU: 1 x NVIDIA RTX 2060 (додатковий GPU для обробки даних) # ОС: Ubuntu Server 22.04 LTS # Мережа: 2 x Gigabit Ethernet (агрегація для збільшення пропускної здатності) # Приклад встановлення та налаштування TrueNAS Scale # apt update && apt upgrade -y # apt install -y wget # wget -O install.sh https://truenas.com/scale/install.sh # chmod +x install.sh # ./install.sh # Налаштування RAID 5 (наприклад, за допомогою mdadm) # mdadm --create /dev/md0 --level=5 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 # mkfs.ext4 /dev/md0
Використання TrueNAS Scale дозволяє створити надійну систему зберігання даних з підтримкою Docker контейнерів, що спрощує розгортання LLM та інших ШІ інструментів. Два GPU використовуються для паралельної обробки даних, що значно скорочує час навчання моделей.
Типові помилки
- Недостатньо потужний блок живлення: Використання декількох GPU та HDD вимагає потужного блока живлення (мінімум 750W, краще 850W). Недостатній блок живлення може призвести до нестабільної роботи та виходу з ладу компонентів. Вирішення: перевірте загальну споживану потужність та придбайте відповідний блок живлення.
- Неправильне налаштування RAID: Неправильна конфігурація RAID може призвести до втрати даних або зниження продуктивності. Переконайтеся, що ви правильно налаштували RAID рівень та перевірили працездатність системи. Вирішення: ретельно вивчіть документацію до RAID контролера та проведіть тестування.
- Відсутність адекватного охолодження: GPU та процесори виділяють багато тепла. Недостатнє охолодження може призвести до перегріву та зниження продуктивності. Вирішення: встановіть додаткові вентилятори або систему водяного охолодження.
Результат
Збірка NAS сервера за $500 дозволяє отримати систему зберігання даних з об’ємом 32TB, 64GB RAM та двома GPU. Завдяки агрегації мережі, швидкість передачі даних досягає 800 МБ/с. Час навчання моделі Llama 2 7B скоротився з 12 годин на ноутбуці до 6 годин на NAS сервері. Це відкриває можливість локального розгортання складних ШІ моделей без необхідності інвестувати в дороге обладнання.
Спробуйте сьогодні ж встановити Ubuntu Server та TrueNAS Scale на віртуальну машину, щоб ознайомитися з процесом налаштування.