This commit is contained in:
Timothy Jaeryang Baek
2026-03-07 19:38:20 -06:00
parent 967b1137dc
commit 80b5896b70
+5 -21
View File
@@ -2241,34 +2241,18 @@ async def process_chat_payload(request, form_data, user, metadata, model):
folder.data["system_prompt"], form_data, metadata, user folder.data["system_prompt"], form_data, metadata, user
) )
if "files" in folder.data: if "files" in folder.data:
folder_files = folder.data["files"]
if ( if (
metadata.get("params", {}).get("function_calling") metadata.get("params", {}).get("function_calling")
== "native" != "native"
): ):
# Native FC: knowledge files will be handled by the
# builtin query_knowledge_files tool, not RAG.
knowledge_files = [
f
for f in folder_files
if f.get("type") == "collection"
or f.get("collection_names")
]
attachment_files = [
f
for f in folder_files
if f not in knowledge_files
]
form_data["files"] = [ form_data["files"] = [
*attachment_files, *folder.data["files"],
*form_data.get("files", []), *form_data.get("files", []),
] ]
metadata["folder_knowledge"] = knowledge_files
else: else:
form_data["files"] = [ # Native FC: skip RAG injection, builtin tools
*folder_files, # will read folder knowledge from metadata.
*form_data.get("files", []), metadata["folder_knowledge"] = folder.data["files"]
]
# Model "Knowledge" handling # Model "Knowledge" handling
user_message = get_last_user_message(form_data["messages"]) user_message = get_last_user_message(form_data["messages"])