diff --git a/backend/open_webui/retrieval/loaders/external.py b/backend/open_webui/retrieval/loaders/external.py index dd67035fd..642cfd3a5 100644 --- a/backend/open_webui/retrieval/loaders/external.py +++ b/backend/open_webui/retrieval/loaders/external.py @@ -19,9 +19,6 @@ class ExternalLoader(BaseLoader): continue_on_failure: bool = True, **kwargs, ) -> None: - if not web_paths: - raise ValueError("At least one URL must be provided.") - self.external_url = external_url self.external_api_key = external_api_key self.urls = web_paths if isinstance(web_paths, list) else [web_paths] @@ -32,13 +29,13 @@ class ExternalLoader(BaseLoader): for i in range(0, len(self.urls), batch_size): urls = self.urls[i : i + batch_size] try: - response = requests.get( + response = requests.post( self.external_url, headers={ "User-Agent": "Open WebUI (https://github.com/open-webui/open-webui) RAG Bot", "Authorization": f"Bearer {self.external_api_key}", }, - params={ + json={ "urls": urls, }, ) diff --git a/backend/open_webui/retrieval/web/external.py b/backend/open_webui/retrieval/web/external.py index f0a97fcfd..a5c8003e4 100644 --- a/backend/open_webui/retrieval/web/external.py +++ b/backend/open_webui/retrieval/web/external.py @@ -17,13 +17,13 @@ def search_external( filter_list: Optional[List[str]] = None, ) -> List[SearchResult]: try: - response = requests.get( + response = requests.post( external_url, headers={ "User-Agent": "Open WebUI (https://github.com/open-webui/open-webui) RAG Bot", "Authorization": f"Bearer {external_api_key}", }, - params={ + json={ "query": query, "count": count, }, @@ -32,7 +32,7 @@ def search_external( results = response.json() if filter_list: results = get_filtered_results(results, filter_list) - return [ + results = [ SearchResult( link=result.get("link"), title=result.get("title"), @@ -40,6 +40,8 @@ def search_external( ) for result in results[:count] ] + log.info(f"External search results: {results}") + return results except Exception as e: log.error(f"Error in External search: {e}") return []