mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2025-11-02 09:12:03 +00:00
json: better support for "type" unions (e.g. nullable arrays w/ typed items) (#7863)
* json: better suport for "type" arrays (e.g. `{"type": ["array", "null"], "items": {"type": "string"}}`)
* json: add test for type: [array, null] fix
* update tests
This commit is contained in:
@@ -993,6 +993,31 @@ static void test_json_schema() {
|
||||
}
|
||||
);
|
||||
|
||||
test_schema(
|
||||
"",
|
||||
// Schema
|
||||
R"""(
|
||||
{
|
||||
"type": ["array", "null"],
|
||||
"items": { "type": "string" }
|
||||
}
|
||||
)""",
|
||||
// Passing strings
|
||||
{
|
||||
"null",
|
||||
"[]",
|
||||
"[\"123\"]",
|
||||
"[\"foo\", \"bar\"]",
|
||||
},
|
||||
// Failing strings
|
||||
{
|
||||
"",
|
||||
"[123]",
|
||||
"\"foo\"",
|
||||
"[\"foo\", 42]",
|
||||
}
|
||||
);
|
||||
|
||||
test_schema(
|
||||
"min+max items",
|
||||
// Schema
|
||||
|
||||
Reference in New Issue
Block a user