Exportação e Implementação Axelera AI

A Ultralytics faz parceria com a Axelera AI para permitir inferência de alto desempenho e eficiência energética em dispositivos de Edge AI. Exporte e implemente modelos Ultralytics YOLO diretamente para o Metis® AIPU usando o Voyager SDK.

Ecossistema de implementação em edge da Axelera AI para YOLO

A Axelera AI fornece aceleração de hardware dedicada para computer vision na borda, usando uma arquitetura de fluxo de dados proprietária e in-memory computing para entregar até 856 TOPS com baixo consumo de energia.

Selecionando o Hardware Correto

A Axelera AI oferece vários formatos para atender a diferentes restrições de implementação. O gráfico abaixo ajuda a identificar o hardware ideal para a sua implementação Ultralytics YOLO.

graph TD
    A[Start: Select Deployment Target] --> B{Device Type?}
    B -->|Edge Server / Workstation| C{Throughput Needs?}
    B -->|Embedded / Robotics| D{Space Constraints?}
    B -->|Standalone / R&D| E[Dev Kits & Systems]

    C -->|Max Density <br> 30+ Streams| F[**Metis PCIe x4**<br>856 TOPS]
    C -->|Standard PC <br> Low Profile| G[**Metis PCIe x1**<br>214 TOPS]

    D -->|Drones & Handhelds| H[**Metis M.2**<br>2280 M-Key]
    D -->|High Performance Embedded| I[**Metis M.2 MAX**<br>Extended Thermal]

    E -->|ARM-based All-in-One| J[**Metis Compute Board**<br>RK3588 + AIPU]
    E -->|Prototyping| K[**Arduino Portenta x8**<br>Integration Kit]

    click F "https://store.axelera.ai/"
    click G "https://store.axelera.ai/"
    click H "https://store.axelera.ai/"
    click J "https://store.axelera.ai/"

Portfólio de Hardware

A linha de hardware da Axelera é otimizada para executar Ultralytics YOLO26 e versões legadas com alta eficiência de FPS por watt.

Placas Aceleradoras

Essas placas permitem a aceleração de IA em dispositivos host existentes, facilitando brownfield deployments.

ProdutoFator de FormaComputaçãoDesempenho (INT8)Aplicação Alvo
Metis PCIe x4PCIe Gen3 x164x Metis AIPUs856 TOPSvideo analytics de alta densidade, cidades inteligentes
Metis PCIe x1PCIe Gen3 x11x Metis AIPU214 TOPSPCs Industriais, queue management no varejo
Metis M.2M.2 2280 M-Key1x Metis AIPU214 TOPSDrones, robótica, dispositivos médicos portáteis
Metis M.2 MAXM.2 22801x Metis AIPU214 TOPSAmbientes que exigem gerenciamento térmico avançado

Sistemas Integrados

Para soluções prontas para uso, a Axelera faz parceria com fabricantes para fornecer sistemas pré-validados para o Metis AIPU.

  • Metis Compute Board: Um dispositivo de borda autônomo que emparelha o Metis AIPU com um CPU Rockchip RK3588 ARM.
  • Workstations: Torres corporativas da Dell (Precision 3460XE) e Lenovo (ThinkStation P360 Ultra).
  • Industrial PCs: Sistemas robustos da Advantech e Aetina projetados para manufacturing automation.

Tarefas Suportadas

As seguintes tarefas são suportadas em modelos YOLOv8, YOLO11 e YOLO26.

TarefaYOLOv8YOLO11YOLO26
Object Detection
Estimativa de Pose
Segmentation⚠️ Apenas Voyager SDK
Oriented Bounding Boxes
Classification
Nota

A segmentação YOLO26 ainda não é suportada através do comando export do Ultralytics. Usuários que precisam de YOLO26-seg podem implementar via Voyager SDK usando deploy.py, que fornece uma solução alternativa no espaço do usuário. O suporte nativo do compilador será adicionado em uma versão futura.

Instalação

Requisitos de Plataforma

A exportação para o formato Axelera requer:

  • Sistema Operacional: Apenas Linux (Ubuntu 22.04/24.04 recomendado)
  • Hardware: Acelerador Axelera AI (dispositivos Metis)
  • Python: Versões 3.10, 3.11 e 3.12
  • Dependência do sistema: sudo apt install libgl1 (exigido pelo OpenCV, não incluído via pip)

Instalação do Ultralytics

pip install ultralytics

Para instruções detalhadas, consulte nosso guia de instalação do Ultralytics. Se encontrar dificuldades, consulte nosso guia de problemas comuns.

Instalação do Driver Axelera

  1. Adicione a chave do repositório Axelera:

    sudo sh -c "curl -fsSL https://software.axelera.ai/artifactory/api/security/keypair/axelera/public | gpg --dearmor -o /etc/apt/keyrings/axelera.gpg"
  2. Adicione o repositório ao apt:

    Escolha o trecho apropriado abaixo para corresponder ao SO sendo usado.

    # Ubuntu 22.04
    sudo sh -c "echo 'deb [signed-by=/etc/apt/keyrings/axelera.gpg] https://software.axelera.ai/artifactory/axelera-apt-source ubuntu22 main' > /etc/apt/sources.list.d/axelera.list"
    # Ubuntu 24.04
    sudo sh -c "echo 'deb [signed-by=/etc/apt/keyrings/axelera.gpg] https://software.axelera.ai/artifactory/axelera-apt-source ubuntu24 main' > /etc/apt/sources.list.d/axelera.list"
  3. Instale o SDK e carregue o driver:

    sudo apt update
    sudo apt install -y metis-dkms=1.4.16
    sudo modprobe metis
A primeira execução baixa o SDK automaticamente

O primeiro yolo export format=axelera ou yolo predict com um modelo Axelera baixará e instalará automaticamente os pacotes do SDK Axelera. Isso pode levar vários minutos dependendo da velocidade da sua conexão, e nenhum progresso é mostrado durante o download. Para instalar manualmente antes:

pip install axelera-devkit==1.6.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple
pip install axelera-rt==1.6.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple

Exportando Modelos YOLO para Axelera

Exporte seus modelos YOLO treinados usando o comando de exportação padrão da Ultralytics.

Exportar para o Formato Axelera
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export to Axelera format
model.export(format="axelera")  # creates 'yolo26n_axelera_model' directory
A primeira exportação pode falhar após a atualização da dependência

O compilador Axelera requer numpy<2. Se o seu ambiente tiver numpy>=2, o primeiro yolo export irá fazer o downgrade automático, mas a exportação falhará devido ao estado obsoleto do módulo. Simplesmente execute o mesmo comando de exportação novamente — ele terá sucesso na segunda tentativa.

Argumentos de Exportação

ArgumentoTipoPredefiniçãoDescrição
formatstr'axelera'Formato de destino para hardware Axelera Metis AIPU.
imgszint ou tuple640Tamanho da imagem para entrada do modelo.
batchint1Especifica o tamanho da inferência em lote do modelo de exportação ou o número máximo de imagens que o modelo exportado processará simultaneamente no modo predict.
int8boolTrueAtive INT8 quantization para AIPU.
datastr'coco128.yaml'Configuração de dataset para calibração de quantização.
fractionfloat1.0Fração do conjunto de dados para calibração (100-400 imagens recomendadas).
devicestrNoneDispositivo de exportação: GPU (device=0) ou CPU (device=cpu).

Para todas as opções de exportação, consulte a documentação do Modo de Exportação.

Estrutura de Saída

yolo26n_axelera_model/
├── yolo26n.axm              # Axelera model file
└── metadata.yaml            # Model metadata (classes, image size, etc.)

Executando a inferência

Carregue o modelo exportado com a API Ultralytics e execute a inferência, de forma semelhante ao carregamento de modelos ONNX.

Inferência com Modelo Axelera
from ultralytics import YOLO

# Load the exported Axelera model
model = YOLO("yolo26n_axelera_model")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")

# Process results
for r in results:
    print(f"Detected {len(r.boxes)} objects")
    r.show()  # Display results

Benchmarks da Axelera AI

O Metis AIPU maximiza a taxa de transferência enquanto minimiza o consumo de energia.

ModeloFPS (quadros por segundo) da Metis PCIeFPS (quadros por segundo) da Metis M.2
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

Benchmarks baseados em dados da Axelera AI. O FPS real depende do tamanho do modelo, lote e resolução de entrada.

Aplicações do Mundo Real

O Ultralytics YOLO no hardware Axelera permite soluções avançadas de computação de borda:

Fluxo de Trabalho Recomendado

  1. Treine seu modelo usando o Modo Treino da Ultralytics
  2. Exporte para o formato Axelera usando model.export(format="axelera")
  3. Valide a precisão com yolo val para verificar a perda mínima de quantização
  4. Preveja usando yolo predict para validação qualitativa
  5. Implemente em um pipeline de ponta a ponta de alto desempenho sem dependência do PyTorch — veja os exemplos do YOLO no Voyager SDK para pipelines Python componíveis usando axelera-rt

Verificação de Integridade do Dispositivo

Verifique se o seu dispositivo Axelera está funcionando corretamente:

# if axdevice cannot be found, please run at least one inference (see above) to ensure the required packages are installed
axdevice

Para diagnósticos detalhados, consulte a documentação do AxDevice.

Desempenho Máximo

Esta integração utiliza uma configuração de núcleo único para compatibilidade. Para produção que exija o máximo de rendimento, o Axelera Voyager SDK oferece:

  • Utilização multi-core (Metis AIPU quad-core)
  • Pipelines de inferência via streaming
  • Inferência em mosaico (tiled) para câmeras de maior resolução

Veja o model-zoo para benchmarks de FPS ou entre em contato com a Axelera para suporte de produção.

Problemas Conhecidos

Limitações Conhecidas
  • Limitações de energia M.2: Modelos grandes ou extra grandes podem encontrar erros de tempo de execução em aceleradores M.2 devido a restrições de fonte de alimentação.

Para suporte, visite a Comunidade Axelera.

FAQ

Quais versões do YOLO são suportadas na Axelera?

O Voyager SDK suporta a exportação de modelos YOLOv8, YOLO11 e YOLO26. Consulte Tarefas Suportadas para ver a disponibilidade de tarefas por modelo.

Posso implantar modelos treinados personalizados?

Sim. Qualquer modelo treinado usando o Modo de Treinamento da Ultralytics pode ser exportado para o formato Axelera, desde que utilize camadas e operações suportadas.

Como a quantização INT8 afeta a precisão?

O Voyager SDK da Axelera quantiza automaticamente os modelos para a arquitetura AIPU de precisão mista. Para a maioria das tarefas de detecção de objetos, os ganhos de desempenho (maior FPS, menor consumo de energia) superam significativamente o impacto mínimo no mAP. A quantização leva de segundos a várias horas, dependendo do tamanho do modelo. Execute yolo val após a exportação para verificar a precisão.

Quantas imagens de calibração devo usar?

Recomendamos de 100 a 400 imagens. Mais de 400 não oferece benefício adicional e aumenta o tempo de quantização. Experimente com 100, 200 e 400 imagens para encontrar o equilíbrio ideal.

Onde posso encontrar o Voyager SDK?

O SDK, drivers e ferramentas de compilador estão disponíveis através do Portal do Desenvolvedor Axelera.

Comentários