o
    ¼ph´  ã                   @   s
  d dl Z d dlZd dlZedeejƒ ƒ e j e j e	¡¡Z
ej e
¡ e  e
¡ de jd< de jd< de jvr>de jd< eje_d dlZd dlZd d	lmZ d d
lmZmZmZmZmZmZ d dlmZ dZdZdd„ Zg d¢Zdd„ Z eƒ  eƒ  e ƒ Z!e!j"dur’ee!j"ƒe jd< ede!j"ƒ e!j#dur¥ee!j#ƒe jd< ede!j#ƒ d dl$m%Z% d dl&m'Z' e%j(e jd< e%j)e jd< e%j*rÙede%j)› ƒ ee%j)dƒZ+e+rÕedƒ nedƒ dd„ Z,e,e%j-e%j.e%j/e%j0e%j1e%j2ƒ\e%_-e%_/e% 3¡  e'e%j4e%j5e%j6e%j7ƒ d d l8T dS )!é    Nz[System ARGV] Ú1ZPYTORCH_ENABLE_MPS_FALLBACKz0.0Z PYTORCH_MPS_HIGH_WATERMARK_RATIOZGRADIO_SERVER_PORTZ7865)Úbuild_launcher)Úis_installedÚrunÚpythonÚrun_pipÚrequirements_metÚdelete_folder_content)Úload_file_from_urlFc                  C   s.  t j dd¡} t j dd| › ¡}t j dd¡}tdtj› ƒ tdtj› ƒ ts2td	ƒr2td
ƒs@t	dt
› d|› dddd tr†tsHtdƒs†t j dd¡}t ¡ dkrxt ¡  d¡rgtd|› ddd ntdƒ tdƒ tdƒswtdƒ nt ¡ dkr†td|› dƒ tsŒt|ƒs•td|› ddƒ d S )NZTORCH_INDEX_URLz&https://download.pytorch.org/whl/cu121ZTORCH_COMMANDz?pip install torch==2.1.0 torchvision==0.16.0 --extra-index-url Z	REQS_FILEzrequirements_versions.txtzPython zFooocus version: ZtorchZtorchvisionú"z" -m z Installing torch and torchvisionzCouldn't install torchT)ZliveZxformersZXFORMERS_PACKAGEzxformers==0.0.23ZWindowsz3.10zinstall -U -I --no-deps zDInstallation of xformers is not supported in this version of Python.zšYou can also check this and build manually: https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Xformers#building-xformers-on-windows-by-ducknessr   ZLinuxzinstall -r "Zrequirements)ÚosÚenvironÚgetÚprintÚsysÚversionÚfooocus_versionÚREINSTALL_ALLr   r   r   ÚTRY_INSTALL_XFORMERSÚplatformÚsystemZpython_versionÚ
startswithr   Úexitr   )Ztorch_index_urlZtorch_commandZrequirements_fileZxformers_package© r   úTC:\Users\intelai3\Desktop\creaza imagini local\Fooocus_win64_2-5-0\Fooocus\launch.pyÚprepare_environment   s6   ÿÿ€r   ))zxlvaeapp.pthz@https://huggingface.co/lllyasviel/misc/resolve/main/xlvaeapp.pth)zvaeapp_sd15.pthzBhttps://huggingface.co/lllyasviel/misc/resolve/main/vaeapp_sd15.pt)z$xl-to-v1_interposer-v4.0.safetensorszUhttps://huggingface.co/mashb1t/misc/resolve/main/xl-to-v1_interposer-v4.0.safetensorsc                  C   s   ddl m}  | S )Nr   ©Úargs)Zargs_managerr   r   r   r   r   Úini_argsF   s   r   ZCUDA_VISIBLE_DEVICESzSet device to:Z	HF_MIRRORzSet hf_mirror to:)Úconfig)Ú
init_cacheZ
U2NET_HOMEZGRADIO_TEMP_DIRz3[Cleanup] Attempting to delete content of temp dir z
[Cleanup] z[Cleanup] Cleanup successfulz/[Cleanup] Failed to delete content of temp dir.c                 C   sv  ddl m} tD ]\}}t|tj|d qtdtjdd tjr(t	dƒ | |fS tj
satj || tjƒ¡sa|D ])}	tj ||	tjƒ¡r`t	d| › d|	› d	ƒ t	d
|	› dƒ t	dƒ i }|	}  nq7| ¡ D ]\}}tj ||tjƒ¡}
t||
|d qe| ¡ D ]\}}t|tj|d q| ¡ D ]\}}tj ||tjƒ¡}
t||
|d q| ¡ D ]\}}t|tj|d qª| |fS )Nr   )Úget_file_from_folder_list)ÚurlÚ	model_dirÚ	file_namezIhttps://huggingface.co/lllyasviel/misc/resolve/main/fooocus_expansion.binzpytorch_model.binzSkipped model download.zYou do not have [z] but you have [z].zFooocus will use [zK] to avoid downloading new models, but you are not using the latest models.zLUse --always-download-new-model to avoid fallback and always get new models.)Zmodules.utilr!   Úvae_approx_filenamesr
   r   Zpath_vae_approxZpath_fooocus_expansionr   Zdisable_preset_downloadr   Zalways_download_new_modelr   ÚpathÚisfileÚpaths_checkpointsÚitemsÚdirnameZpath_embeddingsÚpaths_lorasZpath_vae)Zdefault_modelÚprevious_default_modelsÚcheckpoint_downloadsÚembeddings_downloadsÚlora_downloadsÚvae_downloadsr!   r$   r"   Zalternative_model_namer#   r   r   r   Údownload_modelsg   sB   ýù	r1   )Ú*)9r   Ússlr   r   ÚstrÚargvr&   r*   ÚabspathÚ__file__ÚrootÚappendÚchdirr   Ú_create_unverified_contextÚ_create_default_https_contextr   r   r   Zmodules.launch_utilr   r   r   r   r   r	   Zmodules.model_loaderr
   r   r   r   r%   r   r   Zgpu_device_idZ	hf_mirrorÚmodulesr   Zmodules.hash_cacher    Zpath_inpaintZ	temp_pathZtemp_path_cleanup_on_launchÚresultr1   Zdefault_base_model_namer,   r-   r.   r/   r0   Zupdate_filesZmodel_filenamesr(   Zlora_filenamesr+   Zwebuir   r   r   r   Ú<module>   sb    




 !


*þ