Seam behaviour for LLM completion.
Implementations supply structured completion (complete_structured/4,
complete_json_schema/4) and, optionally, native tool-calling
(complete_with_tools/2 — omit it and the agentic reflect loop falls back to
the fixed structured pipeline). supports_tool_calling?/1 detects which kind
of backend a module is.
Summary
Callbacks
Tool-calling send used by the agentic reflect loop (C6): given a message list
and tools: in opts, return the raw provider response carrying tool_calls.
Optional — providers/fakes that cannot do native tool-calling omit it, and the
reflect path falls back to the fixed structured pipeline.
Functions
Whether llm implements native tool-calling (drives the agentic-vs-fixed reflect dispatch).
Callbacks
Tool-calling send used by the agentic reflect loop (C6): given a message list
and tools: in opts, return the raw provider response carrying tool_calls.
Optional — providers/fakes that cannot do native tool-calling omit it, and the
reflect path falls back to the fixed structured pipeline.