@@ -91,9 +91,17 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) {
91
91
bool escape_prompt = false ;
92
92
std::string arg;
93
93
gpt_params default_params;
94
+ const std::string arg_prefix = " --" ;
94
95
95
96
for (int i = 1 ; i < argc; i++) {
96
97
arg = argv[i];
98
+ if (arg.compare (0 , arg_prefix.size (), arg_prefix) == 0 ) {
99
+ size_t arg_underscore_index = arg.find (" _" );
100
+ while (arg_underscore_index != std::string::npos) {
101
+ arg = arg.replace (arg_underscore_index, sizeof (" _" ) - 1 , " -" );
102
+ arg_underscore_index = arg.find (" _" );
103
+ }
104
+ }
97
105
98
106
if (arg == " -s" || arg == " --seed" ) {
99
107
#if defined(GGML_USE_CUBLAS)
@@ -141,27 +149,27 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) {
141
149
if (params.prompt .back () == ' \n ' ) {
142
150
params.prompt .pop_back ();
143
151
}
144
- } else if (arg == " -n" || arg == " --n_predict " ) {
152
+ } else if (arg == " -n" || arg == " --n-predict " ) {
145
153
if (++i >= argc) {
146
154
invalid_param = true ;
147
155
break ;
148
156
}
149
157
params.n_predict = std::stoi (argv[i]);
150
- } else if (arg == " --top_k " ) {
158
+ } else if (arg == " --top-k " ) {
151
159
if (++i >= argc) {
152
160
invalid_param = true ;
153
161
break ;
154
162
}
155
163
params.top_k = std::stoi (argv[i]);
156
- } else if (arg == " -c" || arg == " --ctx_size " ) {
164
+ } else if (arg == " -c" || arg == " --ctx-size " ) {
157
165
if (++i >= argc) {
158
166
invalid_param = true ;
159
167
break ;
160
168
}
161
169
params.n_ctx = std::stoi (argv[i]);
162
- } else if (arg == " --memory_f32 " ) {
170
+ } else if (arg == " --memory-f32 " ) {
163
171
params.memory_f16 = false ;
164
- } else if (arg == " --top_p " ) {
172
+ } else if (arg == " --top-p " ) {
165
173
if (++i >= argc) {
166
174
invalid_param = true ;
167
175
break ;
@@ -185,25 +193,25 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) {
185
193
break ;
186
194
}
187
195
params.typical_p = std::stof (argv[i]);
188
- } else if (arg == " --repeat_last_n " ) {
196
+ } else if (arg == " --repeat-last-n " ) {
189
197
if (++i >= argc) {
190
198
invalid_param = true ;
191
199
break ;
192
200
}
193
201
params.repeat_last_n = std::stoi (argv[i]);
194
- } else if (arg == " --repeat_penalty " ) {
202
+ } else if (arg == " --repeat-penalty " ) {
195
203
if (++i >= argc) {
196
204
invalid_param = true ;
197
205
break ;
198
206
}
199
207
params.repeat_penalty = std::stof (argv[i]);
200
- } else if (arg == " --frequency_penalty " ) {
208
+ } else if (arg == " --frequency-penalty " ) {
201
209
if (++i >= argc) {
202
210
invalid_param = true ;
203
211
break ;
204
212
}
205
213
params.frequency_penalty = std::stof (argv[i]);
206
- } else if (arg == " --presence_penalty " ) {
214
+ } else if (arg == " --presence-penalty " ) {
207
215
if (++i >= argc) {
208
216
invalid_param = true ;
209
217
break ;
@@ -215,19 +223,19 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) {
215
223
break ;
216
224
}
217
225
params.mirostat = std::stoi (argv[i]);
218
- } else if (arg == " --mirostat_lr " ) {
226
+ } else if (arg == " --mirostat-lr " ) {
219
227
if (++i >= argc) {
220
228
invalid_param = true ;
221
229
break ;
222
230
}
223
231
params.mirostat_eta = std::stof (argv[i]);
224
- } else if (arg == " --mirostat_ent " ) {
232
+ } else if (arg == " --mirostat-ent " ) {
225
233
if (++i >= argc) {
226
234
invalid_param = true ;
227
235
break ;
228
236
}
229
237
params.mirostat_tau = std::stof (argv[i]);
230
- } else if (arg == " -b" || arg == " --batch_size " ) {
238
+ } else if (arg == " -b" || arg == " --batch-size " ) {
231
239
if (++i >= argc) {
232
240
invalid_param = true ;
233
241
break ;
@@ -310,7 +318,7 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) {
310
318
invalid_param = true ;
311
319
break ;
312
320
}
313
- } else if (arg == " --n_parts " ) {
321
+ } else if (arg == " --n-parts " ) {
314
322
if (++i >= argc) {
315
323
invalid_param = true ;
316
324
break ;
@@ -384,31 +392,31 @@ void gpt_print_usage(int /*argc*/, char ** argv, const gpt_params & params) {
384
392
fprintf (stderr, " --in-suffix STRING string to suffix after user inputs with (default: empty)\n " );
385
393
fprintf (stderr, " -f FNAME, --file FNAME\n " );
386
394
fprintf (stderr, " prompt file to start generation.\n " );
387
- fprintf (stderr, " -n N, --n_predict N number of tokens to predict (default: %d, -1 = infinity)\n " , params.n_predict );
388
- fprintf (stderr, " --top_k N top-k sampling (default: %d, 0 = disabled)\n " , params.top_k );
389
- fprintf (stderr, " --top_p N top-p sampling (default: %.1f, 1.0 = disabled)\n " , (double )params.top_p );
395
+ fprintf (stderr, " -n N, --n-predict N number of tokens to predict (default: %d, -1 = infinity)\n " , params.n_predict );
396
+ fprintf (stderr, " --top-k N top-k sampling (default: %d, 0 = disabled)\n " , params.top_k );
397
+ fprintf (stderr, " --top-p N top-p sampling (default: %.1f, 1.0 = disabled)\n " , (double )params.top_p );
390
398
fprintf (stderr, " --tfs N tail free sampling, parameter z (default: %.1f, 1.0 = disabled)\n " , (double )params.tfs_z );
391
399
fprintf (stderr, " --typical N locally typical sampling, parameter p (default: %.1f, 1.0 = disabled)\n " , (double )params.typical_p );
392
- fprintf (stderr, " --repeat_last_n N last n tokens to consider for penalize (default: %d, 0 = disabled, -1 = ctx_size)\n " , params.repeat_last_n );
393
- fprintf (stderr, " --repeat_penalty N penalize repeat sequence of tokens (default: %.1f, 1.0 = disabled)\n " , (double )params.repeat_penalty );
394
- fprintf (stderr, " --presence_penalty N repeat alpha presence penalty (default: %.1f, 0.0 = disabled)\n " , (double )params.presence_penalty );
395
- fprintf (stderr, " --frequency_penalty N repeat alpha frequency penalty (default: %.1f, 0.0 = disabled)\n " , (double )params.frequency_penalty );
400
+ fprintf (stderr, " --repeat-last-n N last n tokens to consider for penalize (default: %d, 0 = disabled, -1 = ctx_size)\n " , params.repeat_last_n );
401
+ fprintf (stderr, " --repeat-penalty N penalize repeat sequence of tokens (default: %.1f, 1.0 = disabled)\n " , (double )params.repeat_penalty );
402
+ fprintf (stderr, " --presence-penalty N repeat alpha presence penalty (default: %.1f, 0.0 = disabled)\n " , (double )params.presence_penalty );
403
+ fprintf (stderr, " --frequency-penalty N repeat alpha frequency penalty (default: %.1f, 0.0 = disabled)\n " , (double )params.frequency_penalty );
396
404
fprintf (stderr, " --mirostat N use Mirostat sampling.\n " );
397
405
fprintf (stderr, " Top K, Nucleus, Tail Free and Locally Typical samplers are ignored if used.\n " );
398
406
fprintf (stderr, " (default: %d, 0 = disabled, 1 = Mirostat, 2 = Mirostat 2.0)\n " , params.mirostat );
399
- fprintf (stderr, " --mirostat_lr N Mirostat learning rate, parameter eta (default: %.1f)\n " , (double )params.mirostat_eta );
400
- fprintf (stderr, " --mirostat_ent N Mirostat target entropy, parameter tau (default: %.1f)\n " , (double )params.mirostat_tau );
407
+ fprintf (stderr, " --mirostat-lr N Mirostat learning rate, parameter eta (default: %.1f)\n " , (double )params.mirostat_eta );
408
+ fprintf (stderr, " --mirostat-ent N Mirostat target entropy, parameter tau (default: %.1f)\n " , (double )params.mirostat_tau );
401
409
fprintf (stderr, " -l TOKEN_ID(+/-)BIAS, --logit-bias TOKEN_ID(+/-)BIAS\n " );
402
410
fprintf (stderr, " modifies the likelihood of token appearing in the completion,\n " );
403
411
fprintf (stderr, " i.e. `--logit-bias 15043+1` to increase likelihood of token ' Hello',\n " );
404
412
fprintf (stderr, " or `--logit-bias 15043-1` to decrease likelihood of token ' Hello'\n " );
405
- fprintf (stderr, " -c N, --ctx_size N size of the prompt context (default: %d)\n " , params.n_ctx );
413
+ fprintf (stderr, " -c N, --ctx-size N size of the prompt context (default: %d)\n " , params.n_ctx );
406
414
fprintf (stderr, " --ignore-eos ignore end of stream token and continue generating (implies --logit-bias 2-inf)\n " );
407
415
fprintf (stderr, " --no-penalize-nl do not penalize newline token\n " );
408
- fprintf (stderr, " --memory_f32 use f32 instead of f16 for memory key+value\n " );
416
+ fprintf (stderr, " --memory-f32 use f32 instead of f16 for memory key+value\n " );
409
417
fprintf (stderr, " --temp N temperature (default: %.1f)\n " , (double )params.temp );
410
- fprintf (stderr, " --n_parts N number of model parts (default: -1 = determine from dimensions)\n " );
411
- fprintf (stderr, " -b N, --batch_size N batch size for prompt processing (default: %d)\n " , params.n_batch );
418
+ fprintf (stderr, " --n-parts N number of model parts (default: -1 = determine from dimensions)\n " );
419
+ fprintf (stderr, " -b N, --batch-size N batch size for prompt processing (default: %d)\n " , params.n_batch );
412
420
fprintf (stderr, " --perplexity compute perplexity over the prompt\n " );
413
421
fprintf (stderr, " --keep number of tokens to keep from the initial prompt (default: %d, -1 = all)\n " , params.n_keep );
414
422
if (llama_mlock_supported ()) {
0 commit comments