Compartilhar via


Visão geral da WebNN

A API WebNN (Rede Neural da Web) é um padrão emergente da Web que permite que estruturas e aplicativos Web acelerem redes neurais profundas com GPUs, CPUs ou aceleradores de IA criados para esse fim, como NPUs. A API WebNN aproveita a API DirectML no Windows para acessar os recursos de hardware nativos e otimizar a execução de modelos de rede neural.

À medida que o uso de IA/ML em aplicativos se torna mais popular, a API WebNN proporciona os seguintes benefícios:

  • Otimizações de desempenho – ao utilizar o DirectML, a WebNN permite que estruturas e aplicativos Web usufruam das melhores otimizações de hardware e software disponíveis para cada plataforma e dispositivo, sem exigir código complexo e específico da plataforma.
  • Baixa latência – a inferência no browser permite novos casos de uso com fontes de mídia locais, como análise de vídeo em tempo real, detecção facial e reconhecimento de fala, sem a necessidade de enviar dados para servidores de repositório remoto e aguardar respostas.
  • Preservação da privacidade – os dados do usuário permanecem no dispositivo e preservam a privacidade do usuário, pois as estruturas e os aplicativos Web não precisam fazer upload de informações pessoais ou confidenciais para serviços de nuvem para processamento.
  • Alta disponibilidade – não depende da rede após o cache inicial de ativos para casos offline, pois aplicativos Web e estruturas podem executar modelos de rede neural localmente, mesmo quando a conexão de Internet não está disponível ou não é confiável.
  • Baixo custo do servidor – a computação em dispositivos cliente significa que não são necessários servidores, o que ajuda os aplicativos Web a reduzir os custos de operação e de manutenção relacionados à execução de serviços de IA/ML na nuvem.

A IA/ML compatível com WebNN inclui IA generativa, detecção de pessoas, detecção facial, segmentação semântica, detecção de esqueleto, transferência de estilo, superrresolução, legendagem de imagens, tradução automática e supressão de ruído.

Observação

A API WebNN ainda está em andamento, com suporte a GPU em um estado de preview e suporte a NPU em breve. A API WebNN não deve ser usada em um ambiente de produção no momento.

Suporte para estrutura

A WebNN foi projetada como uma API de back-end para frameworks da Web. Para Windows, recomendamos o uso do ONNX Runtime Web. Isso proporciona uma experiência familiar ao uso nativo do DirectML e do ONNX Runtime para que você possa ter uma experiência consistente na implantação de IA no formato ONNX em aplicativos Web e nativos.

Requisitos da WebNN

Você pode verificar as informações sobre seu browser indo para about://version na barra de endereço do browser Chromium.

Hardware Browsers da Web Versão do Windows Versão Web do ONNX Runtime Versão do driver
GPU A WebNN requer um browser Chromium*. Use a versão mais recente do Microsoft Edge Beta. Versão mínima: Windows 11, versão 21H2. Versão mínima: 1.18 Instale o driver mais recente para seu hardware.

Diagrama da estrutura por trás da integração da WebNN ao seu aplicativo Web

Observação

Atualmente, os browsers baseados no Chromium podem oferecer suporte à WebNN, mas isso vai depender do status de implementação do browser individual.

Suporte a modelo

GPU (Preview):

Quando executada em GPUs, a WebNN atualmente é compatível com os seguintes modelos:

A WebNN também funciona com modelos personalizados, desde que o suporte do operador seja suficiente. Verifique o status dos operadores aqui.

Perguntas frequentes

Como faço para registrar um problema com a WebNN?

Para problemas gerais com a WebNN, registre um problema em nosso GitHub de Preview do desenvolvedor da WebNN

Para problemas com a ONNX Runtime Web ou o Provedor de execução da WebNN, vá para o Github do ONNXRuntime.

Como depurar problemas com a WebNN?

A Especificação W3C da WebNN tem informações sobre propagação de erros, normalmente por meio de exceções DOM. O registro no final de about://gpu também pode ter informações úteis. Para outras perguntas, registre um problema conforme o link acima.

A WebNN é compatível com outros sistemas operacionais?

No momento, a WebNN é mais compatível com o sistema operacional Windows. Uma versão para sistemas operacionais Mac está em andamento.

Quais back-ends de hardware estão disponíveis no momento? Há suporte para determinados modelos apenas com back-ends de hardware específicos?

Você pode encontrar informações sobre o suporte do operador na WebNN em Status de implementação das operações da WebNN | Aprendizado de máquina da Web.