<p>gunicorn + argparse tidak berfungsi</p>

Dibuat pada 7 Okt 2019  ·  4Komentar  ·  Sumber: benoitc/gunicorn

Saya mencoba mendepoli model pytorch saya dengan modul argparse.
Tampaknya modul argparse yang dideklarasikan dalam aplikasi akan menggantikan argumen gunicorn.
Dan saya mengalami masalah seperti ini:

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

Petunjuk di bagian di atas adalah parameter model di aplikasi.
Terima kasih~

Komentar yang paling membantu

Bisakah Anda menunjukkan bagaimana Anda membuat aplikasi dan mem-parsing CLI dengan argparse ?

Gunicorn memanggil parse_args pada instance argparse miliknya sendiri. Anda dapat mengimplementasikan aplikasi khusus yang melakukan sesuatu yang lain, atau Anda dapat memastikan untuk mengubah sys.argv , atau meneruskan argumen Anda sendiri ke parse_args , jika Anda memanggilnya setelah Gunicorn dimulai.

https://docs.python.org/3/library/argparse.html#the -parse-args-method

Terima kasih atas balasan Anda, saya menemukan jika saya menggunakan modul argparse di APP saya seperti args = parser.parse_args(sys.argv) , argumen gunicorn mungkin tidak berfungsi.
Saya mencoba menggantinya dengan args, unknown = parser.parse_known_args() , semuanya berjalan dengan baik.
Terima kasih ~

Semua 4 komentar

Bisakah Anda menunjukkan bagaimana Anda membuat aplikasi dan mem-parsing CLI dengan argparse ?

Gunicorn memanggil parse_args pada instance argparse miliknya sendiri. Anda dapat mengimplementasikan aplikasi khusus yang melakukan sesuatu yang lain, atau Anda dapat memastikan untuk mengubah sys.argv , atau meneruskan argumen Anda sendiri ke parse_args , jika Anda memanggilnya setelah Gunicorn dimulai.

https://docs.python.org/3/library/argparse.html#the -parse-args-method

Bisakah Anda menunjukkan bagaimana Anda membuat aplikasi dan mem-parsing CLI dengan argparse ?

Gunicorn memanggil parse_args pada instance argparse miliknya sendiri. Anda dapat mengimplementasikan aplikasi khusus yang melakukan sesuatu yang lain, atau Anda dapat memastikan untuk mengubah sys.argv , atau meneruskan argumen Anda sendiri ke parse_args , jika Anda memanggilnya setelah Gunicorn dimulai.

https://docs.python.org/3/library/argparse.html#the -parse-args-method

Terima kasih atas balasan Anda, saya menemukan jika saya menggunakan modul argparse di APP saya seperti args = parser.parse_args(sys.argv) , argumen gunicorn mungkin tidak berfungsi.
Saya mencoba menggantinya dengan args, unknown = parser.parse_known_args() , semuanya berjalan dengan baik.
Terima kasih ~

Bisakah masalah ditutup, kalau begitu? Apakah Anda memerlukan bantuan untuk mengurai sakelar baris perintah Anda sendiri dan sakelar gunicorn bersama-sama?

Terima kasih lagi!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat