Skip to content

Commit 11e0768

Browse files
committed
refac
1 parent cfd2888 commit 11e0768

1 file changed

Lines changed: 14 additions & 4 deletions

File tree

backend/open_webui/models/knowledge.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from typing import Optional
55
import uuid
66

7-
from sqlalchemy import select, delete, update, or_, func
7+
from sqlalchemy import select, delete, update, or_, func, cast
88
from sqlalchemy.ext.asyncio import AsyncSession
99
from open_webui.internal.db import Base, JSONField, get_async_db_context
1010

@@ -313,11 +313,16 @@ async def search_knowledge_files(
313313
permission='read',
314314
)
315315

316-
# Apply filename search
316+
# Apply filename / content search
317317
if filter:
318318
q = filter.get('query')
319319
if q:
320-
stmt = stmt.filter(File.filename.ilike(f'%{q}%'))
320+
stmt = stmt.filter(
321+
or_(
322+
File.filename.ilike(f'%{q}%'),
323+
cast(File.data['content'], Text).ilike(f'%{q}%'),
324+
)
325+
)
321326

322327
# Order by file changes
323328
stmt = stmt.order_by(File.updated_at.desc(), File.id.asc())
@@ -467,7 +472,12 @@ async def search_files_by_id(
467472
if filter:
468473
query_key = filter.get('query')
469474
if query_key:
470-
stmt = stmt.filter(or_(File.filename.ilike(f'%{query_key}%')))
475+
stmt = stmt.filter(
476+
or_(
477+
File.filename.ilike(f'%{query_key}%'),
478+
cast(File.data['content'], Text).ilike(f'%{query_key}%'),
479+
)
480+
)
471481

472482
view_option = filter.get('view_option')
473483
if view_option == 'created':

0 commit comments

Comments
 (0)