Add PyInstaller for apps/ webui and cli (#909)

tested webui, cli and webui exe and cli exe
This commit is contained in:
powderluv
2023-02-01 06:51:27 -08:00
committed by GitHub
parent 1c64e40722
commit ab0cbb4475
7 changed files with 17 additions and 24 deletions

View File

@@ -26,10 +26,10 @@ datas += collect_data_files('iree')
datas += collect_data_files('google-cloud-storage')
datas += collect_data_files('shark')
datas += [
( 'resources/prompts.json', 'resources' ),
( 'resources/model_db.json', 'resources' ),
( 'resources/opt_flags.json', 'resources' ),
( 'resources/base_model.json', 'resources' ),
( 'src/utils/resources/prompts.json', 'resources' ),
( 'src/utils/resources/model_db.json', 'resources' ),
( 'src/utils/resources/opt_flags.json', 'resources' ),
( 'src/utils/resources/base_model.json', 'resources' ),
( 'web/logos/*', 'logos' )
]

View File

@@ -4,15 +4,6 @@ from PyInstaller.utils.hooks import copy_metadata
import sys ; sys.setrecursionlimit(sys.getrecursionlimit() * 5)
import os
spec_root = os.path.abspath(SPECPATH)
shark_root = os.path.join(spec_root, "../..")
apps_root = os.path.join(spec_root, "../"
print(spec_root)
print(shark_root)
print(apps_root)
datas = []
datas += collect_data_files('torch')
datas += copy_metadata('torch')
@@ -24,32 +15,34 @@ datas += copy_metadata('filelock')
datas += copy_metadata('numpy')
datas += copy_metadata('tokenizers')
datas += copy_metadata('importlib_metadata')
datas += copy_metadata('torchvision')
datas += copy_metadata('torch-mlir')
datas += copy_metadata('diffusers')
datas += copy_metadata('transformers')
datas += copy_metadata('omegaconf')
datas += copy_metadata('safetensors')
datas += collect_data_files('gradio')
datas += collect_data_files('iree')
datas += collect_data_files('google-cloud-storage')
datas += collect_data_files('shark')
datas += collect_data_files('apps')
datas += [
( 'resources/prompts.json', 'resources' ),
( 'resources/model_db.json', 'resources' ),
( 'resources/opt_flags.json', 'resources' ),
( 'resources/base_model.json', 'resources' ),
( 'src/utils/resources/prompts.json', 'resources' ),
( 'src/utils/resources/model_db.json', 'resources' ),
( 'src/utils/resources/opt_flags.json', 'resources' ),
( 'src/utils/resources/base_model.json', 'resources' ),
]
binaries = []
block_cipher = None
a = Analysis(
['scripts/txt2img.py'],
pathex=[spec_root, shark_root, apps_root],
pathex=['.'],
binaries=binaries,
datas=datas,
hiddenimports=['apps', 'shark', 'shark.*', 'shark.shark_inference', 'shark_inference', 'iree.tools.core' ],
hiddenimports=['shark', 'shark.*', 'shark.shark_inference', 'shark_inference', 'iree.tools.core', 'gradio', 'apps'],
hookspath=[],
hooksconfig={},
runtime_hooks=[],

View File

@@ -26,12 +26,12 @@ def get_json_file(path):
# TODO: This shouldn't be called from here, every time the file imports
# it will run all the global vars.
prompt_examples = get_json_file("../../resources/prompts.json")
models_db = get_json_file("../../resources/model_db.json")
prompt_examples = get_json_file("resources/prompts.json")
models_db = get_json_file("resources/model_db.json")
# The base_model contains the input configuration for the different
# models and also helps in providing information for the variants.
base_models = get_json_file("../../resources/base_model.json")
base_models = get_json_file("resources/base_model.json")
# Contains optimization flags for different models.
opt_flags = get_json_file("../../resources/opt_flags.json")
opt_flags = get_json_file("resources/opt_flags.json")