AI Kit

Raspberry Pi AI Kit (Hailo-8L), AI Kit+ (Hailo-8)

 В этом разделе форума можно задать вопрос по использованию ИИ-ускорителя или поделиться опытом использования

Raspberry Pi AI Kit представляет из себя связку переходника Raspberry Pi M.2 HAT и ИИ акселератора Hailo. Полный состав модуля Raspberry Pi AI Kit:

  • ИИ ускоритель (NPU) Hailo AI
  • Raspberry Pi M.2 HAT
  • Термоподложка между M.2 HAT и Hailo AI
  • Крепления для монтажа модуля AI kit к плате Raspberry Pi
  • переходник-"удлиннитель" высоты GPIO разъёма

Для использования AI Кit необходима Raspberry Pi 5

AI Kit+

В AI Kit plus используется более мощный ИИ ускоритель (Hailo-8, 26 TOPS), выполненный в виде единой платы, которая устанавливается на GPIO разъём и подключается шлейфом к разъёму PCIe.

Характеристики ИИ-ускорителя Hailo AI

  • ИИ-акселератор мощностью 16 тераопераций в секунду (TOPS) на базе чипа Hailo-8L в AI kit или Hailo-8 (26 TOPS) в AI-kit+

Установка

1. Обновите установленное на Raspberry Pi ПО до самых последних версий

sudo apt update && sudo apt full-upgrade

2. Убедитесь, что в Raspberry Pi используется свежая версия прошивки. Для этого выполните команду

sudo rpi-eeprom-update

Если дата выпуска прошивки не ранее 6 декабря 2023 года, переходите к следующему шагу. Если используется более старая прошивка то запустите конфигуратор raspi-config, выберите пункт Advanced Options > Bootloader Version и далее вариант Latest. Завершите работу с конфигуратором, нажав кнопку Finish или клавишу Esc

Обновите прошивку командой

sudo rpi-eeprom-update -a

3. По умолчанию режим PCIe Gen 3.0 в Raspberry Pi 5 отключен, т.к микрокомпьютер не проходил соответствующую сертификацию и работа в этом режиме может быть не стабильна. Активируйте режим работы PCIe Gen 3.0, добавив в файл /boot/firmware/config.txt следующую строку:

dtparam=pciex1_gen=3

и перезагрузитесь

sudo reboot

Монтаж модуля AI kit

Перед началом монтажа модуля отключите Raspberry Pi от питания. Рекомендуется использовать AI kit вместе с модулем охлаждения Raspberry Pi Active Cooler для достижения наибольшей производительности. При наличии данного модуля охлаждения сначала установите его. 

Далее установите модуль AI kit  на Raspberry Pi 5, как указано на картинках

Теперь Raspberry Pi AI kit готов к работе

Модуль HAILO можно вставлять и вытаскивать из разъёма M.2 только при выключенном питании!

Проверка работы

Установите зависимости, необходимые для работы ИИ-ускорителя Hailo

sudo apt install hailo-all

После выполнения этой команды будут установлены:

  • Драйвер ядра для ИИ-ускорителя Hailo
  • Программа HailoRT
  • Библиотеки пост обработки Hailo Tappas

Чтобы убедиться, что всё нормально установилось выполните команду

hailortcli fw-control identify

Ответ на эту команду должен выглядет примерно так

Executing on device: 0000:01:00.0
Identifying board
Control Protocol Version: 2
Firmware Version: 4.17.0 (release,app,extended context switch buffer)
Logger Version: 0
Board Name: Hailo-8
Device Architecture: HAILO8L
Serial Number: HLDDLBB234500054
Part Number: HM21LB1C2LAE
Product Name: HAILO-8L AI ACC M.2 B+M KEY MODULE EXT TMP

Дополнительно можно проверить логи ядра командой 

dmesg | grep -i hailo

Ответ должен быть примерно таким

[    3.049657] hailo: Init module. driver version 4.17.0
[    3.051983] hailo 0000:01:00.0: Probing on: 1e60:2864...
[    3.051989] hailo 0000:01:00.0: Probing: Allocate memory for device extension, 11600
[    3.052006] hailo 0000:01:00.0: enabling device (0000 -> 0002)
[    3.052011] hailo 0000:01:00.0: Probing: Device enabled
[    3.052028] hailo 0000:01:00.0: Probing: mapped bar 0 - 000000000d8baaf1 16384
[    3.052034] hailo 0000:01:00.0: Probing: mapped bar 2 - 000000009eeaa33c 4096
[    3.052039] hailo 0000:01:00.0: Probing: mapped bar 4 - 00000000b9b3d17d 16384
[    3.052044] hailo 0000:01:00.0: Probing: Force setting max_desc_page_size to 4096 (recommended value is 16384)
[    3.052052] hailo 0000:01:00.0: Probing: Enabled 64 bit dma
[    3.052055] hailo 0000:01:00.0: Probing: Using userspace allocated vdma buffers
[    3.052059] hailo 0000:01:00.0: Disabling ASPM L0s
[    3.052070] hailo 0000:01:00.0: Successfully disabled ASPM L0s
[    3.221043] hailo 0000:01:00.0: Firmware was loaded successfully
[    3.231845] hailo 0000:01:00.0: Probing: Added board 1e60-2864, /dev/hailo0

Также для тестов потребуется камера (любая версия Camera Module). Подключите камеру к CSI-порту Raspberry Pi и выполните команду

rpicam-hello -t 10s

На экране должно на 10 секунд показаться изображение с камеры. После этого можно приступить к запуску тестовых программ.

Тестовые программы для проверки ИИ-ускорителя

Для работы с камерой Raspberry Pi существует стандартный набор программ rpicam-apps, в котором реализована поддержка специального фреймворка для пост-обработки кадров с камеры.

Полезные ссылки

Коллекция нейросетевых моделей для Hailo