diff --git a/examples/server/server.cpp b/examples/server/server.cpp index 54be938fc..bef3b4090 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -452,69 +452,130 @@ bool server_params_parse(int argc, char **argv, server_params &sparams, gpt_para } bool parse_options_completion(json body, llama_server_context& llama, Response &res) { + gpt_params default_params; if (!body["as_loop"].is_null()) { llama.as_loop = body["as_loop"].get(); } if (!body["n_predict"].is_null()) { - llama.params.n_predict = body["n_predict"].get(); + llama.params.n_predict = body["n_predict"].get(); + } + else + { + llama.params.n_predict = default_params.n_predict; } if (!body["top_k"].is_null()) { - llama.params.top_k = body["top_k"].get(); + llama.params.top_k = body["top_k"].get(); + } + else + { + llama.params.top_k = default_params.top_k; } if (!body["top_p"].is_null()) { - llama.params.top_p = body["top_p"].get(); + llama.params.top_p = body["top_p"].get(); + } + else + { + llama.params.top_p = default_params.top_p; } if (!body["tfs_z"].is_null()) { - llama.params.tfs_z = body["tfs_z"].get(); + llama.params.tfs_z = body["tfs_z"].get(); + } + else + { + llama.params.tfs_z = default_params.tfs_z; } if (!body["typical_p"].is_null()) { - llama.params.typical_p = body["typical_p"].get(); + llama.params.typical_p = body["typical_p"].get(); + } + else + { + llama.params.typical_p = default_params.typical_p; } if (!body["repeat_last_n"].is_null()) { - llama.params.repeat_last_n = body["repeat_last_n"].get(); + llama.params.repeat_last_n = body["repeat_last_n"].get(); + } + else + { + llama.params.repeat_last_n = default_params.repeat_last_n; } if (!body["temperature"].is_null()) { - llama.params.temp = body["temperature"].get(); + llama.params.temp = body["temperature"].get(); + } + else + { + llama.params.temp = default_params.temp; } if (!body["repeat_penalty"].is_null()) { - llama.params.repeat_penalty = body["repeat_penalty"].get(); + llama.params.repeat_penalty = body["repeat_penalty"].get(); + } + else + { + llama.params.repeat_penalty = default_params.repeat_penalty; } if (!body["presence_penalty"].is_null()) { - llama.params.presence_penalty = body["presence_penalty"].get(); + llama.params.presence_penalty = body["presence_penalty"].get(); + } + else + { + llama.params.presence_penalty = default_params.presence_penalty; } if (!body["frequency_penalty"].is_null()) { - llama.params.frequency_penalty = body["frequency_penalty"].get(); + llama.params.frequency_penalty = body["frequency_penalty"].get(); + } + else + { + llama.params.frequency_penalty = default_params.frequency_penalty; } if (!body["mirostat"].is_null()) { - llama.params.mirostat = body["mirostat"].get(); + llama.params.mirostat = body["mirostat"].get(); + } + else + { + llama.params.mirostat = default_params.mirostat; } if (!body["mirostat_tau"].is_null()) { - llama.params.mirostat_tau = body["mirostat_tau"].get(); + llama.params.mirostat_tau = body["mirostat_tau"].get(); + } + else + { + llama.params.mirostat_tau = default_params.mirostat_tau; } if (!body["mirostat_eta"].is_null()) { - llama.params.mirostat_eta = body["mirostat_eta"].get(); + llama.params.mirostat_eta = body["mirostat_eta"].get(); + } + else + { + llama.params.mirostat_eta = default_params.mirostat_eta; } if (!body["penalize_nl"].is_null()) { - llama.params.penalize_nl = body["penalize_nl"].get(); + llama.params.penalize_nl = body["penalize_nl"].get(); + } + else + { + llama.params.penalize_nl = default_params.penalize_nl; } if (!body["n_keep"].is_null()) { - llama.params.n_keep = body["n_keep"].get(); + llama.params.n_keep = body["n_keep"].get(); + } + else + { + llama.params.n_keep = default_params.n_keep; } if (!body["seed"].is_null()) { @@ -541,6 +602,10 @@ bool parse_options_completion(json body, llama_server_context& llama, Response & { llama.params.antiprompt = body["stop"].get>(); } + else + { + llama.params.antiprompt.clear(); + } return true; }