llama.cpp
1945793e - server : fix response_format json_schema when schema is not nested in the json_schema wrapper (#28697)

Commit
7 hours ago
server : fix response_format json_schema when schema is not nested in the json_schema wrapper (#28697) * server : accept top-level schema in response_format with type json_schema The OpenAI-compatible chat completions endpoint only applied the schema when it was nested inside response_format.json_schema.schema. When the schema was provided directly as response_format.schema (as documented in the server README, and used by some clients), it was silently ignored and generation ran unconstrained. Also mention json_schema in the error message for invalid response_format types, document the OpenAI wrapper form in the README, and add a test case for the top-level schema form. Fixes #10732 * server : let the json_schema wrapper take precedence by presence Pick the schema source based on whether response_format has a json_schema key, instead of falling back when the parsed wrapper schema is empty. An empty schema {} is valid (any JSON value), so the old check let a top-level schema override an explicit {} in the wrapper. Use json_value() for the top-level schema too, like the rest of the function, and add tests for the precedence. --------- Co-authored-by: linsen <251731047+linsen458-spec@users.noreply.github.com>
Parents
Loading