From 5aa2d01c17cc1284ab1168850c2ba6b6fa3b7fd5 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Tue, 11 Nov 2025 00:08:05 -0500 Subject: [PATCH] refac/fix: rag template placeholder substitution --- backend/open_webui/utils/task.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/backend/open_webui/utils/task.py b/backend/open_webui/utils/task.py index 84c9308dc1..7f90e96330 100644 --- a/backend/open_webui/utils/task.py +++ b/backend/open_webui/utils/task.py @@ -208,20 +208,21 @@ def rag_template(template: str, context: str, query: str): if "[query]" in context: query_placeholder = "{{QUERY" + str(uuid.uuid4()) + "}}" template = template.replace("[query]", query_placeholder) - query_placeholders.append(query_placeholder) + query_placeholders.append((query_placeholder, "[query]")) if "{{QUERY}}" in context: query_placeholder = "{{QUERY" + str(uuid.uuid4()) + "}}" template = template.replace("{{QUERY}}", query_placeholder) - query_placeholders.append(query_placeholder) + query_placeholders.append((query_placeholder, "{{QUERY}}")) template = template.replace("[context]", context) template = template.replace("{{CONTEXT}}", context) + template = template.replace("[query]", query) template = template.replace("{{QUERY}}", query) - for query_placeholder in query_placeholders: - template = template.replace(query_placeholder, query) + for query_placeholder, original_placeholder in query_placeholders: + template = template.replace(query_placeholder, original_placeholder) return template