diff --git a/backend/open_webui/routers/auths.py b/backend/open_webui/routers/auths.py index d90ebeb5e4..fd3c317ab9 100644 --- a/backend/open_webui/routers/auths.py +++ b/backend/open_webui/routers/auths.py @@ -687,7 +687,12 @@ async def signout(request: Request, response: Response): status_code=200, content={ "status": True, - "redirect_url": f"{logout_url}?id_token_hint={oauth_id_token}" + (f"&post_logout_redirect_uri={WEBUI_AUTH_SIGNOUT_REDIRECT_URL}" if WEBUI_AUTH_SIGNOUT_REDIRECT_URL else ""), + "redirect_url": f"{logout_url}?id_token_hint={oauth_id_token}" + + ( + f"&post_logout_redirect_uri={WEBUI_AUTH_SIGNOUT_REDIRECT_URL}" + if WEBUI_AUTH_SIGNOUT_REDIRECT_URL + else "" + ), }, headers=response.headers, ) diff --git a/backend/open_webui/routers/channels.py b/backend/open_webui/routers/channels.py index a356974d6b..a4173fbd8d 100644 --- a/backend/open_webui/routers/channels.py +++ b/backend/open_webui/routers/channels.py @@ -49,6 +49,7 @@ async def get_all_channels(user=Depends(get_verified_user)): return Channels.get_channels() return Channels.get_channels_by_user_id(user.id) + ############################ # CreateNewChannel ############################ diff --git a/backend/open_webui/routers/retrieval.py b/backend/open_webui/routers/retrieval.py index cc61350ca6..34910f23ef 100644 --- a/backend/open_webui/routers/retrieval.py +++ b/backend/open_webui/routers/retrieval.py @@ -1163,22 +1163,22 @@ def save_docs_to_vector_db( docs = text_splitter.split_documents(docs) elif request.app.state.config.TEXT_SPLITTER == "markdown_header": log.info("Using markdown header text splitter") - + # Define headers to split on - covering most common markdown header levels headers_to_split_on = [ ("#", "Header 1"), - ("##", "Header 2"), + ("##", "Header 2"), ("###", "Header 3"), ("####", "Header 4"), ("#####", "Header 5"), ("######", "Header 6"), ] - + markdown_splitter = MarkdownHeaderTextSplitter( headers_to_split_on=headers_to_split_on, strip_headers=False, # Keep headers in content for context ) - + md_split_docs = [] for doc in docs: md_header_splits = markdown_splitter.split_text(doc.page_content) @@ -1188,19 +1188,23 @@ def save_docs_to_vector_db( add_start_index=True, ) md_header_splits = text_splitter.split_documents(md_header_splits) - + # Convert back to Document objects, preserving original metadata for split_chunk in md_header_splits: headings_list = [] # Extract header values in order based on headers_to_split_on for _, header_meta_key_name in headers_to_split_on: if header_meta_key_name in split_chunk.metadata: - headings_list.append(split_chunk.metadata[header_meta_key_name]) - - md_split_docs.append(Document( - page_content=split_chunk.page_content, - metadata={**doc.metadata, "headings": headings_list} - )) + headings_list.append( + split_chunk.metadata[header_meta_key_name] + ) + + md_split_docs.append( + Document( + page_content=split_chunk.page_content, + metadata={**doc.metadata, "headings": headings_list}, + ) + ) docs = md_split_docs else: diff --git a/src/lib/components/admin/Settings/Audio.svelte b/src/lib/components/admin/Settings/Audio.svelte index ea576fabfe..9e68da7322 100644 --- a/src/lib/components/admin/Settings/Audio.svelte +++ b/src/lib/components/admin/Settings/Audio.svelte @@ -200,7 +200,9 @@ diff --git a/src/lib/components/notes/AIMenu.svelte b/src/lib/components/notes/AIMenu.svelte index 7e4a0a095c..68c1fbf505 100644 --- a/src/lib/components/notes/AIMenu.svelte +++ b/src/lib/components/notes/AIMenu.svelte @@ -30,7 +30,7 @@ class="w-full {className} text-sm rounded-xl px-1 py-1.5 z-50 bg-white dark:bg-gray-850 dark:text-white shadow-lg font-primary" sideOffset={8} side="bottom" - align="start" + align="end" transition={(e) => fade(e, { duration: 100 })} >