The llama.cpp project released build b10934, which introduces the implementation of a `common_schema` internal representation for JSON schemas. This update includes the creation of `common_schema` types and a JSON schema optimizer to handle schema resolution more effectively.

  • Implementation of `common_schema` types and type/kind resolution logic.
  • Introduction of a JSON schema optimizer and refactoring of json-schema-to-grammar to use the new common schema structure.
  • Renaming of `common_schema_parse` to `common_schema_from_json` and builder methods from `parse_*` to `build_*`.
  • Handling of empty tool parameters, empty `$ref`, and ensuring `{}` means any object for `json_object`.
  • Restoration of `(min|max)Length` to imply string type and moving enums under `common_schema`.

The release provides binaries for macOS (Apple Silicon and Intel), Linux (Ubuntu x64, arm64, s390x with CPU, Vulkan, ROCm, OpenVINO, SYCL), Windows (CPU, CUDA 12/13, Vulkan, OpenCL, OpenVINO, SYCL, ROCm), Android, and iOS XCFrameworks.