瀏覽代碼

Merge pull request #16821 from open-webui/dev

0.6.25
Tim Jaeryang Baek 1 月之前
父節點
當前提交
1db8dec4f5
共有 6 個文件被更改,包括 58 次插入18 次删除
  1. 7 0
      CHANGELOG.md
  2. 1 1
      backend/open_webui/retrieval/utils.py
  3. 32 10
      backend/open_webui/routers/files.py
  4. 15 4
      backend/open_webui/routers/images.py
  5. 2 2
      package-lock.json
  6. 1 1
      package.json

+ 7 - 0
CHANGELOG.md

@@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
 and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
 
+## [0.6.25] - 2025-08-22
+
+### Fixed
+
+- 🖼️ **Image Generation Reliability Restored**: Fixed a key issue causing image generation failures.
+- 🏆 **Reranking Functionality Restored**: Resolved errors with rerank feature.
+
 ## [0.6.24] - 2025-08-21
 
 ### Added

+ 1 - 1
backend/open_webui/retrieval/utils.py

@@ -966,7 +966,7 @@ class RerankCompressor(BaseDocumentCompressor):
             )
             scores = util.cos_sim(query_embedding, document_embedding)[0]
 
-        if scores:
+        if scores is not None:
             docs_with_scores = list(
                 zip(
                     documents,

+ 32 - 10
backend/open_webui/routers/files.py

@@ -144,6 +144,17 @@ def upload_file(
     metadata: Optional[dict | str] = Form(None),
     process: bool = Query(True),
     user=Depends(get_verified_user),
+):
+    return upload_file_handler(request, file, metadata, process, user, background_tasks)
+
+
+def upload_file_handler(
+    request: Request,
+    file: UploadFile = File(...),
+    metadata: Optional[dict | str] = Form(None),
+    process: bool = Query(True),
+    user=Depends(get_verified_user),
+    background_tasks: Optional[BackgroundTasks] = None,
 ):
     log.info(f"file.content_type: {file.content_type}")
 
@@ -214,16 +225,27 @@ def upload_file(
         )
 
         if process:
-            background_tasks.add_task(
-                process_uploaded_file,
-                request,
-                file,
-                file_path,
-                file_item,
-                file_metadata,
-                user,
-            )
-            return {"status": True, **file_item.model_dump()}
+            if background_tasks:
+                background_tasks.add_task(
+                    process_uploaded_file,
+                    request,
+                    file,
+                    file_path,
+                    file_item,
+                    file_metadata,
+                    user,
+                )
+                return {"status": True, **file_item.model_dump()}
+            else:
+                process_uploaded_file(
+                    request,
+                    file,
+                    file_path,
+                    file_item,
+                    file_metadata,
+                    user,
+                )
+                return {"status": True, **file_item.model_dump()}
         else:
             if file_item:
                 return file_item

+ 15 - 4
backend/open_webui/routers/images.py

@@ -10,11 +10,18 @@ from typing import Optional
 
 from urllib.parse import quote
 import requests
-from fastapi import APIRouter, Depends, HTTPException, Request, UploadFile
+from fastapi import (
+    APIRouter,
+    Depends,
+    HTTPException,
+    Request,
+    UploadFile,
+)
+
 from open_webui.config import CACHE_DIR
 from open_webui.constants import ERROR_MESSAGES
 from open_webui.env import ENABLE_FORWARD_USER_INFO_HEADERS, SRC_LOG_LEVELS
-from open_webui.routers.files import upload_file
+from open_webui.routers.files import upload_file_handler
 from open_webui.utils.auth import get_admin_user, get_verified_user
 from open_webui.utils.images.comfyui import (
     ComfyUIGenerateImageForm,
@@ -469,8 +476,12 @@ def upload_image(request, image_data, content_type, metadata, user):
             "content-type": content_type,
         },
     )
-    file_item = upload_file(
-        request, file=file, metadata=metadata, process=False, user=user
+    file_item = upload_file_handler(
+        request,
+        file=file,
+        metadata=metadata,
+        process=False,
+        user=user,
     )
     url = request.app.url_path_for("get_file_content_by_id", id=file_item.id)
     return url

+ 2 - 2
package-lock.json

@@ -1,12 +1,12 @@
 {
 	"name": "open-webui",
-	"version": "0.6.24",
+	"version": "0.6.25",
 	"lockfileVersion": 3,
 	"requires": true,
 	"packages": {
 		"": {
 			"name": "open-webui",
-			"version": "0.6.24",
+			"version": "0.6.25",
 			"dependencies": {
 				"@azure/msal-browser": "^4.5.0",
 				"@codemirror/lang-javascript": "^6.2.2",

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
 	"name": "open-webui",
-	"version": "0.6.24",
+	"version": "0.6.25",
 	"private": true,
 	"scripts": {
 		"dev": "npm run pyodide:fetch && vite dev --host",