Hunyuan3D 2.1 β€” OpenVINO IR Models

OpenVINO IR format conversion of Hunyuan3D 2.1 components for optimized inference on Intel CPUs and GPUs.

What is OpenVINO?

OpenVINO (Open Visual Inference and Neural network Optimization) is Intel's open-source toolkit for optimizing and deploying AI models. It dramatically speeds up inference on Intel hardware (CPU, iGPU, Arc GPU, NPU) compared to vanilla PyTorch.

Why convert to OpenVINO?

Benefit Detail
CPU speedup 2-5x faster inference on Intel CPUs vs PyTorch
iGPU acceleration Run on Intel integrated GPUs (no dedicated GPU needed)
Arc GPU support Optimized for Intel Arc discrete GPUs (A770, A750, etc.)
Lower memory FP16/INT8 quantization reduces VRAM usage significantly
No CUDA dependency Deploy anywhere β€” no NVIDIA GPU or CUDA toolkit required
Smaller models FP16 weights are ~50% smaller than FP32 PyTorch checkpoints

Conversion Details

Parameter Value
Tool openvino.convert_model() via ONNX intermediate
ONNX opset 18
Precision FP16 (default for OpenVINO IR)
Source weights dgrauet/hunyuan3d-2.1-mlx
Framework PyTorch β†’ ONNX β†’ OpenVINO IR

Conversion workflow

  1. Load safetensors weights into pure PyTorch modules
  2. Export to ONNX (opset 18) via torch.onnx.export()
  3. Convert ONNX to OpenVINO IR via ov.convert_model()
  4. Save as .xml (graph) + .bin (weights) pair

This ONNX intermediate step is required because ov.convert_model() on large transformers can hang on CPU-only systems. GPU-accelerated ONNX export + OV conversion completes in minutes.

Components

Component Description Size
clip_vit CLIP ViT-L/14 text+image encoder ~580 MB
dinov2_giant DINOv2-Giant image encoder (painting) ~2170 MB
image_encoder DINOv2-Large image encoder (shape) ~490 MB
paint_vae_encoder Paint VAE encoder ~65 MB
paint_vae_decoder Paint VAE decoder ~95 MB
shape_vae_decoder Shape VAE decoder (16-block transformer) ~385 MB
dit DiT shape denoiser (21 double-stream blocks) ~4050 MB
paint_unet Paint UNet (SD-style, 12ch in / 4ch out) ~1650 MB

Usage (Python)

import openvino as ov

core = ov.Core()
model = core.read_model("dit.xml")
compiled = core.compile_model(model, "GPU")  # or "CPU"

# Run inference
infer_request = compiled.create_infer_request()
infer_request.infer({"x": latent, "t": timestep, "context": text_emb})
output = infer_request.get_output_tensor(0).data

Target Hardware

  • Intel Arc A750 (8GB VRAM) β€” primary target
  • Intel iGPU β€” UHD 630/Iris Xe (reduced resolution)
  • Intel CPU β€” Core i5/i7/i9 (slower but functional)

License

Same as original Hunyuan3D 2.1 β€” see LICENSE.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support