diff --git a/api/server/controllers/agents/client.js b/api/server/controllers/agents/client.js index 63b1cdbc5f..ec18c51f6c 100644 --- a/api/server/controllers/agents/client.js +++ b/api/server/controllers/agents/client.js @@ -245,7 +245,21 @@ class AgentClient extends BaseClient { this.addImageURLs(message, attachments), this.addDocuments(message, attachments), ]); - return [...imageFiles, ...documentFiles]; + + const allFiles = [...imageFiles, ...documentFiles]; + const seenFileIds = new Set(); + const uniqueFiles = []; + + for (const file of allFiles) { + if (file.file_id && !seenFileIds.has(file.file_id)) { + seenFileIds.add(file.file_id); + uniqueFiles.push(file); + } else if (!file.file_id) { + uniqueFiles.push(file); + } + } + + return uniqueFiles; } async buildMessages(