• Stefy Lanza (nextime / spora )'s avatar
    parser: gemma tool-call heuristic gets a full|restricted|off mode (per-model) · c7105023
    Stefy Lanza (nextime / spora ) authored
    The gemma-4 native call:NAME{…} heuristic could eat legitimate text: the content
    stripper removed ANY call:/response:{…} span with no tool-name restriction, so a
    coding reply containing e.g. call:foo{…} in prose or a snippet got silently
    deleted; and with no tools declared the parser matched any call:word{.
    
    Add a 3-way mode, resolved per-model (models.json "gemma_tool_parser") over the
    global models.gemma_tool_parser (default "restricted"):
      * full       - parse & strip every call:/response: span (old behavior)
      * restricted - only when NAME is a declared tool; legit call:foo{…} prose/code
                     is preserved, real declared-tool calls still parse & strip
      * off        - disable the gemma heuristic entirely (bigger models that emit
                     standard structured tool calls)
    
    resolve_gemma_tool_mode() + a centralized strip_gemma_native() now gate both the
    parse (GemmaParser, via the dispatcher) and the strip (ModelParserAdapter and the
    streaming ToolCallParser, which now stashes the declared tool names from
    extract_tool_calls so 'restricted' works on the streaming finalizer too).
    Co-Authored-By: 's avatarClaude Opus 4.8 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01RdMufYvtTbtGDWsiZVoXce
    c7105023
Name
Last commit
Last update
..
admin Loading commit data...
api Loading commit data...
backends Loading commit data...
broker Loading commit data...
frontproxy Loading commit data...
models Loading commit data...
openai Loading commit data...
pydantic Loading commit data...
queue Loading commit data...
tasks Loading commit data...
__init__.py Loading commit data...
cli.py Loading commit data...
config.py Loading commit data...
main.py Loading commit data...
platform_paths.py Loading commit data...
system_app.py Loading commit data...