WebNN 개요
WebNN(웹 신경망) API는 웹앱 및 프레임워크가 GPU, CPU 또는 NPU와 같은 용도로 빌드된 AI 가속기를 사용하여 심층 신경망을 가속화할 수 있는 새로운 웹 표준입니다. WebNN API는 Windows의 DirectML API를 활용하여 네이티브 하드웨어 기능에 액세스하고 신경망 모델 실행을 최적화합니다.
앱에서 AI/ML의 사용이 더 많이 사용됨에 따라 WebNN API는 다음과 같은 이점을 제공합니다.
- 성능 최적화 – WebNN은 DirectML을 활용하여 웹앱 및 프레임워크가 복잡하고 플랫폼별 코드 없이도 각 플랫폼 및 디바이스에 대해 사용 가능한 최상의 하드웨어 및 소프트웨어 최적화를 활용할 수 있도록 지원합니다.
- 짧은 대기 시간 - 브라우저 내 유추를 사용하면 원격 서버에 데이터를 보내고 응답을 기다릴 필요 없이 실시간 비디오 분석, 얼굴 감지 및 음성 인식과 같은 로컬 미디어 원본에서 새로운 사용 사례를 사용할 수 있습니다.
- 개인 정보 보호 - 웹앱 및 프레임워크가 처리를 위해 클라우드 서비스에 중요한 개인 정보를 업로드할 필요가 없으므로 사용자 데이터는 디바이스에 유지되고 사용자 개인 정보를 유지합니다.
- 고가용성 - 웹앱 및 프레임워크가 인터넷 연결을 사용할 수 없거나 신뢰할 수 없는 경우에도 신경망 모델을 로컬로 실행할 수 있으므로 오프라인 사례에 대한 초기 자산 캐싱 후 네트워크에 의존하지 않습니다.
- 낮은 서버 비용 - 클라이언트 디바이스에서 컴퓨팅은 필요한 서버가 없음을 의미하며, 이는 웹앱이 클라우드에서 AI/ML 서비스를 실행하는 운영 및 유지 관리 비용을 줄이는 데 도움이 됩니다.
WebNN에서 지원하는 AI/ML 시나리오에는 생성 AI, 사람 감지, 얼굴 감지, 의미 체계 구분, 골격 감지, 스타일 전송, 슈퍼 해상도, 이미지 캡션, 기계 변환 및 노이즈 억제가 포함됩니다.
메모
WebNN API는 아직 진행 중이며 GPU 및 NPU 지원은 미리 보기 상태입니다. WebNN API는 현재 프로덕션 환경에서 사용해서는 안 됩니다.
프레임워크 지원
WebNN은 웹 프레임워크용 백 엔드 API로 설계되었습니다. Windows의 경우 ONNX 런타임 웹사용하는 것이 좋습니다. 이렇게 하면 DirectML 및 ONNX 런타임을 기본적으로 사용하는 데 익숙한 환경을 제공하므로 웹 및 네이티브 애플리케이션에서 ONNX 형식으로 AI를 배포하는 일관된 환경을 가질 수 있습니다.
WebNN 요구 사항
chromium 브라우저의 주소 표시줄에서 about://version 이동하여 브라우저에 대한 정보를 확인할 수 있습니다.
하드웨어 | 웹 브라우저 | Windows 버전 | ONNX 런타임 웹 버전 | 드라이버 버전 |
---|---|---|---|---|
GPU | WebNN에는 Chromium 브라우저*가 필요합니다. 최신 버전의 Microsoft Edge 베타를 사용하세요. | 최소 버전: Windows 11, 버전 21H2. | 최소 버전: 1.18 | 하드웨어용 최신 드라이버를 설치합니다. |
NPU | WebNN에는 Chromium 브라우저*가 필요합니다. 최신 버전의 Microsoft Edge 카나리아를 사용하세요. GPU 차단 목록을 사용하지 않도록 설정하는 방법은 아래 참고를 참조하세요. | 최소 버전: Windows 11, 버전 21H2. | 최소 버전: 1.18 | Intel 드라이버 버전: 32.0.100.2381. 드라이버를 업데이트하는 방법에 대한 단계는 FAQ를 참조하세요. |
WebNN을 웹앱다이어그램
메모
Chromium 기반 브라우저는 현재 WebNN을 지원할 수 있지만 개별 브라우저의 구현 상태에 따라 달라집니다.
메모
NPU 지원의 경우 명령줄에서 다음 플래그를 사용하여 에지를 시작합니다. msedge.exe --disable_webnn_for_npu=0
모델 지원
GPU(미리 보기):
GPU에서 실행하는 경우 WebNN은 현재 다음 모델을 지원합니다.
- 안정적인 확산 터보
- 안정적인 확산 1.5
- 위스퍼 베이스
- MobileNetv2
- 세그먼트 아무것도
- ResNet
- EfficientNet
- SqueezeNet
또한 WebNN은 운영자 지원이 충분한 한 사용자 지정 모델에서도 작동합니다. 여기에서 연산자의 상태를 확인합니다.
NPU (미리 보기):
Intel® 코어™ 울트라 프로세서의 Intel AI Boost NPU를 사용하여 WebNN은 다음을 지원합니다.
- 위스퍼 베이스
- MobileNetV2
- ResNet
- EfficientNet
자주 묻는 질문(FAQ)
WebNN에 문제를 제기하려면 어떻게 해야 하나요?
WebNN과 관련된 일반적인 문제는 WebNN Developer Preview GitHub 문제를 제출하세요.
ONNX 런타임 웹 또는 WebNN 실행 공급자와 관련된 문제는 ONNXRuntime Github으로 가세요.
WebNN 관련 문제를 디버그하려면 어떻게 해야 하나요?
WebNN W3C 사양 일반적으로 DOM 예외를 통해 오류 전파에 대한 정보를 제공합니다. about://gpu 끝에 있는 로그에도 유용한 정보가 있을 수 있습니다. 추가 문제가 있으면 위에 연결된 링크를 통해 문제를 등록해 주세요.
WebNN은 다른 운영 체제를 지원하나요?
현재 WebNN은 Windows 운영 체제를 가장 잘 지원합니다. 다른 운영 체제의 버전이 진행 중입니다.
현재 사용할 수 있는 하드웨어 백 엔드는 무엇인가요? 특정 모델은 특정 하드웨어 백 엔드에서만 지원합니까?
Web Machine Learning | 당신은 WebNN의 운영자 지원에 대한 정보를 WebNN 작업의 구현 상태에서 찾을 수 있습니다.
NPU 지원(미리 보기)용 Intel 드라이버를 업데이트하는 단계는 무엇인가요?
- 업데이트된 드라이버를 Intel 드라이버 웹 사이트에서 찾습니다.
- ZIP 파일의 압축을 풉니다.
- Win+R을 눌러 실행 대화 상자를 엽니다.
- 텍스트 필드에 devmgmt.msc를 입력합니다.
- Enter 키를 누르거나 [확인]을 클릭합니다.
- 디바이스 관리자에서 "신경망 프로세서" 노드를 엽니다.
- 업데이트하려는 드라이버의 NPU를 마우스 오른쪽 단추로 클릭합니다.
- 상황에 맞는 메뉴에서 "드라이버 업데이트"를 선택합니다.
- "내 컴퓨터에서 드라이버 찾아보기"를 선택합니다.
- "내 컴퓨터에서 사용 가능한 드라이버 목록에서 선택하도록 허용"을 선택합니다.
- "디스크 사용" 단추 누르기
- "찾아보기" 단추 누르기
- 앞서 언급한 zip 파일을 압축 해제한 위치로 이동합니다.
- 확인을 누릅니다.