ソースを参照

fix: segment search by keyword (#303)

tags/0.3.2
杨睿 2年前
コミット
20899c44ff
コミッターのメールアドレスに関連付けられたアカウントが存在しません
1個のファイルの変更5行の追加0行の削除
  1. 5
    0
      api/controllers/console/datasets/datasets_segments.py

+ 5
- 0
api/controllers/console/datasets/datasets_segments.py ファイルの表示

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),
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)

読み込み中…
キャンセル
保存