
    rhp                         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Zddl	m
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 ddl	mZ d	 Zd
 Z G d de      Zy)    N)ArgumentParser   )__version__)is_deepspeed_available)is_accelerate_availableis_flax_availableis_safetensors_availableis_tf_availableis_torch_availableis_torch_hpu_availableis_torch_npu_availableis_torch_xpu_available   )BaseTransformersCLICommandc                     t               S N)EnvironmentCommand)_s    l/var/www/html/ai-insurance-compliance-backend/venv/lib/python3.12/site-packages/transformers/commands/env.pyinfo_command_factoryr   (   s        c                 ,    t        | j                        S r   )r   accelerate_config_file)argss    r   download_command_factoryr   ,   s    d99::r   c                   @    e Zd Zedefd       ZddZd Zed        Zy)r   parserc                     | j                  d      }|j                  t               |j                  dd d       |j                  t               y )Nenv)funcz--accelerate-config_filezQThe accelerate config file to use for the default values in the launching script.)defaulthelp)
add_parserset_defaultsr   add_argumentr   )r   download_parsers     r   register_subcommandz&EnvironmentCommand.register_subcommand1   sT     ++E2$$*>$?$$&d 	% 	

 	$$*B$Cr   Nc                     || _         y r   )_accelerate_config_file)selfr   r   s      r   __init__zEnvironmentCommand.__init__<   s
    '=$r   c                    d}t               rdd l}|j                  }n2t        j                  j                  d      dd l}|j                   d}d}dx}}t               rdd l}ddlm	}m
} |j                  }| j                  t        j                  j                  |      r  || j                        j                         }t!        |t"              r8dj%                  |j'                         D 	
cg c]  \  }	}
d|	 d	|
  c}
}	      nd
| }d}d}d}t)               r[dd l}|j                  }|j,                  j/                         }t1               }t3               }t5               }|rd}n|rd}n	|rd}n|rd}d}d}t7               r+dd l}|j                  }	 |j:                  j=                         }d}tG               r@tI        jJ                  tM        jN                               5  dd l(}d d d        j                  }d}d}d}d}tS               r^dd l*}dd l+}dd l,}|j                  }|j                  }|j                  }|jZ                  j\                  j_                         j`                  }tb        ta        j`                         ta        jd                         tf        j                  | | | | | d| d| d| d| d| d| | dd}t)               r|r#d|d<   j,                  ji                         |d<   nr#d|d<   jj                  ji                         |d<   nbr#d|d<   jl                  ji                         |d<   n=r;d|d<   jn                  ji                         |d<   |jb                  jp                  |d<   ts        d       ts        | ju                  |             |S c c}
}	w # t>        $ r( tA        |jB                  jE                  d            }Y .w xY w# 1 sw Y   xY w)Nznot installedr   safetensorsz3 but is ignored because of PyTorch version too old.z	not found)default_config_fileload_config_from_file
z	- : 	NACUDAXPUNPUHPUGPUz ()z	<fill in>)z`transformers` versionPlatformzPython versionzHuggingface_hub versionzSafetensors versionzAccelerate versionzAccelerate configzDeepSpeed versionzPyTorch version (accelerator?)zTensorflow version (GPU?)zFlax version (CPU?/GPU?/TPU?)zJax versionzJaxLib versionz/Using distributed or parallel set-up in script?zUsing GPU in script?zGPU typezUsing XPU in script?zXPU typezUsing HPU in script?zHPU typezUsing NPU in script?zNPU typezCANN versionzV
Copy-and-paste the text below in your GitHub issue and FILL OUT the two last points.
);r	   r-   r   	importlibutil	find_specr   
accelerateaccelerate.commands.configr.   r/   r)   ospathisfileto_dict
isinstancedictjoinitemsr   torchcudais_availabler   r   r   r
   
tensorflowtestis_gpu_availableAttributeErrorboolconfiglist_physical_devicesr   
contextlibredirect_stdoutioStringIO	deepspeedr   flaxjaxjaxliblib
xla_bridgeget_backendplatformversionpython_versionhuggingface_hubget_device_namexpuhpunpucannprintformat_dict)r*   safetensors_versionr-   accelerate_versionaccelerate_configaccelerate_config_strr>   r.   r/   propval
pt_versionpt_cuda_availablept_acceleratorrH   pt_xpu_availablept_npu_availablept_hpu_available
tf_versiontf_cuda_availabletfdeepspeed_versionrV   flax_versionjax_versionjaxlib_versionjax_backendrW   rX   rY   infos                                  r   runzEnvironmentCommand.run?   s   -#%"-"9"9^^%%m4@%0%<%<$==p"q,4??1"$]!+!7!7++7277>>J];^$9$:V:V$W$_$_$a! /6 		ARAXAXAZ[ID#T$r#/[\+,- " %
 **J %

 7 7 9575757 !'!!&!!&!!&$
 #JQ$&GG$<$<$>!
 ,!#++BKKM: ! ! ) 5 5&%(++L//K#//N'',,88:CCK '. ))+&557'6'B'B&9%:%7$8$9#:$5#61;B~>Na.P,6<r:K9LA)N0<~R}A-N)]!/ 0?J
   /:+,#(::#=#=#?Z !/:+,#(99#<#<#>Z !/:+,#(99#<#<#>Z !/:+,#(99#<#<#>Z ',}}'9'9^$hidt$%} \F " Q$()H)H)O$P!Q! !s$   1N,
N2 'O&2-O#"O#&O0c           
          dj                  | j                         D cg c]  \  }}d| d|  c}}      dz   S c c}}w )Nr0   z- r1   )rF   rG   )drl   rm   s      r   rg   zEnvironmentCommand.format_dict   s;    yyaggiHsBtfBse,HIDPPHs   <
)returnN)	__name__
__module____qualname__staticmethodr   r'   r+   r}   rg    r   r   r   r   0   s@    DN D D>un Q Qr   r   )rR   importlib.utilr;   rT   r@   r]   argparser   r`    r   r^   integrations.deepspeedr   utilsr   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   <module>r      sQ       	 	  #  % ;	 	 	 ) ;HQ3 HQr   