Unverified Commit 20899c44 authored by 杨睿's avatar 杨睿 Committed by GitHub

fix: segment search by keyword (#303)

parent 35a2beb1
...@@ -78,12 +78,14 @@ class DatasetDocumentSegmentListApi(Resource): ...@@ -78,12 +78,14 @@ class DatasetDocumentSegmentListApi(Resource):
parser.add_argument('hit_count_gte', type=int, parser.add_argument('hit_count_gte', type=int,
default=None, location='args') default=None, location='args')
parser.add_argument('enabled', type=str, default='all', location='args') parser.add_argument('enabled', type=str, default='all', location='args')
parser.add_argument('keyword', type=str, default=None, location='args')
args = parser.parse_args() args = parser.parse_args()
last_id = args['last_id'] last_id = args['last_id']
limit = min(args['limit'], 100) limit = min(args['limit'], 100)
status_list = args['status'] status_list = args['status']
hit_count_gte = args['hit_count_gte'] hit_count_gte = args['hit_count_gte']
keyword = args['keyword']
query = DocumentSegment.query.filter( query = DocumentSegment.query.filter(
DocumentSegment.document_id == str(document_id), DocumentSegment.document_id == str(document_id),
...@@ -104,6 +106,9 @@ class DatasetDocumentSegmentListApi(Resource): ...@@ -104,6 +106,9 @@ class DatasetDocumentSegmentListApi(Resource):
if hit_count_gte is not None: if hit_count_gte is not None:
query = query.filter(DocumentSegment.hit_count >= hit_count_gte) query = query.filter(DocumentSegment.hit_count >= hit_count_gte)
if keyword:
query = query.where(DocumentSegment.content.ilike(f'%{keyword}%'))
if args['enabled'].lower() != 'all': if args['enabled'].lower() != 'all':
if args['enabled'].lower() == 'true': if args['enabled'].lower() == 'true':
query = query.filter(DocumentSegment.enabled == True) query = query.filter(DocumentSegment.enabled == True)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment