When structured output is requested, the model must call the
StructuredOutput tool instead of responding with plain text.
Changes:
- Add toolChoice parameter to LLM.StreamInput
- Pass toolChoice: "required" to streamText when outputFormat is json_schema
- This forces the model to call a tool, ensuring structured output is captured