diff --git a/backend/open_webui/apps/webui/routers/files.py b/backend/open_webui/apps/webui/routers/files.py index ba49f03cf..b22377414 100644 --- a/backend/open_webui/apps/webui/routers/files.py +++ b/backend/open_webui/apps/webui/routers/files.py @@ -47,6 +47,12 @@ def upload_file(file: UploadFile = File(...), user=Depends(get_verified_user)): file_path = f"{UPLOAD_DIR}/{filename}" contents = file.file.read() + if len(contents) == 0: + raise HTTPException( + status_code=status.HTTP_400_BAD_REQUEST, + detail=ERROR_MESSAGES.EMPTY_CONTENT, + ) + with open(file_path, "wb") as f: f.write(contents) f.close() diff --git a/src/lib/components/workspace/Knowledge/Collection.svelte b/src/lib/components/workspace/Knowledge/Collection.svelte index 6b30afc2f..4dd029040 100644 --- a/src/lib/components/workspace/Knowledge/Collection.svelte +++ b/src/lib/components/workspace/Knowledge/Collection.svelte @@ -124,6 +124,11 @@ itemId: tempItemId }; + if (fileItem.size == 0) { + toast.error($i18n.t('File must have content to be uploaded')); + return null; + } + knowledge.files = [...(knowledge.files ?? []), fileItem]; // Check if the file is an audio file and transcribe/convert it to text file