o
    ۷iP                     @   s   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mZ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_accelerate_availableis_bitsandbytes_availableis_flax_availableis_google_colabis_peft_availableis_safetensors_availableis_torch_availableis_transformers_availableis_xformers_available   )BaseDiffusersCLICommandc                 C   s   t  S )N)EnvironmentCommand)_ r   L/home/ubuntu/vllm_env/lib/python3.10/site-packages/diffusers/commands/env.pyinfo_command_factory$   s   r   c                   @   sF   e Zd ZededdfddZdefddZededefd	d
Z	dS )r   parserreturnNc                 C   s   |  d}|jtd d S )Nenv)func)
add_parserset_defaultsr   )r   download_parserr   r   r   register_subcommand)   s   
z&EnvironmentCommand.register_subcommandc           !      C   s  t j}d}t rdd l}|j}d}d}t r"dd l}|j}|j }d}d}d}	d}
t rIdd l	}dd l
}dd l}|j}|j}|j}	|jj j}
d}t rUdd l}|j}d}t radd l}|j}d}t rmdd l}|j}d}t rydd l}|j}d}t rdd l}|j}t }t rdnd}d}t dv rz#tjg dtjtjd}| \}}| d	}t!|dkr|" }W nx t#y   Y npw t d
kr0zYtjddgtjtjd}| \}}| d	}|$d}|dkr$|t!d7 }|$d|}||| " }|$d}|dkr$|t!d7 }|$d|}|d||| "  7 }W n t#y/   Y nw t%d i dt&d|d|dt' d| d| dd| d|
 dd|d|	d|d|d|d |d!|d"|d#|d$|d%d&d'd&i} t%d( t%| (|  | S ))Nznot installedr   NAYesNo>   LinuxWindows)z
nvidia-smiz!--query-gpu=gpu_name,memory.totalz--format=csv,noheader)stdoutstderrzutf-8Darwinsystem_profilerSPDisplaysDataTypezChipset Model:
zVRAM (Total):z VRAM: zSIt seems you are running an unusual OS. Could you fill in the accelerator manually?u   🤗 Diffusers versionPlatformzRunning on Google Colab?zPython versionzPyTorch version (GPU?)z ()zFlax version (CPU?/GPU?/TPU?)zJax versionzJaxLib versionzHuggingface_hub versionzTransformers versionzAccelerate versionzPEFT versionzBitsandbytes versionzSafetensors versionzxFormers versionAcceleratorzUsing GPU in script?z	<fill in>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.
))huggingface_hubr   r
   safetensorsr   torchcudais_availabler   flaxjaxjaxliblib
xla_bridgeget_backendplatformr   transformersr   
accelerater	   peftr   bitsandbytesr   xformersr   system
subprocessPopenPIPEcommunicatedecodelenstripFileNotFoundErrorfindprintversionpython_versionformat_dict)!selfhub_versionsafetensors_versionr-   
pt_versionpt_cuda_availabler.   flax_versionjax_versionjaxlib_versionjax_backendr1   r2   r3   transformers_versionr8   accelerate_versionr9   peft_versionr:   bitsandbytes_versionr;   xformers_versionr<   platform_infois_google_colab_stracceleratorspout_strr   startendinfor   r   r   run.   s   






	
zEnvironmentCommand.rundc                 C   s   d dd |  D d S )Nr(   c                 S   s    g | ]\}}d | d| qS )z- z: r   ).0propvalr   r   r   
<listcomp>   s     z2EnvironmentCommand.format_dict.<locals>.<listcomp>)joinitems)rb   r   r   r   rJ      s   zEnvironmentCommand.format_dict)
__name__
__module____qualname__staticmethodr   r   dictra   strrJ   r   r   r   r   r   (   s     r   )r7   r>   argparser   r,    r   rH   utilsr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   <module>   s   ,