Visão geral do WebNN
A API de Rede Neural da Web (WebNN) é um padrão emergente da Web que permite que aplicativos e estruturas da Web acelerem redes neurais profundas com GPUs, CPUs ou aceleradores de IA criados para fins específicos, como NPUs. A API WebNN aproveita a API DirectML no Windows para acessar os recursos de hardware nativo 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 oferece os seguintes benefícios:
- Otimizações de desempenho – Ao utilizar o DirectML, o WebNN ajuda a permitir que aplicativos e estruturas da Web aproveitem as melhores otimizações de hardware e software disponíveis para cada plataforma e dispositivo, sem exigir código complexo e específico da plataforma.
- de baixa latência - A inferência no navegador possibilita novos casos de uso com fontes de mídia locais, como análise de vídeo em tempo real, deteção facial e reconhecimento de fala, sem a necessidade de enviar dados para servidores remotos e aguardar respostas.
- de Preservação da Privacidade - Os dados do usuário permanecem no dispositivo e preservam a privacidade do usuário, já que os aplicativos e estruturas da Web não precisam carregar informações confidenciais ou pessoais para serviços de nuvem para processamento.
- de alta disponibilidade - Sem dependência da rede após o armazenamento inicial de ativos para casos offline, pois aplicativos e frameworks web podem executar modelos de rede neural localmente, mesmo quando a conexão com a Internet não está disponível ou não é confiável.
- Baixo custo de 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 operacionais e de manutenção da execução de serviços de IA/ML na nuvem.
Os cenários de IA/ML suportados pelo WebNN incluem IA generativa, deteção de pessoas, deteção de rosto, segmentação semântica, deteção de esqueleto, transferência de estilo, super resolução, legendas de imagem, tradução automática e supressão de ruído.
Observação
A API WebNN ainda está em desenvolvimento, com suporte a GPU e NPU em estado de pré-visualização. A API WebNN não deve ser usada atualmente em um ambiente de produção.
Apoio ao quadro
WebNN é projetado como uma API de back-end para frameworks web. Para Windows, recomendamos o uso do ONNX Runtime Web. Isso proporciona uma experiência familiar ao uso do DirectML e do ONNX Runtime nativamente para que você possa ter uma experiência consistente de implantação de IA no formato ONNX em aplicativos Web e nativos.
Requisitos do WebNN
Pode verificar as informações sobre o seu navegador navegando até about://version na barra de endereço do navegador chromium.
Equipamento | Navegadores da Web | Versão do Windows | Versão Web do ONNX Runtime | Versão do driver |
---|---|---|---|---|
GPU | O WebNN requer um navegador 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 o seu hardware. |
NPU | O WebNN requer um navegador Chromium*. Use a versão mais recente do Microsoft Edge Canary. Consulte a nota abaixo para saber como desativar a lista de bloqueio da GPU. | Versão mínima: Windows 11, versão 21H2. | Versão mínima: 1.18 | Versão do driver Intel: 32.0.100.2381. Consulte as Perguntas frequentes para obter etapas sobre como atualizar o driver. |
Observação
Atualmente, os navegadores baseados no Chromium podem suportar WebNN, mas dependerão do status de implementação de cada navegador.
Observação
Para suporte a NPU, inicie o Edge a partir da linha de comando com o seguinte parâmetro: msedge.exe --disable_webnn_for_npu=0
Suporte ao modelo
GPU (Pré-visualização):
Quando executado em GPUs, WebNN atualmente suporta os seguintes modelos:
- Turbo de Difusão Estável
- Difusão Estável 1,5
- Whisper-base
- MobileNetv2
- Segmentar qualquer coisa
- ResNet
- EfficientNet
- SqueezeNet
O WebNN também funciona com modelos personalizados, desde que o suporte do operador seja suficiente. Verifique o estado dos operadores aqui.
NPU (Prévia):
Nos processadores Core™ Ultra da Intel® com Intel® AI Boost NPU, o WebNN suporta:
Perguntas Frequentes
Como faço para registrar um problema com o WebNN?
Para problemas gerais com o WebNN, registre um problema em nosso WebNN Developer Preview GitHub
Para problemas com o ONNX Runtime Web ou o WebNN Execution Provider, vá para o ONNXRuntime Github.
Como depurar problemas com o WebNN?
O WebNN W3C Spec tem informações sobre propagação de erros, normalmente por meio de exceções DOM. O log no final de about://gpu também pode ter informações úteis. Para problemas adicionais, por favor, registre um problema como o link acima.
O WebNN suporta outros sistemas operativos?
Atualmente, WebNN suporta melhor o sistema operacional Windows. Versões para outros sistemas operacionais estão em andamento.
Quais back-ends de hardware estão disponíveis no momento? Alguns modelos são suportados apenas com back-ends de hardware específicos?
Você pode encontrar informações sobre o suporte ao operador no WebNN em Status de implementação das operações WebNN | Web Machine Learning.
Quais são as etapas para atualizar o driver Intel para suporte NPU (Preview)?
- Encontre o driver atualizado no site de drivers da Intel .
- Descompacte o arquivo ZIP.
- Pressione Win+R para abrir a caixa de diálogo Executar.
- Digite devmgmt.msc no campo de texto.
- Pressione Enter ou clique em OK.
- No Gerenciador de dispositivos, abra o nó "Processadores neurais"
- Clique com o botão direito do mouse no driver NPU que você deseja atualizar.
- Selecione "Atualizar driver" no menu de contexto
- Selecione "Procurar drivers no meu computador"
- Selecione "Deixe-me escolher a partir de uma lista de drivers disponíveis no meu computador"
- Pressione o botão "Tenho disco"
- Pressione o botão "Procurar"
- Navegue até o local onde você descompactou o arquivo zip acima mencionado.
- Pressione OK.