mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
The arm64 transcription bundle baked huggingface_hub 1.22.0 while inpaint-hq's transformers needs hub <1.0; last-writer-wins in the shared venv made the hq install fail on arm64. Constrain hub at build time, pin it in transcription's package list, and lock both invariants with manifest unit tests. The arm64 transcription bundle still needs a rebuild and republish to ship the fix. Fixes #669.
586 lines
22 KiB
JSON
586 lines
22 KiB
JSON
{
|
|
"manifestVersion": 2,
|
|
"imageVersion": "2.0.0",
|
|
"pythonVersion": {
|
|
"amd64": "3.12",
|
|
"arm64": "3.11"
|
|
},
|
|
"basePackages": [
|
|
"numpy==1.26.4",
|
|
"Pillow==12.3.0",
|
|
"opencv-python-headless==4.10.0.84",
|
|
"huggingface-hub[hf_xet,hf_transfer]==0.36.2"
|
|
],
|
|
"constraints": [
|
|
"numpy==1.26.4",
|
|
"scipy==1.12.0",
|
|
"scikit-learn==1.4.2",
|
|
"scikit-image==0.24.0",
|
|
"pandas==2.2.2",
|
|
"huggingface-hub==0.36.2"
|
|
],
|
|
"bundleRepo": "deepsafe/feature-bundles",
|
|
"bundles": {
|
|
"background-removal": {
|
|
"name": "Background Removal",
|
|
"description": "Remove image backgrounds with AI",
|
|
"estimatedSize": "4-5 GB",
|
|
"archives": {
|
|
"amd64-gpu": {
|
|
"file": "v2.0.0/background-removal-amd64-gpu.tar.gz",
|
|
"sha256": "a1dfbdd5862fd32c7719ca79b0c7e4b76a327330a5991ddad98a2761abca10cb",
|
|
"compressedSize": 4808242472,
|
|
"extractedSize": 0
|
|
},
|
|
"arm64-cpu": {
|
|
"file": "v2.0.0/background-removal-arm64-cpu.tar.gz",
|
|
"sha256": "cbb570b81bfd740dd05e265dd8c93ade53a9f41fdd30cc8b3fbc47a8daa824af",
|
|
"compressedSize": 4631430295,
|
|
"extractedSize": 0
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": ["rembg==2.0.62"],
|
|
"amd64": ["onnxruntime-gpu==1.20.1", "mediapipe>=0.10.21"],
|
|
"arm64": ["onnxruntime==1.20.1", "mediapipe>=0.10.18"]
|
|
},
|
|
"pipFlags": {},
|
|
"postInstall": [],
|
|
"models": [
|
|
{
|
|
"id": "rembg-u2net",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["u2net"],
|
|
"sha256": "8d10d2f3bb75ae3b6d527c77944fc5e7dcd94b29809d47a739a7a728a912b491"
|
|
},
|
|
{
|
|
"id": "rembg-isnet-general-use",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["isnet-general-use"],
|
|
"sha256": "60920e99c45464f2ba57bee2ad08c919a52bbf852739e96947fbb4358c0d964a"
|
|
},
|
|
{
|
|
"id": "rembg-bria-rmbg",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["bria-rmbg"],
|
|
"sha256": "5b486f08200f513f460da46dd701db5fbb47d79b4be4b708a19444bcd4e79958"
|
|
},
|
|
{
|
|
"id": "rembg-birefnet-general-lite",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["birefnet-general-lite"],
|
|
"sha256": "5600024376f572a557870a5eb0afb1e5961636bef4e1e22132025467d0f03333"
|
|
},
|
|
{
|
|
"id": "rembg-birefnet-portrait",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["birefnet-portrait"],
|
|
"sha256": "1ba1c8ff5a7bbfadc8d8d13fb11d7be793f91f23d9d466549e37a854f6668f99"
|
|
},
|
|
{
|
|
"id": "rembg-birefnet-general",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["birefnet-general"],
|
|
"sha256": "58f621f00f5d756097615970a88a791584600dcf7c45b18a0a6267535a1ebd3c"
|
|
},
|
|
{
|
|
"id": "rembg-birefnet-matting",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["birefnet-matting"],
|
|
"sha256": "6065d27c615ea27308f5b88598dd8db116eb07436c7a323ca40d13b2866c309e"
|
|
},
|
|
{
|
|
"id": "rembg-birefnet-hr-matting",
|
|
"downloadFn": "rembg_session",
|
|
"args": ["birefnet-hr-matting"],
|
|
"sha256": "45b7d92ce0e2e75e1c8a564a9e84c87ac9da7f4315d2deeef3674864e809aef3"
|
|
}
|
|
],
|
|
"smokeImports": ["rembg", "onnxruntime"],
|
|
"enablesTools": [
|
|
"remove-background",
|
|
"remove-gif-background",
|
|
"passport-photo",
|
|
"transparency-fixer",
|
|
"background-replace",
|
|
"blur-background"
|
|
]
|
|
},
|
|
"face-detection": {
|
|
"name": "Face Detection",
|
|
"description": "Detect and blur faces, fix red-eye, smart crop",
|
|
"estimatedSize": "200-300 MB",
|
|
"archives": {
|
|
"amd64-gpu": {
|
|
"file": "v2.0.0/face-detection-amd64-gpu.tar.gz",
|
|
"sha256": "0ee28b86dac88c60e005604ba0595746f455ec97f08d0c8307ba9b57e131bc7f",
|
|
"compressedSize": 75358868,
|
|
"extractedSize": 209838080
|
|
},
|
|
"arm64-cpu": {
|
|
"file": "v2.0.0/face-detection-arm64-cpu.tar.gz",
|
|
"sha256": "8ad922514aba1721de154d370f9335f78c5ce5aceade5b19515e0192d4367909",
|
|
"compressedSize": 222878753,
|
|
"extractedSize": 704276480
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": [],
|
|
"amd64": ["mediapipe>=0.10.21"],
|
|
"arm64": ["mediapipe>=0.10.18"]
|
|
},
|
|
"pipFlags": {},
|
|
"postInstall": [],
|
|
"models": [
|
|
{
|
|
"id": "mediapipe-face-detector",
|
|
"url": "https://storage.googleapis.com/mediapipe-models/face_detector/blaze_face_short_range/float16/latest/blaze_face_short_range.tflite",
|
|
"sha256": "b4578f35940bf5a1a655214a1cce5cab13eba73c1297cd78e1a04c2380b0152f",
|
|
"path": "mediapipe/blaze_face_short_range.tflite",
|
|
"minSize": 100000
|
|
},
|
|
{
|
|
"id": "mediapipe-face-landmarker",
|
|
"url": "https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/latest/face_landmarker.task",
|
|
"sha256": "64184e229b263107bc2b804c6625db1341ff2bb731874b0bcc2fe6544e0bc9ff",
|
|
"path": "mediapipe/face_landmarker.task",
|
|
"minSize": 1000000
|
|
}
|
|
],
|
|
"smokeImports": ["mediapipe"],
|
|
"enablesTools": ["blur-faces", "red-eye-removal", "smart-crop"]
|
|
},
|
|
"object-eraser-colorize": {
|
|
"name": "Object Eraser & Colorize",
|
|
"description": "Erase objects from photos and colorize B&W images",
|
|
"estimatedSize": "1-2 GB",
|
|
"archives": {
|
|
"amd64-gpu": {
|
|
"file": "v2.0.0/object-eraser-colorize-amd64-gpu.tar.gz",
|
|
"sha256": "a3f6cd2eca9e5dd907497d0d58ca5f6532887bb748e4062de0f4fb9815782c31",
|
|
"compressedSize": 1545472964,
|
|
"extractedSize": 2249379840
|
|
},
|
|
"arm64-cpu": {
|
|
"file": "v2.0.0/object-eraser-colorize-arm64-cpu.tar.gz",
|
|
"sha256": "252c0b4fc4ca6f807b2b93038a98469323d906d5c4d75df88e9f47497d30e67c",
|
|
"compressedSize": 1263259968,
|
|
"extractedSize": 1464884023
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": ["huggingface-hub[hf_xet]==0.36.2"],
|
|
"amd64": ["onnxruntime-gpu==1.20.1"],
|
|
"arm64": ["onnxruntime==1.20.1", "protobuf>=4.25.3,<5"]
|
|
},
|
|
"pipFlags": {},
|
|
"postInstall": [],
|
|
"models": [
|
|
{
|
|
"id": "lama-onnx",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["Carve/LaMa-ONNX", "lama"],
|
|
"revision": "c3c0c9e468934d62e79c329e35d82dd09ff8c444",
|
|
"file": "lama_fp32.onnx",
|
|
"path": "lama/lama_fp32.onnx",
|
|
"minSize": 100000000
|
|
},
|
|
{
|
|
"id": "ddcolor-onnx",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["facefusion/models-3.0.0", "ddcolor"],
|
|
"revision": "728b9659bd9691bf32cbf7f61af478d94b7ba81e",
|
|
"file": "ddcolor.onnx",
|
|
"path": "ddcolor/ddcolor.onnx",
|
|
"minSize": 50000000
|
|
},
|
|
{
|
|
"id": "opencv-colorize-prototxt",
|
|
"url": "https://raw.githubusercontent.com/richzhang/colorization/caffe/colorization/models/colorization_deploy_v2.prototxt",
|
|
"sha256": "d16418cef8df4ccd703a55ae0ef3960861d5010418f77c90d0a47689998a7169",
|
|
"path": "colorize-opencv/colorization_deploy_v2.prototxt",
|
|
"minSize": 0
|
|
},
|
|
{
|
|
"id": "opencv-colorize-caffemodel",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["BilalSardar/Black-N-White-To-Color", "colorize-opencv"],
|
|
"revision": "41c04215906bbd3d8e2a09c07b3e76f42f0cd65e",
|
|
"file": "colorization_release_v2.caffemodel",
|
|
"path": "colorize-opencv/colorization_release_v2.caffemodel",
|
|
"minSize": 100000000,
|
|
"repoType": "space"
|
|
},
|
|
{
|
|
"id": "opencv-colorize-points",
|
|
"url": "https://raw.githubusercontent.com/richzhang/colorization/caffe/colorization/resources/pts_in_hull.npy",
|
|
"sha256": "b5dec01315c34f43f1c8c089e84c45ae35d1838d8e77ed0e7ca930f79ffa450e",
|
|
"path": "colorize-opencv/pts_in_hull.npy",
|
|
"minSize": 0
|
|
}
|
|
],
|
|
"smokeImports": ["onnxruntime"],
|
|
"enablesTools": ["erase-object", "colorize", "ai-canvas-expand"]
|
|
},
|
|
"inpaint-hq": {
|
|
"name": "High-Quality Inpainting",
|
|
"description": "Diffusion-based object removal for large objects and detailed textures",
|
|
"estimatedSize": "5-7 GB",
|
|
"archives": {
|
|
"amd64-gpu": {
|
|
"file": "v2.0.0/inpaint-hq-amd64-gpu.tar.gz",
|
|
"sha256": "da65c2b7e678b50815c7c2d8ae4594ad7bbf4c1e84682bfc91b46948cdff71de",
|
|
"compressedSize": 7283076233,
|
|
"extractedSize": 10745029298
|
|
},
|
|
"arm64-cpu": {
|
|
"file": "v2.0.0/inpaint-hq-arm64-cpu.tar.gz",
|
|
"sha256": "b854b101a6190dde94d9d0039129941122c62df7c9a6429d425231cf4fa4630f",
|
|
"compressedSize": 5130985609,
|
|
"extractedSize": 7159491153
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": [
|
|
"diffusers==0.31.0",
|
|
"transformers==4.46.3",
|
|
"accelerate==1.2.1",
|
|
"safetensors==0.4.5",
|
|
"huggingface-hub[hf_xet]==0.36.2"
|
|
],
|
|
"amd64": [
|
|
"torch==2.7.0+cu126 torchvision==0.22.0+cu126 --index-url https://download.pytorch.org/whl/cu126"
|
|
],
|
|
"arm64": [
|
|
"torch==2.7.0 torchvision==0.22.0 --index-url https://download.pytorch.org/whl/cpu"
|
|
]
|
|
},
|
|
"pipFlags": {},
|
|
"postInstall": [],
|
|
"models": [
|
|
{
|
|
"id": "sd15-inpainting",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["stable-diffusion-v1-5/stable-diffusion-inpainting", "sd15-inpainting"],
|
|
"revision": "8a4288a76071f7280aedbdb3253bdb9e9d5d84bb",
|
|
"allowPatterns": ["*.json", "*.txt", "tokenizer/*", "*.fp16.safetensors"],
|
|
"path": "sd15-inpainting/unet/diffusion_pytorch_model.fp16.safetensors",
|
|
"minSize": 1000000000
|
|
}
|
|
],
|
|
"smokeImports": ["diffusers", "torch", "transformers"],
|
|
"enablesTools": ["erase-object"]
|
|
},
|
|
"upscale-enhance": {
|
|
"name": "Upscale & Enhance",
|
|
"description": "AI upscaling, face enhancement, and noise removal",
|
|
"estimatedSize": "4-5 GB",
|
|
"archives": {
|
|
"amd64-gpu": {
|
|
"file": "v2.0.0/upscale-enhance-amd64-gpu.tar.gz",
|
|
"sha256": "b725a0b18a8295cb87e15f79b31c294f1de98101dedd76389728300a8d377a15",
|
|
"compressedSize": 5358573124,
|
|
"extractedSize": 8406943960
|
|
},
|
|
"arm64-cpu": {
|
|
"file": "v2.0.0/upscale-enhance-arm64-cpu.tar.gz",
|
|
"sha256": "bfb25ff1468d426ba6a125632beabece11e1afebfa6a3adefc64f7b81d7bf469",
|
|
"compressedSize": 2319501276,
|
|
"extractedSize": 3661453942
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": [
|
|
"codeformer-pip==0.0.4",
|
|
"huggingface-hub[hf_xet]==0.36.2",
|
|
"einops",
|
|
"setuptools<75"
|
|
],
|
|
"amd64": [
|
|
"torch==2.7.0+cu126 torchvision==0.22.0+cu126 --index-url https://download.pytorch.org/whl/cu126",
|
|
"lpips",
|
|
"basicsr==1.4.2",
|
|
"realesrgan==0.3.0",
|
|
"mediapipe>=0.10.21"
|
|
],
|
|
"arm64": [
|
|
"torch==2.7.0 torchvision==0.22.0 --index-url https://download.pytorch.org/whl/cpu",
|
|
"lpips",
|
|
"basicsr==1.4.2",
|
|
"realesrgan==0.3.0",
|
|
"mediapipe>=0.10.18"
|
|
]
|
|
},
|
|
"pipFlags": {
|
|
"codeformer-pip==0.0.4": "--no-deps",
|
|
"basicsr==1.4.2": "--no-build-isolation"
|
|
},
|
|
"postInstall": ["numpy==1.26.4"],
|
|
"models": [
|
|
{
|
|
"id": "realesrgan-x4plus",
|
|
"url": "https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth",
|
|
"sha256": "4fa0d38905f75ac06eb49a7951b426670021be3018265fd191d2125df9d682f1",
|
|
"path": "realesrgan/RealESRGAN_x4plus.pth",
|
|
"minSize": 60000000
|
|
},
|
|
{
|
|
"id": "realesrgan-x2plus",
|
|
"url": "https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.1/RealESRGAN_x2plus.pth",
|
|
"sha256": "49fafd45f8fd7aa8d31ab2a22d14d91b536c34494a5cfe31eb5d89c2fa266abb",
|
|
"path": "realesrgan/RealESRGAN_x2plus.pth",
|
|
"minSize": 60000000
|
|
},
|
|
{
|
|
"id": "gfpgan-v1.3",
|
|
"url": "https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.3.pth",
|
|
"sha256": "c953a88f2727c85c3d9ae72e2bd4846bbaf59fe6972ad94130e23e7017524a70",
|
|
"path": "gfpgan/GFPGANv1.3.pth",
|
|
"minSize": 300000000
|
|
},
|
|
{
|
|
"id": "codeformer-pth",
|
|
"url": "https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/codeformer.pth",
|
|
"sha256": "1009e537e0c2a07d4cabce6355f53cb66767cd4b4297ec7a4a64ca4b8a5684b7",
|
|
"path": "codeformer/codeformer.pth",
|
|
"minSize": 350000000
|
|
},
|
|
{
|
|
"id": "codeformer-onnx",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["facefusion/models-3.0.0", "codeformer"],
|
|
"revision": "728b9659bd9691bf32cbf7f61af478d94b7ba81e",
|
|
"file": "codeformer.onnx",
|
|
"path": "codeformer/codeformer.onnx",
|
|
"minSize": 100000000
|
|
},
|
|
{
|
|
"id": "facexlib-detection",
|
|
"url": "https://github.com/xinntao/facexlib/releases/download/v0.1.0/detection_Resnet50_Final.pth",
|
|
"sha256": "6d1de9c2944f2ccddca5f5e010ea5ae64a39845a86311af6fdf30841b0a5a16d",
|
|
"path": "gfpgan/facelib/detection_Resnet50_Final.pth",
|
|
"minSize": 100000000
|
|
},
|
|
{
|
|
"id": "facexlib-parsing",
|
|
"url": "https://github.com/xinntao/facexlib/releases/download/v0.2.2/parsing_parsenet.pth",
|
|
"sha256": "3d558d8d0e42c20224f13cf5a29c79eba2d59913419f945545d8cf7b72920de2",
|
|
"path": "gfpgan/facelib/parsing_parsenet.pth",
|
|
"minSize": 80000000
|
|
},
|
|
{
|
|
"id": "scunet-color-real",
|
|
"url": "https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_psnr.pth",
|
|
"sha256": "fa78899ba2caec9d235a900e91d96c689da71c42029230c2028b00f09f809c2e",
|
|
"path": "scunet/scunet_color_real_psnr.pth",
|
|
"minSize": 3000000
|
|
},
|
|
{
|
|
"id": "nafnet-sidd",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["mikestealth/nafnet-models", "nafnet"],
|
|
"revision": "cd3a91ddc41c9c3a53ee809b3ddd5263c9e94e51",
|
|
"file": "NAFNet-SIDD-width64.pth",
|
|
"path": "nafnet/NAFNet-SIDD-width64.pth",
|
|
"minSize": 60000000
|
|
}
|
|
],
|
|
"patches": [
|
|
{
|
|
"file": "basicsr/data/degradations.py",
|
|
"search": "from torchvision.transforms.functional_tensor import rgb_to_grayscale",
|
|
"replace": "from torchvision.transforms.functional import rgb_to_grayscale"
|
|
}
|
|
],
|
|
"smokeImports": ["torch", "torchvision"],
|
|
"enablesTools": ["upscale", "enhance-faces", "noise-removal"]
|
|
},
|
|
"photo-restoration": {
|
|
"name": "Photo Restoration",
|
|
"description": "Restore old or damaged photos",
|
|
"estimatedSize": "800 MB - 1 GB",
|
|
"archives": {
|
|
"amd64-gpu": {
|
|
"file": "v2.0.0/photo-restoration-amd64-gpu.tar.gz",
|
|
"sha256": "4747953db35c71b83db19ce12cc6c591730f0cb9f64621f239db17ae3e3563fd",
|
|
"compressedSize": 4680254837,
|
|
"extractedSize": 8172949791
|
|
},
|
|
"arm64-cpu": {
|
|
"file": "v2.0.0/photo-restoration-arm64-cpu.tar.gz",
|
|
"sha256": "261a27a176b9f3e76d8cd92576b73a1c014b19e87b4f16e58ed46d17c77697c0",
|
|
"compressedSize": 1361837793,
|
|
"extractedSize": 2584214411
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": ["codeformer-pip==0.0.4", "huggingface-hub[hf_xet]==0.36.2", "setuptools<75"],
|
|
"amd64": [
|
|
"onnxruntime-gpu==1.20.1",
|
|
"mediapipe>=0.10.21",
|
|
"torch==2.7.0+cu126 torchvision==0.22.0+cu126 --index-url https://download.pytorch.org/whl/cu126",
|
|
"lpips",
|
|
"basicsr==1.4.2",
|
|
"realesrgan==0.3.0"
|
|
],
|
|
"arm64": [
|
|
"torch==2.7.0 torchvision==0.22.0 --index-url https://download.pytorch.org/whl/cpu",
|
|
"onnxruntime==1.20.1",
|
|
"mediapipe>=0.10.18",
|
|
"lpips",
|
|
"basicsr==1.4.2",
|
|
"realesrgan==0.3.0"
|
|
]
|
|
},
|
|
"pipFlags": {
|
|
"codeformer-pip==0.0.4": "--no-deps",
|
|
"basicsr==1.4.2": "--no-build-isolation"
|
|
},
|
|
"postInstall": ["numpy==1.26.4"],
|
|
"models": [
|
|
{
|
|
"id": "lama-onnx",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["Carve/LaMa-ONNX", "lama"],
|
|
"revision": "c3c0c9e468934d62e79c329e35d82dd09ff8c444",
|
|
"file": "lama_fp32.onnx",
|
|
"path": "lama/lama_fp32.onnx",
|
|
"minSize": 100000000
|
|
},
|
|
{
|
|
"id": "codeformer-onnx",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["facefusion/models-3.0.0", "codeformer"],
|
|
"revision": "728b9659bd9691bf32cbf7f61af478d94b7ba81e",
|
|
"file": "codeformer.onnx",
|
|
"path": "codeformer/codeformer.onnx",
|
|
"minSize": 100000000
|
|
},
|
|
{
|
|
"id": "realesrgan-x4plus",
|
|
"url": "https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth",
|
|
"sha256": "4fa0d38905f75ac06eb49a7951b426670021be3018265fd191d2125df9d682f1",
|
|
"path": "realesrgan/RealESRGAN_x4plus.pth",
|
|
"minSize": 60000000
|
|
},
|
|
{
|
|
"id": "facexlib-detection",
|
|
"url": "https://github.com/xinntao/facexlib/releases/download/v0.1.0/detection_Resnet50_Final.pth",
|
|
"sha256": "6d1de9c2944f2ccddca5f5e010ea5ae64a39845a86311af6fdf30841b0a5a16d",
|
|
"path": "gfpgan/facelib/detection_Resnet50_Final.pth",
|
|
"minSize": 100000000
|
|
},
|
|
{
|
|
"id": "facexlib-parsing",
|
|
"url": "https://github.com/xinntao/facexlib/releases/download/v0.2.2/parsing_parsenet.pth",
|
|
"sha256": "3d558d8d0e42c20224f13cf5a29c79eba2d59913419f945545d8cf7b72920de2",
|
|
"path": "gfpgan/facelib/parsing_parsenet.pth",
|
|
"minSize": 80000000
|
|
},
|
|
{
|
|
"id": "mediapipe-face-detector",
|
|
"url": "https://storage.googleapis.com/mediapipe-models/face_detector/blaze_face_short_range/float16/latest/blaze_face_short_range.tflite",
|
|
"sha256": "b4578f35940bf5a1a655214a1cce5cab13eba73c1297cd78e1a04c2380b0152f",
|
|
"path": "mediapipe/blaze_face_short_range.tflite",
|
|
"minSize": 100000
|
|
},
|
|
{
|
|
"id": "mediapipe-face-landmarker",
|
|
"url": "https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/latest/face_landmarker.task",
|
|
"sha256": "64184e229b263107bc2b804c6625db1341ff2bb731874b0bcc2fe6544e0bc9ff",
|
|
"path": "mediapipe/face_landmarker.task",
|
|
"minSize": 1000000
|
|
},
|
|
{
|
|
"id": "scunet-color-real",
|
|
"url": "https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_psnr.pth",
|
|
"sha256": "fa78899ba2caec9d235a900e91d96c689da71c42029230c2028b00f09f809c2e",
|
|
"path": "scunet/scunet_color_real_psnr.pth",
|
|
"minSize": 3000000
|
|
}
|
|
],
|
|
"patches": [
|
|
{
|
|
"file": "basicsr/data/degradations.py",
|
|
"search": "from torchvision.transforms.functional_tensor import rgb_to_grayscale",
|
|
"replace": "from torchvision.transforms.functional import rgb_to_grayscale"
|
|
}
|
|
],
|
|
"smokeImports": ["onnxruntime", "torch", "mediapipe"],
|
|
"enablesTools": ["restore-photo"]
|
|
},
|
|
"ocr": {
|
|
"name": "OCR",
|
|
"description": "High-accuracy local OCR for images and PDFs",
|
|
"estimatedSize": "~208-234 MiB download / ~409-488 MiB installed",
|
|
"runtimeFormatVersion": 3,
|
|
"runtimeFamily": "ocr",
|
|
"modelManifest": "docker/ocr-runtime-models.json",
|
|
"targets": {
|
|
"linux-amd64-cpu-py312": {
|
|
"file": "v3/ocr-linux-amd64-cpu-py312.tar.gz",
|
|
"compressedSizeEstimate": 244622462,
|
|
"extractedSizeEstimate": 510762511,
|
|
"sizeKind": "measured-estimate",
|
|
"minimumMemoryBytes": 4294967296,
|
|
"requirements": "docker/ocr-runtime-requirements-amd64.txt"
|
|
},
|
|
"linux-arm64-cpu-py311": {
|
|
"file": "v3/ocr-linux-arm64-cpu-py311.tar.gz",
|
|
"compressedSizeEstimate": 218031562,
|
|
"extractedSizeEstimate": 428565655,
|
|
"sizeKind": "measured-estimate",
|
|
"minimumMemoryBytes": 4294967296,
|
|
"requirements": "docker/ocr-runtime-requirements-arm64.txt"
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": ["rapidocr==3.9.1", "onnxruntime==1.20.1"],
|
|
"amd64": [],
|
|
"arm64": []
|
|
},
|
|
"pipFlags": {},
|
|
"postInstall": [],
|
|
"models": [],
|
|
"smokeImports": ["rapidocr", "onnxruntime"],
|
|
"enablesTools": ["ocr", "ocr-pdf"]
|
|
},
|
|
"transcription": {
|
|
"name": "Transcription",
|
|
"description": "Speech to text for audio and video (subtitles)",
|
|
"estimatedSize": "~600 MB",
|
|
"archives": {
|
|
"amd64-gpu": {
|
|
"file": "v2.0.0/transcription-amd64-gpu.tar.gz",
|
|
"sha256": "3033d480c6183df66855d78c355233dbc86a754d07414e544e1df1038337c9e1",
|
|
"compressedSize": 559189061,
|
|
"extractedSize": 845987840
|
|
},
|
|
"arm64-cpu": {
|
|
"file": "v2.0.0/transcription-arm64-cpu.tar.gz",
|
|
"sha256": "07088951300dec14b80f4723a3d5bd968574ce2650259be3fd487e7abb47e120",
|
|
"compressedSize": 528491203,
|
|
"extractedSize": 741534382
|
|
}
|
|
},
|
|
"packages": {
|
|
"common": ["faster-whisper>=1.0.0", "huggingface-hub[hf_xet]==0.36.2"],
|
|
"amd64": [],
|
|
"arm64": ["protobuf>=4.25.3,<5"]
|
|
},
|
|
"pipFlags": {},
|
|
"postInstall": [],
|
|
"models": [
|
|
{
|
|
"id": "faster-whisper-small",
|
|
"downloadFn": "hf_snapshot",
|
|
"args": ["Systran/faster-whisper-small", "faster-whisper-small"],
|
|
"revision": "536b0662742c02347bc0e980a01041f333bce120"
|
|
}
|
|
],
|
|
"smokeImports": ["faster_whisper", "ctranslate2"],
|
|
"enablesTools": ["transcribe-audio", "auto-subtitles"]
|
|
}
|
|
}
|
|
}
|