- Synthesis nudge (both route-level and loop-level) now only applies to small models (<9B). Large models handle multi-step tool use correctly (e.g. web_search(query) -> web_search(url=...) -> python(...)) and should not be told "Tool calls are no longer needed." - Added synthesise_after_tool_result parameter to generate_chat_completion_with_tools(). Routes pass True only when _is_small_model, so the loop-level nudge is also model-size-aware. - Renamed _has_tool_result_in_current_turn to _has_successful_tool_result_in_current_turn. Now checks tool result content against error prefixes (Error, Failed to fetch, Blocked, etc.) so error-only tool results don't prematurely force synthesis -- the model can retry with a different query instead. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| _html_to_md.py | ||
| anthropic_compat.py | ||
| audio_codecs.py | ||
| defaults.py | ||
| inference.py | ||
| llama_cpp.py | ||
| orchestrator.py | ||
| tools.py | ||
| worker.py | ||