a
    d                     @   sp   d dl Zd dlZd dlmZ d dlZddlmZ ddl	m
Z
mZmZmZ ddlmZ dd	 ZG d
d deZdS )    N)ArgumentParser   )__version__)is_flax_availableis_safetensors_availableis_tf_availableis_torch_available   )BaseTransformersCLICommandc                 C   s   t  S )N)EnvironmentCommand)_ r   b/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/transformers/commands/env.pyinfo_command_factory   s    r   c                   @   s2   e Zd ZeedddZdd Zedd ZdS )	r   )parserc                 C   s   |  d}|jtd d S )Nenv)func)
add_parserset_defaultsr   )r   Zdownload_parserr   r   r   register_subcommand   s    
z&EnvironmentCommand.register_subcommandc                 C   sn  d}t  rdd l}|j}n$tjdd ur>dd l}|j d}d}d}t rddd l}|j}|j	 }d}d}t
 rdd l}|j}z|j }W n" ty   t|jd}Y n0 d}	d}
d}d}t rdd l}dd l}dd l}|j}	|j}
|j}|jj j}tt t tj| | d| d| d| d|	 d| d|
 | d	d	d
}td t| | |S )Nznot installedr   safetensorsz3 but is ignored because of PyTorch version too old.ZNAZGPUz ()z	<fill in>)z`transformers` versionPlatformzPython versionzHuggingface_hub versionzSafetensors versionzPyTorch version (GPU?)zTensorflow version (GPU?)zFlax version (CPU?/GPU?/TPU?)zJax versionzJaxLib versionzUsing GPU in script?z/Using distributed or parallel set-up in script?zV
Copy-and-paste the text below in your GitHub issue and FILL OUT the two last points.
)r   r   r   	importlibutil	find_specr   torchZcudaZis_availabler   Z
tensorflowtestZis_gpu_availableAttributeErrorboolconfigZlist_physical_devicesr   flaxjaxjaxliblibZ
xla_bridgeget_backendplatformversionpython_versionhuggingface_hubprintformat_dict)selfZsafetensors_versionr   Z
pt_versionZpt_cuda_availabler   Z
tf_versionZtf_cuda_availabletfZflax_versionZjax_versionZjaxlib_versionZjax_backendr!   r"   r#   infor   r   r   run$   sd    
zEnvironmentCommand.runc                 C   s   d dd |  D d S )N
c                 S   s    g | ]\}}d | d| qS )z- z: r   ).0propvalr   r   r   
<listcomp>h       z2EnvironmentCommand.format_dict.<locals>.<listcomp>)joinitems)dr   r   r   r+   f   s    zEnvironmentCommand.format_dictN)__name__
__module____qualname__staticmethodr   r   r/   r+   r   r   r   r   r      s
   Br   )Zimportlib.utilr   r&   argparser   r)    r   r'   utilsr   r   r   r   r
   r   r   r   r   r   r   <module>   s   