
    h                         S SK Jr  S SKrS SKrS SKJr  S SKJrJr  SSK	J
r  SSKJr  SSKJ
r  SSKJ
r  SSKJ
r  SSKJ
r  SSKJr  SSKJr  SSKJ
r  \R8                  " \5      rS	 r\S
:X  a  \" 5         gg)    N)logging)launch_commandlaunch_command_parser   )make_parser)	print_env)	TrlParser)mainc                     [        SSSS9n U R                  SS[         S9n[        U5        UR                  SS	S
9  [	        U5        [        U5        [        U5        [        U5        [        U5        U R                  SS9u  p#SU;   a  UR                  S5      nX4S-      n[        R                  R                  U5      (       a  UnOs[        R                  " S5      R!                  U S35      R#                  5       (       a)  [        R                  " S5      R!                  U S35      nO[%        SU S35      eUR'                  U5        UR'                  U5        S[)        U5      /U-   nUR*                  S:X  al  [        R                  " S5      R!                  S5      n[-        5       R/                  [)        U5      /5      n[0        R2                  SS  Ul        [7        U5        g UR*                  S:X  a  [9        5         g UR*                  S:X  al  [        R                  " S5      R!                  S5      n[-        5       R/                  [)        U5      /5      n[0        R2                  SS  Ul        [7        U5        g UR*                  S:X  al  [        R                  " S5      R!                  S5      n	[-        5       R/                  [)        U	5      /5      n[0        R2                  SS  Ul        [7        U5        g UR*                  S:X  al  [        R                  " S5      R!                  S5      n
[-        5       R/                  [)        U
5      /5      n[0        R2                  SS  Ul        [7        U5        g UR*                  S:X  am  [        R                  " S5      R!                  S5      n[0        R2                  SS  n[-        5       R/                  U[)        U5      /-   U-   5      n[7        U5        g UR*                  S :X  aS  U R                  5       u  nUR:                  S:X  a%  UR<                  S:  a  [>        RA                  S!5        [C        U5        g g )"NzTRL CLItrlF)progusageallow_abbrevzavailable commandscommand)helpdestparser_classenvz!Print the environment information)r   T)return_remaining_stringsz--accelerate_configr   ztrl.accelerate_configsz.yamlzAccelerate config zz is neither a file nor a valid config in the `trl` package. Please provide a valid config name or a path to a config file.z--config_filedpoztrl.scriptszdpo.py   grpozgrpo.pyktozkto.pyrloozrloo.pysftzsft.pyz
vllm-servea  Detected configuration: tensor_parallel_size=1 and data_parallel_size>1. This setup is known to cause a crash when using the `trl vllm-serve` CLI entry point. As a workaround, please run the server using the module path instead: `python -m trl.scripts.vllm_serve`)"r	   add_subparsersmake_dpo_parser
add_parsermake_grpo_parsermake_kto_parsermake_rloo_parsermake_sft_parsermake_vllm_serve_parserparse_args_and_configindexospathisfile	resourcesfilesjoinpathexists
ValueErrorpopstrr   r   
parse_argssysargvtraining_script_argsr   r   tensor_parallel_sizedata_parallel_sizeloggerwarningvllm_serve_main)parser
subparsersargslaunch_argsconfig_indexconfig_nameaccelerate_config_pathdpo_training_scriptgrpo_training_scriptkto_training_scriptrloo_training_scriptsft_training_scriptr3   script_argss                 A/home/james-whalen/.local/lib/python3.13/site-packages/trl/cli.pyr
   r
   $   s   IUGF &&,@y_h&iJ J%&IJZ JZ J:& 44d4SD +"(()>?!"23 77>>+&&%0"__56??;-u@UV]]__%.__5M%N%W%W[fZgglXm%n"$[M 2Q Q  	%% ',B(CD{R||u'oom<EEhO$&1137J3K2LM %(HHQRL!t				(}=FFyQ$&1137K3L2MN %(HHQRL!t		'oom<EEhO$&1137J3K2LM %(HHQRL!t		(}=FFyQ$&1137K3L2MN %(HHQRL!t		'oom<EEhO
  #xx|$&11+EXAY@Z2Z]q2qrt		%557
 ++q0[5S5SVW5WNN[ 	$ 
&    __main__)importlib.resourcesr)   r&   r1   
accelerater   accelerate.commands.launchr   r   scripts.dpor   r   scripts.envr   scripts.grpor   scripts.ktor    scripts.rloor!   scripts.sftr"   scripts.utilsr	   scripts.vllm_server
   r8   r#   
get_logger__name__r6    rG   rF   <module>rW      s^    ( 	 
  L 7 " 9 7 9 7 $ 7 E 
		H	%n%b zF rG   