рдореИрдВ рдЕрдкрдиреЗ pytorch рдореЙрдбрд▓ рдХреЛ argparse рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдЪрд┐рддреНрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрдк рдореЗрдВ рдШреЛрд╖рд┐рдд argparse рдореЙрдбреНрдпреВрд▓ gunicorn рдХреЗ рддрд░реНрдХреЛрдВ рдХреЛ рдмрджрд▓ рджреЗрдЧрд╛ред
рдФрд░ рдореБрдЭреЗ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рд╣реИ:
usage: gunicorn [-h] [--mode MODE] [--batch_size BATCH_SIZE] [--warmup WARMUP]
[--early_stop EARLY_STOP] [--seed SEED] [--t_total] [--lr LR]
[--lr_decay_epochs LR_DECAY_EPOCHS]
[--lr_decay_rate LR_DECAY_RATE]
[--weight_decay_rate WEIGHT_DECAY_RATE] [--bert_lr BERT_LR]
[--num_epochs NUM_EPOCHS] [--model_dir MODEL_DIR]
[--model_path MODEL_PATH] [--num_workers NUM_WORKERS]
[--train_dataset TRAIN_DATASET] [--eval_dataset EVAL_DATASET]
[--test_dataset TEST_DATASET] [--bert_low_case BERT_LOW_CASE]
[--bert_type BERT_TYPE] [--bert_hidden_size BERT_HIDDEN_SIZE]
[--bert_dropout BERT_DROPOUT]
[--bert_mention_max_len BERT_MENTION_MAX_LEN]
[--bert_max_len BERT_MAX_LEN]
[--bert_char_max_len BERT_CHAR_MAX_LEN]
[--bert_entity_threshold BERT_ENTITY_THRESHOLD]
[--bert_freeze] [--bert_threshold BERT_THRESHOLD]
[--bert_adam] [--enhance_mention] [--interaction]
[--context_dropout CONTEXT_DROPOUT]
[--mention_dropout MENTION_DROPOUT]
[--rnn_hidden_size RNN_HIDDEN_SIZE]
[--rnn_num_layers RNN_NUM_LAYERS] [--rnn_dropout RNN_DROPOUT]
[--rnn_num_dirs RNN_NUM_DIRS]
[--cnn_embedding_dim CNN_EMBEDDING_DIM]
[--cnn_output_dim CNN_OUTPUT_DIM] [--cnn_filters CNN_FILTERS]
[--hierarchy_alpha HIERARCHY_ALPHA]
gunicorn: error: unrecognized arguments: -w 1 -b 0.0.0.0:3101 --reload -t 500 api:app
рдЙрдкрд░реЛрдХреНрдд рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╕рдВрдХреЗрдд рдРрдк рдореЗрдВ рдореЙрдбрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВред
рдзрдиреНрдпрд╡рд╛рдж~
рдХреНрдпрд╛ рдЖрдк рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЕрдкрдирд╛ рдЖрд╡реЗрджрди рдХреИрд╕реЗ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╕реАрдПрд▓рдЖрдИ рдХреЛ argparse
рд╕рд╛рде рдХреИрд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
Gunicorn parse_args
рдХреЛ argparse
рдЕрдкрдиреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдЖрдк рдПрдХ рдХрд╕реНрдЯрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХреБрдЫ рдФрд░ рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдЖрдк sys.argv
рдХреЛ рдмрджрд▓рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рддрд░реНрдХреЛрдВ рдХреЛ parse_args
, рдпрджрд┐ рдЖрдк рдЗрд╕реЗ Gunicorn рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдХрд╣рддреЗ рд╣реИрдВред
https://docs.python.org/3/library/argparse.html#the -parse-args-method
рдХреНрдпрд╛ рдЖрдк рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЕрдкрдирд╛ рдЖрд╡реЗрджрди рдХреИрд╕реЗ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╕реАрдПрд▓рдЖрдИ рдХреЛ
argparse
рд╕рд╛рде рдХреИрд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?Gunicorn
parse_args
рдХреЛargparse
рдЕрдкрдиреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдЖрдк рдПрдХ рдХрд╕реНрдЯрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХреБрдЫ рдФрд░ рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдЖрдкsys.argv
рдХреЛ рдмрджрд▓рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рддрд░реНрдХреЛрдВ рдХреЛparse_args
, рдпрджрд┐ рдЖрдк рдЗрд╕реЗ Gunicorn рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдХрд╣рддреЗ рд╣реИрдВредhttps://docs.python.org/3/library/argparse.html#the -parse-args-method
рдЖрдкрдХреЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЕрдЧрд░ рдореИрдВ рдЕрдкрдиреЗ рдПрдкреАрдкреА рдореЗрдВ args = parser.parse_args(sys.argv)
рдЬреИрд╕реЗ argparse рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ gunicorn рдХреЗ рддрд░реНрдХ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВ рдЗрд╕реЗ args, unknown = parser.parse_known_args()
рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ, рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдзрдиреНрдпрд╡рд╛рдж ~
рддреЛ рдХреНрдпрд╛ рдорд╛рдорд▓рд╛ рдмрдВрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ? рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реНрд╡рд┐рдЪ рдФрд░ рдЧрдирд┐рдХреЛрд░реНрди рд╕реНрд╡рд┐рдЪ рдХреЛ рдПрдХ рд╕рд╛рде рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдЪрд╛рд╣рд┐рдП?
рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдзрдиреНрдпрд╡рд╛рдж!
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЖрдкрдХреЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЕрдЧрд░ рдореИрдВ рдЕрдкрдиреЗ рдПрдкреАрдкреА рдореЗрдВ
args = parser.parse_args(sys.argv)
рдЬреИрд╕реЗ argparse рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ gunicorn рдХреЗ рддрд░реНрдХ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВредрдореИрдВ рдЗрд╕реЗ
args, unknown = parser.parse_known_args()
рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ, рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИредрдзрдиреНрдпрд╡рд╛рдж ~