If you stream tool calls or structured output from an LLM, you have almost certainly seen one of these in production:

json.decoder.JSONDecodeError: Unterminated string starting at: line 1 column 12 (char 11)

serde_json::Error: EOF while parsing a string at line 1 column 4096

Enter fullscreen mode

Exit fullscreen mode