Repolode
fastmachinelearning

fastmachinelearning/hls4ml

Pacote Python que converte redes neurais de Keras, PyTorch e ONNX em código HLS para executar inferência de ML em FPGAs.

Estrelas
2,200
Forks
615
Issues abertas
62
Último commit
anteontem

O que é?

hls4ml cria firmware para FPGAs a partir de modelos de machine learning, traduzindo-os em código de high-level synthesis (HLS). Os usuários começam com um modelo treinado em um framework comum, geram um projeto HLS usando um arquivo de configuração e, em seguida, compilam o projeto com uma toolchain compatível de um fornecedor para produzir o hardware.

O projeto é voltado à inferência de latência ultrabaixa. Suas origens estão na física de altas energias, incluindo sistemas de trigger L1 do Large Hadron Collider, e também é usado em áreas como controle de computação quântica, ciclos de feedback de fusão, monitoramento ambiental por satélite e processamento de sinais biomédicos.

Além do Vivado HLS, o pacote oferece suporte a Vitis HLS, Intel HLS, Catapult HLS e Altera HLS IP Gen como backends de build. Ele pode ser instalado pelo PyPI ou conda-forge, com um extra opcional para profiling.

Recursos principais

  • 01Converte modelos de Keras, PyTorch e ONNX em projetos HLS.
  • 02Oferece suporte a vários backends HLS, incluindo Vivado, Vitis, Intel, Catapult e Altera.
  • 03Permite configurar o design gerado por meio de um arquivo de configuração.
  • 04Oferece uma etapa de build que sintetiza o projeto e um leitor de relatórios para consultar os resultados.
  • 05Pode ser instalado via pip ou conda-forge.

Casos de uso

  • Implantar uma rede neural para tomar decisões de trigger em tempo real em hardware FPGA.
  • Executar modelos de controle ou processamento de sinais de baixa latência em placas FPGA embarcadas.
  • Avaliar como um modelo treinado será mapeado para os recursos da FPGA antes de definir o design.

Início rápido

  1. 1

    Instale o hls4ml pelo PyPI

    pip install hls4ml
  2. 2

    Obtenha um modelo Keras de exemplo e sua configuração

    import hls4ml
  3. 3

    Converta o modelo em um projeto HLS

    hls_model = hls4ml.converters.keras_v2_to_hls(config)
  4. 4

    Compile o projeto com o Vivado HLS ou outra ferramenta HLS compatível

    hls_model.build()

Antes de usar

  • A compilação do firmware gerado requer uma toolchain HLS separada, como Vivado HLS, Vitis HLS ou Intel HLS.
  • É voltado apenas para inferência em FPGA, não para treinamento ou execução de modelos de propósito geral.

Tópicos

Perguntas frequentes

O que é hls4ml?
Pacote Python que converte redes neurais de Keras, PyTorch e ONNX em código HLS para executar inferência de ML em FPGAs. hls4ml cria firmware para FPGAs a partir de modelos de machine learning, traduzindo-os em código de high-level synthesis (HLS). Os usuários começam com um modelo treinado em um framework comum, geram um projeto HLS usando um arquivo de configuração e, em seguida, compilam o projeto com uma toolchain compatível de um fornecedor para produzir o hardware.
hls4ml é gratuito? Qual é a licença?
hls4ml é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
hls4ml ainda é mantido?
Manutenção ativa. O último commit de hls4ml foi em 4 de nov. de 2026.
Para que posso usar hls4ml?
Implantar uma rede neural para tomar decisões de trigger em tempo real em hardware FPGA. Executar modelos de controle ou processamento de sinais de baixa latência em placas FPGA embarcadas. Avaliar como um modelo treinado será mapeado para os recursos da FPGA antes de definir o design.
Como instalar hls4ml?
Instale o hls4ml pelo PyPI: pip install hls4ml Obtenha um modelo Keras de exemplo e sua configuração: import hls4ml Converta o modelo em um projeto HLS: hls_model = hls4ml.converters.keras_v2_to_hls(config) Compile o projeto com o Vivado HLS ou outra ferramenta HLS compatível: hls_model.build()
Onde consigo hls4ml?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/fastmachinelearning/hls4ml

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados