Timothy Jaeryang Baek 2 月之前
父节点
当前提交
18bd83413b

+ 2 - 0
backend/open_webui/retrieval/utils.py

@@ -446,6 +446,8 @@ def get_embedding_function(
 
 
 def get_reranking_function(reranking_engine, reranking_model, reranking_function):
+    if reranking_function is None:
+        return None
     if reranking_engine == "external":
         return lambda sentences, user=None: reranking_function.predict(
             sentences, user=user

+ 6 - 2
backend/open_webui/routers/retrieval.py

@@ -2049,8 +2049,12 @@ def query_doc_handler(
                     query, prefix=prefix, user=user
                 ),
                 k=form_data.k if form_data.k else request.app.state.config.TOP_K,
-                reranking_function=lambda sentences: request.app.state.RERANKING_FUNCTION(
-                    sentences, user=user
+                reranking_function=(
+                    lambda sentences: (
+                        request.app.state.RERANKING_FUNCTION(sentences, user=user)
+                        if request.app.state.RERANKING_FUNCTION
+                        else None
+                    )
                 ),
                 k_reranker=form_data.k_reranker
                 or request.app.state.config.TOP_K_RERANKER,

+ 8 - 2
backend/open_webui/utils/middleware.py

@@ -652,8 +652,14 @@ async def chat_completion_files_handler(
                             query, prefix=prefix, user=user
                         ),
                         k=request.app.state.config.TOP_K,
-                        reranking_function=lambda sentences: request.app.state.RERANKING_FUNCTION(
-                            sentences, user=user
+                        reranking_function=(
+                            lambda sentences: (
+                                request.app.state.RERANKING_FUNCTION(
+                                    sentences, user=user
+                                )
+                                if request.app.state.RERANKING_FUNCTION
+                                else None
+                            )
                         ),
                         k_reranker=request.app.state.config.TOP_K_RERANKER,
                         r=request.app.state.config.RELEVANCE_THRESHOLD,