magika 介绍
Magika 是 Google 推出的一个新型工具,使用 AI 用来文件类型的检测,采用了高度优化的 Keras 模型,具有较高的准确性、模型较小等优点,支持100多种文件类型,准确性高达 99%,推测每个文件的时间大约 5 ms。
Magika 在 Google 内部已被大量使用,用于 Gmail,网络硬盘等应用,检测各种文件,提高了用户的安全性。
Magika 提供了 Pyhton 命令行、 Pyhton API和 js 包等多种方式使用,还支持批量处理提高推理速度。
安装
可以使用 pip 命令进行安装: pip install magika
如果没有 Python 环境,还可以 Docker 中进行使用:
git clone https://github.com/google/magika
cd magika/
docker build -t magika .
docker run -it --rm -v $(pwd):/magika magika -r /magika/tests_data
如果 Docker 环境也没有,那你可以使用Google 部署的网站进行试用 https://google.github.io/magika/。
运行
运行仓库提供的测试数据(magika -r /magika/tests_data
):
可以看到文件的类型很精准的被识别出来了。
接下来做个试验,将一个 png 的图片的后缀修改为jpg ,看看还能否正确识别,可以看到还是成功精准识别了。
小结
本文介绍了一种使用 AI 进行文件类型检测的工具 magika,相较于其它类型检测工具,magika 依托于数据集和模型的精度,可以大大提高识别文件类型的精度和速度。
参考
- https://opensource.googleblog.com/2024/02/magika-ai-powered-fast-and-efficient-file-type-identification.html
- https://github.com/google/magika
- https://github.com/google/magika/blob/main/js/README.md
- https://github.com/google/magika/blob/main/docs/command_line_interface.md
- https://google.github.io/magika/