o
    h                     @   s   d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZ	 d dl
mZmZ ddlmZmZ dddZdd	 Zd
efddZedkrGee dS )    N)__version__)default_config_fileload_config_from_file   )is_npu_availableis_xpu_availablec                 C   sF   | d ur
|  d}ntd}|jdd dd | d ur!|jtd |S )NenvzAccelerate env commandz--config_filezFThe config file to use for the default values in the launching script.)defaulthelp)func)
add_parserargparseArgumentParseradd_argumentset_defaultsenv_command)
subparsersparser r   M/var/www/html/ai/venv/lib/python3.10/site-packages/accelerate/commands/env.pyenv_command_parser   s   
r   c              	   C   s  t j}t j }t }t }d}| jd ustj	t
r"t| j }tt t tj| d| dt|t|t jd ddd}|rNt j |d< td	 td
dd | D  t| jd u rhdnd t|tr|d
dd | D nd| }t| ||d< |S )Nz	Not foundz ()i   @z.2fz GB)z`Accelerate` versionPlatformzPython versionzNumpy versionzPyTorch version (GPU?)zPyTorch XPU availablezPyTorch NPU availablez
System RAMzGPU typez4
Copy-and-paste the text below in your GitHub issue

c                 S       g | ]\}}d | d| qS )z- : r   .0propvalr   r   r   
<listcomp>G        zenv_command.<locals>.<listcomp>z- `Accelerate` default config:z- `Accelerate` config passed:c                 S   r   )z	- r   r   r   r   r   r   r    K   r!   	z`Accelerate` configs)torchr   cudais_availabler   r   config_fileospathisfiler   r   to_dictversionplatformpython_versionnpstrpsutilvirtual_memorytotalget_device_nameprintjoinitems
isinstancedict)args
pt_versionpt_cuda_availablept_xpu_availablept_npu_availableaccelerate_configinfoaccelerate_config_strr   r   r   r   .   s8   

r   returnc                  C   s   t  } |  }t| dS )Nr   )r   
parse_argsr   )r   r9   r   r   r   mainV   s   rC   __main__)N)r   r'   r,   numpyr.   r0   r#   
accelerater   r+   accelerate.commands.configr   r   utilsr   r   r   r   intrC   __name__
SystemExitr   r   r   r   <module>   s   
(
