| 86 | } |
| 87 | |
| 88 | JsonValue model_parameters_from(const GenerateOptions& options) { |
| 89 | JsonValue params = JsonValue::object(); |
| 90 | if (options.temperature) |
| 91 | params["temperature"] = *options.temperature; |
| 92 | if (options.max_tokens) |
| 93 | params["max_tokens"] = *options.max_tokens; |
| 94 | if (options.top_p) |
| 95 | params["top_p"] = *options.top_p; |
| 96 | if (options.seed) |
| 97 | params["seed"] = *options.seed; |
| 98 | if (options.frequency_penalty) |
| 99 | params["frequency_penalty"] = *options.frequency_penalty; |
| 100 | if (options.presence_penalty) |
| 101 | params["presence_penalty"] = *options.presence_penalty; |
| 102 | if (options.max_steps > 1) |
| 103 | params["max_steps"] = options.max_steps; |
| 104 | return params; |
| 105 | } |
| 106 | |
| 107 | JsonValue messages_input_from(const GenerateOptions& options) { |
| 108 | JsonValue arr = JsonValue::array(); |