Skip to content

Commit bd8dfef

Browse files
sena-labsclaude
andcommitted
docs: correct two inaccurate FAQ answers verified against official docs
Q1 (tool calling): the previous answer implied a single one-shot forward. Open WebUI actually re-invokes the pipe iteratively after each tool execution, appending role:tool messages to the thread each round. Q2 (FREE_ONLY): removed the google/gemma-* and qwen/qwen3-* examples, which are now incorrect — those models carry an explicit :free suffix. The two-pass detection logic (suffix check + pricing fields) is unchanged. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent a99832e commit bd8dfef

1 file changed

Lines changed: 8 additions & 5 deletions

File tree

README.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -296,15 +296,18 @@ Some models may be temporarily unavailable. Try a different model or check
296296

297297
**Q: Does this work with Open WebUI's native tool calling?**
298298

299-
A: Tool calling is handled by Open WebUI before the pipe receives the request — the pipe forwards
300-
the composed messages as-is. Whether a given OpenRouter model supports tool use depends on
299+
A: Open WebUI manages tool calling in an iterative loop: when the pipe's response contains
300+
tool calls, Open WebUI executes them, appends the results as `role: "tool"` messages, and
301+
re-invokes the pipe with the updated thread. The pipe forwards the full message list to
302+
OpenRouter on each invocation. Whether a model can generate tool calls depends on
301303
OpenRouter's provider support for that model.
302304

303305
**Q: Why does `FREE_ONLY` include models without a `:free` suffix?**
304306

305-
A: Some models (e.g. `google/gemma-*`, `qwen/qwen3-*`) are genuinely free but are not suffixed
306-
with `:free`. The pipe checks both the suffix and the actual pricing (`0/0` prompt and completion
307-
cost) to catch these cases.
307+
A: Some models are listed as free on OpenRouter without carrying a `:free` suffix in their
308+
ID. The pipe uses a two-pass check: first it looks for the `:free` suffix, then it falls
309+
back to inspecting the `pricing.prompt` and `pricing.completion` fields returned by the
310+
OpenRouter `/models` endpoint — if both are `0`, the model is treated as free.
308311

309312
**Q: Can I use multiple provider filters at once?**
310313

0 commit comments

Comments
 (0)