Update PyInstaller spec: Adjust data paths, explicitly list hidden imports for diffusers/transformers, and expand package exclusions

This commit is contained in:
2026-05-14 10:47:58 +02:00
parent cfb0041286
commit 5a79e84fbb

View File

@@ -2,13 +2,43 @@
from PyInstaller.utils.hooks import collect_data_files
from PyInstaller.utils.hooks import collect_submodules
datas = [('web', 'web'), ('icon.png', '.'), ('scene_setup.py', '.')]
hiddenimports = ['image_to_3d', 'generate_equirect']
datas = [('web/index.html', 'web'), ('icon.png', '.'), ('scene_setup.py', '.')]
hiddenimports = [
'image_to_3d',
'generate_equirect',
'diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion',
'diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_inpaint',
'diffusers.pipelines.stable_diffusion.pipeline_output',
'diffusers.models.autoencoders.autoencoder_kl',
'diffusers.models.autoencoders.vae',
'diffusers.models.unets.unet_2d_condition',
'diffusers.models.unets.unet_2d_blocks',
'diffusers.schedulers.scheduling_ddim',
'diffusers.schedulers.scheduling_ddpm',
'diffusers.schedulers.scheduling_dpmsolver_multistep',
'diffusers.schedulers.scheduling_euler_discrete',
'diffusers.schedulers.scheduling_lms_discrete',
'diffusers.schedulers.scheduling_pndm',
'transformers.models.auto.configuration_auto',
'transformers.models.auto.feature_extraction_auto',
'transformers.models.auto.image_processing_auto',
'transformers.models.auto.modeling_auto',
'transformers.models.auto.tokenization_auto',
'transformers.models.clip.configuration_clip',
'transformers.models.clip.image_processing_clip',
'transformers.models.clip.modeling_clip',
'transformers.models.clip.processing_clip',
'transformers.models.clip.tokenization_clip',
'transformers.models.clip.tokenization_clip_fast',
'safetensors.torch',
]
datas += collect_data_files('diffusers')
datas += collect_data_files('transformers')
datas += collect_data_files('huggingface_hub')
hiddenimports += collect_submodules('diffusers')
hiddenimports += collect_submodules('transformers')
hiddenimports += collect_submodules(
'diffusers.schedulers',
filter=lambda name: '.scheduling_' in name and '_flax' not in name,
)
a = Analysis(
@@ -20,7 +50,35 @@ a = Analysis(
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=['gi', 'PyQt5', 'PyQt6', 'PySide2', 'PySide6', 'tkinter'],
excludes=[
'gi',
'PyQt5',
'PyQt6',
'PySide2',
'PySide6',
'tkinter',
'altair',
'cv2',
'datasets',
'flax',
'jax',
'jaxlib',
'librosa',
'llvmlite',
'matplotlib',
'nltk',
'numba',
'onnx',
'onnxruntime',
'pandas',
'pygame',
'sklearn',
'soundfile',
'spacy',
'tensorflow',
'torchaudio',
'torchvision',
],
noarchive=False,
optimize=0,
)