问题本质 部分 Ollama 模型(尤其带 internlm / qwen / chatglm 等“思维”功能的)默认会在答案前加上 <|im_start|>assistant 或 <think>…</think> 推理块,导致结果 既不符合纯 JSON,PydanticOutputParser 解析必然失败。
可行策略 使用原生 JSON-Mode / function-call(首选)
Ollama ≥0.1.27 支持请求参数
self.llm = ChatOllama( model=OLLAMA_MODEL, base_url=OLLAMA_BASE_URL, format="json" # <-- 关键 ) 或在 prompt 中加 "tool": { "name": "output", "parameters": {.