@@ -68,25 +68,33 @@ def main():
6868 reporter = Downloader .make_reporter (args .progress_format )
6969
7070 with _common .telemetry_session ('Model Downloader' , 'downloader' ) as telemetry :
71- models = _configuration .load_models_from_args (parser , args , _common .MODEL_ROOT )
72-
73- for mode in ['all' , 'list' , 'name' ]:
74- if getattr (args , mode ):
75- telemetry .send_event ('md' , 'downloader_selection_mode' , mode )
71+ args_count = sum ([args .all , args .name is not None , args .list is not None , args .print_all ])
72+ if args_count == 0 :
73+ telemetry .send_event ('md' , 'downloader_selection_mode' , None )
74+ else :
75+ for mode in ['all' , 'list' , 'name' , 'print_all' ]:
76+ if getattr (args , mode ):
77+ telemetry .send_event ('md' , 'downloader_selection_mode' , mode )
7678
79+ models = _configuration .load_models_from_args (parser , args , _common .MODEL_ROOT )
7780 failed_models = set ()
7881
79- downloader = Downloader (args .precisions , args .output_dir , args .cache_dir , args .num_attempts )
82+ if args .precisions is None :
83+ requested_precisions = _common .KNOWN_PRECISIONS
84+ else :
85+ requested_precisions = set (args .precisions .split (',' ))
8086
8187 for model in models :
82- precisions_to_send = downloader . requested_precisions if args .precisions else downloader . requested_precisions & model .precisions
88+ precisions_to_send = requested_precisions if args .precisions else requested_precisions & model .precisions
8389 model_information = {
8490 'name' : model .name ,
8591 'framework' : model .framework ,
86- 'precisions' : str (precisions_to_send ).replace (',' , ';' ),
92+ 'precisions' : str (sorted ( precisions_to_send ) ).replace (',' , ';' ),
8793 }
8894 telemetry .send_event ('md' , 'downloader_model' , json .dumps (model_information ))
8995
96+ downloader = Downloader (requested_precisions , args .output_dir , args .cache_dir , args .num_attempts )
97+
9098 failed_models = downloader .bulk_download_model (models , reporter , args .jobs , args .progress_format )
9199
92100 if failed_models :
0 commit comments