웹 개발에서는 서버에 파일을 업로드하기 전에 파일 형식을 감지하는 것이 중요합니다. 이 단계는 서버와 사용자의 보안을 보장하고 악성 파일을 차단할 뿐만 아니라 업로드된 파일이 완전하고 기대치를 충족하는지 확인하여 데이터 규정 준수를 향상시킬 수 있습니다. 동시에 사용자에게 적시에 피드백과 지침을 제공함으로써 사용자 경험을 개선하고 불필요한 혼란을 피할 수도 있습니다.
아바오 형제님은 앞서 "JavaScript는 파일 형식을 어떻게 감지하나요?"라고 소개한 적이 있습니다. 이제 AI 시대에 접어들었으니 시대에 발맞춰야 합니다. 다음으로 Abao 형제는 Google의 오픈 소스 Magika[1] 도구를 사용하여 정확한 파일 형식 감지를 달성하는 방법을 소개합니다.
Pictures
Magika+는 최신 딥 러닝 기술을 사용하여 정확한 탐지를 제공하는 새로운 인공 지능 파일 분류 탐지 도구입니다. 무게가 약 1MB에 불과하고 단일 CPU에서 실행되는 경우에도 밀리초 내에 정확한 파일 식별이 가능한 고도로 최적화된 맞춤형 Keras 모델을 사용합니다.
백만 개 이상의 파일과 100개 이상의 콘텐츠 유형(바이너리 및 텍스트 파일 형식 포함)에 대한 평가에서 Magika는 99% 이상의 정밀도와 재현율을 달성했습니다. Magika는 Gmail, 드라이브, 세이프 브라우징 파일을 적절한 보안 및 콘텐츠 정책 스캐너로 라우팅하여 Google 사용자를 안전하게 보호하기 위해 대규모로 사용됩니다.
Pictures
성능 측면에서 Magika는 AI 모델과 대규모 교육 데이터 세트 덕분에 100개 이상의 파일 형식을 사용하는 100만 개 파일 벤치마크에서 평가할 때 다른 최신 애플리케이션보다 성능이 뛰어납니다. 약 20% 더 높습니다. 파일 유형별로 분류하면 다른 도구에서 처리하는 데 문제가 있을 수 있는 코드 파일 및 구성 파일을 포함하여 텍스트 파일의 성능이 크게 향상되었습니다.
Pictures
Magika는 브라우저와 Node.js 환경을 지원하며, 웹 데모[2] 웹사이트를 방문하면 해당 기능을 체험해 볼 수 있습니다.
Pictures
npm install magikaorpnpm add magika
import { Magika } from "magika";const file = new File(["# Hello I am a markdown file"], "hello.md");const fileBytes = new Uint8Array(await file.arrayBuffer());const magika = new Magika();await magika.load();const prediction = await magika.identifyBytes(fileBytes);console.log(prediction);
import { readFile } from "fs/promises";import { MagikaNode as Magika } from "magika";const data = await readFile("some file");const magika = new Magika();await magika.load();const prediction = await magika.identifyBytes(data);console.log(prediction);
Mag 정보 ika 의 관련 콘텐츠인 경우 Magika에 대해 더 자세히 알고 싶으시면 Magika: AI로 구동되는 빠르고 효율적인 파일 형식 식별[3] 기사를 계속 읽어보세요.
[1]Magika: https://github.com/google/magika
[2]웹 데모: https://google.github.io/magika/
[3]Magika: AI 기반 빠르고 효율적인 파일 형식 식별: https://opensource.googleblog.com/2024/02/magika-ai-powered-fast-and-efficient-file-type-identification.html
위 내용은 1MB의 마법같은 AI가 수백만 개의 파일을 99% 정확도로 감지합니다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!