From 9f34e858c7d4f27684595f8b23b6843b9f41b222 Mon Sep 17 00:00:00 2001 From: Hrushikesh Yadav <136978914+HrushiYadav@users.noreply.github.com> Date: Tue, 16 Jun 2026 15:37:22 +0530 Subject: [PATCH] fix(ollama): json format mutates caller's messages list in-place (#5539) --- mem0/llms/ollama.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mem0/llms/ollama.py b/mem0/llms/ollama.py index 74d59c0d1..af976dc24 100644 --- a/mem0/llms/ollama.py +++ b/mem0/llms/ollama.py @@ -119,11 +119,12 @@ class OllamaLLM(LLMBase): # Handle JSON response format by using Ollama's native format parameter if response_format and response_format.get("type") == "json_object": params["format"] = "json" - # Also add JSON format instruction to the last message as a fallback + messages = [dict(m) for m in messages] if messages and messages[-1]["role"] == "user": messages[-1]["content"] += "\n\nPlease respond with valid JSON only." else: messages.append({"role": "user", "content": "Please respond with valid JSON only."}) + params["messages"] = messages # Add options for Ollama (temperature, num_predict, top_p) options = {