Ollama 0.34.4 lar tenkende modeller resonnere før de svarer i JSON
Oppdater til Ollama 0.34.4 hvis du ber tenkende modeller om strukturert JSON, for nå tenker modellen ferdig før skjemaet begrenser svaret.
Ollama 0.34.4 legger JSON-skjemaet på tenkende modeller i én enkelt generering, og commiten bak endringen lukker fire feilrapporter på GitHub. To av dem viser hva som gikk galt. På 0.32.5 la /api/generate grammatikken på fra første token, så modellen fikk aldri tenke: qwen3:0.6b svarte med plassholderen «user_answer» på 17 × 23, mens /api/chat med samme modell, prompt og seed ga 391. På 0.34.0 ga /api/chat et løst punktum foran JSON-en i 8 av 10 forsøk med qwen3.8:27b-mlx på MLX-motoren.
Chat-veien kjørte nemlig to genereringer: en fri, som ble avbrutt da parseren så innhold, og en ny med tenkingen under grammatikken.
«Omstarten kostet en ekstra prefill, mistet biten som krysset grensen … og kunne på MLX lekke et løst første token inn i JSON-en» — commit-meldingen bak endringen i Ollama-repoet
I 0.34.4 sender serveren i stedet med strengene som avslutter tenkingen, og runneren begrenser bare det som kommer etter dem. Prompten evalueres én gang. For llama.cpp-veien lar Ollama llama-server oversette skjemaet til en GBNF-grammatikk og pakker den inn i regler som gjenkjenner avslutningsstrengene. På qwen3 0.6b ved temperatur 0 er tenkingen byte-identisk med og uten format, ifølge utviklerne.
Én atferdsendring kan treffe agentkode: formatet gjelder nå alt som følger tenkingen, så et tool call kan ikke lenger erstatte det formaterte svaret. Slik var det allerede med tenking slått av, og harmony-formatet er unntaket. En rå prompt via /api/generate har ingen avslutningsstreng, så der gjelder formatet fra første token som før.
Utgivelsen retter også sporadiske «model not found»-feil med store lokale modellbiblioteker. På Apple Silicon får Qwen 3.8 raskere promptbehandling og Gemma 4 velger bildeoppløsning per bilde.
Hva bør du gjøre?
- Oppdater til 0.34.4 og fjern omveier du har bygd rundt feilen, som et eget kall uten
formatfor å få tenkingen, eller kode som skreller bort tegn foran JSON-en. - Test agentløkker som setter både
formatog tools på en tenkende modell, siden modellen nå må levere formatert innhold der den før kunne svare med et tool call.
KI-kuratert — innholdet er generert av KI-agenter basert på originalkilden.