From baeecbb9d1b16e3d1b02b6a1236172aeb01d890f Mon Sep 17 00:00:00 2001 From: weberm1 Date: Fri, 23 May 2025 10:49:54 +0200 Subject: [PATCH] Feat: Added rag config settings and adjusted file uploads to handle individual rag config --- .../workspace/Knowledge/KnowledgeBase.svelte | 55 ++++++++++++++++--- 1 file changed, 47 insertions(+), 8 deletions(-) diff --git a/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte b/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte index 7b318703b..f4c90d057 100644 --- a/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte +++ b/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte @@ -45,6 +45,7 @@ import ChevronLeft from '$lib/components/icons/ChevronLeft.svelte'; import LockClosed from '$lib/components/icons/LockClosed.svelte'; import AccessControlModal from '../common/AccessControlModal.svelte'; + import RagConfigModal from '../common/RagConfigModal.svelte'; let largeScreen = true; @@ -69,7 +70,8 @@ let showAddTextContentModal = false; let showSyncConfirmModal = false; let showAccessControlModal = false; - + let showRagConfigModal = false; + let inputFiles = null; let filteredItems = []; @@ -118,7 +120,7 @@ return file; }; - const uploadFileHandler = async (file) => { + const uploadFileHandler = async (file, knowledgeId) => { console.log(file); const tempItemId = uuidv4(); @@ -158,7 +160,7 @@ knowledge.files = [...(knowledge.files ?? []), fileItem]; try { - const uploadedFile = await uploadFile(localStorage.token, file).catch((e) => { + const uploadedFile = await uploadFile(localStorage.token, file, knowledgeId).catch((e) => { toast.error(`${e}`); return null; }); @@ -249,7 +251,7 @@ const file = await entry.getFile(); const fileWithPath = new File([file], entryPath, { type: file.type }); - await uploadFileHandler(fileWithPath); + await uploadFileHandler(fileWithPath, id); uploadedFiles++; updateProgress(); } else if (entry.kind === 'directory') { @@ -311,7 +313,7 @@ const relativePath = file.webkitRelativePath || file.name; const fileWithPath = new File([file], relativePath, { type: file.type }); - await uploadFileHandler(fileWithPath); + await uploadFileHandler(fileWithPath, id); uploadedFiles++; updateProgress(); } @@ -509,7 +511,7 @@ if (inputFiles && inputFiles.length > 0) { for (const file of inputFiles) { - await uploadFileHandler(file); + await uploadFileHandler(file, id); } } else { toast.error($i18n.t(`File not found.`)); @@ -628,7 +630,7 @@ bind:show={showAddTextContentModal} on:submit={(e) => { const file = createFileFromText(e.detail.name, e.detail.content); - uploadFileHandler(file); + uploadFileHandler(file, id); }} /> @@ -641,7 +643,7 @@ on:change={async () => { if (inputFiles && inputFiles.length > 0) { for (const file of inputFiles) { - await uploadFileHandler(file); + await uploadFileHandler(file, id); } inputFiles = null; @@ -667,6 +669,16 @@ }} accessRoles={['read', 'write']} /> + {#if knowledge.rag_config.DEFAULT_RAG_SETTINGS == false} + { + knowledge.rag_config = e.detail; // sync updated config + }} + /> + {/if}
@@ -698,6 +710,33 @@
+ + {#if knowledge.rag_config.DEFAULT_RAG_SETTINGS == false} + + {/if}