Skip to content

v0.11.4

Choose a tag to compare

@github-actions github-actions released this 07 Jul 14:49
b5283ea

Gemma local-model support, from a real gemma-2-2b-it session on llama.cpp.

Added

  • Parse Gemma's tool_code tool-call format. Gemma emits tool calls as a
    ```tool_code fenced Python call — write_file("/p", """…"""),
    sometimes wrapped in print(...). The harness only understood JSON/<tools>,
    so it treated the call as prose and (eventually) published an empty artifact.
    The recovery parser now handles the Python-call syntax: it unwraps print(),
    splits arguments while skipping triple/single/double-quoted strings, and maps
    keyword and positional args through each tool's signature. Verified: Gemma's
    write_file now executes on the first attempt.

Fixed

  • Gemma multi-turn no longer crashes on the chat template. Gemma's llama.cpp
    template rejects the system/tool roles and requires strictly alternating
    user/assistant turns, so any turn carrying a tool result 400'd and the agentic
    loop died after one step. On such a template error the OpenAI-compatible path
    now retries once with a flattened, strictly-alternating message body. (qwen's
    template accepts the standard roles, so its path is unchanged.)

What's Changed

  • release: 0.11.4 — Gemma local-model support (tool_code parsing + template-role flatten) by @geaglin in #46

Full Changelog: v0.11.3...v0.11.4

Gemma local-model support, from a real gemma-2-2b-it session on llama.cpp.

Added

  • Parse Gemma's tool_code tool-call format. Gemma emits tool calls as a
    ```tool_code fenced Python call — write_file("/p", """…"""),
    sometimes wrapped in print(...). The harness only understood JSON/<tools>,
    so it treated the call as prose and (eventually) published an empty artifact.
    The recovery parser now handles the Python-call syntax: it unwraps print(),
    splits arguments while skipping triple/single/double-quoted strings, and maps
    keyword and positional args through each tool's signature. Verified: Gemma's
    write_file now executes on the first attempt.

Fixed

  • Gemma multi-turn no longer crashes on the chat template. Gemma's llama.cpp
    template rejects the system/tool roles and requires strictly alternating
    user/assistant turns, so any turn carrying a tool result 400'd and the agentic
    loop died after one step. On such a template error the OpenAI-compatible path
    now retries once with a flattened, strictly-alternating message body. (qwen's
    template accepts the standard roles, so its path is unchanged.)

What's Changed

  • release: 0.11.4 — Gemma local-model support (tool_code parsing + template-role flatten) by @geaglin in #46

Full Changelog: v0.11.3...v0.11.4

Gemma local-model support, from a real gemma-2-2b-it session on llama.cpp.

Added

  • Parse Gemma's tool_code tool-call format. Gemma emits tool calls as a
    ```tool_code fenced Python call — write_file("/p", """…"""),
    sometimes wrapped in print(...). The harness only understood JSON/<tools>,
    so it treated the call as prose and (eventually) published an empty artifact.
    The recovery parser now handles the Python-call syntax: it unwraps print(),
    splits arguments while skipping triple/single/double-quoted strings, and maps
    keyword and positional args through each tool's signature. Verified: Gemma's
    write_file now executes on the first attempt.

Fixed

  • Gemma multi-turn no longer crashes on the chat template. Gemma's llama.cpp
    template rejects the system/tool roles and requires strictly alternating
    user/assistant turns, so any turn carrying a tool result 400'd and the agentic
    loop died after one step. On such a template error the OpenAI-compatible path
    now retries once with a flattened, strictly-alternating message body. (qwen's
    template accepts the standard roles, so its path is unchanged.)

What's Changed

  • release: 0.11.4 — Gemma local-model support (tool_code parsing + template-role flatten) by @geaglin in #46

Full Changelog: v0.11.3...v0.11.4

Gemma local-model support, from a real gemma-2-2b-it session on llama.cpp.

Added

  • Parse Gemma's tool_code tool-call format. Gemma emits tool calls as a
    ```tool_code fenced Python call — write_file("/p", """…"""),
    sometimes wrapped in print(...). The harness only understood JSON/<tools>,
    so it treated the call as prose and (eventually) published an empty artifact.
    The recovery parser now handles the Python-call syntax: it unwraps print(),
    splits arguments while skipping triple/single/double-quoted strings, and maps
    keyword and positional args through each tool's signature. Verified: Gemma's
    write_file now executes on the first attempt.

Fixed

  • Gemma multi-turn no longer crashes on the chat template. Gemma's llama.cpp
    template rejects the system/tool roles and requires strictly alternating
    user/assistant turns, so any turn carrying a tool result 400'd and the agentic
    loop died after one step. On such a template error the OpenAI-compatible path
    now retries once with a flattened, strictly-alternating message body. (qwen's
    template accepts the standard roles, so its path is unchanged.)

What's Changed

  • release: 0.11.4 — Gemma local-model support (tool_code parsing + template-role flatten) by @geaglin in #46

Full Changelog: v0.11.3...v0.11.4