mirror of
https://github.com/1Panel-dev/MaxKB.git
synced 2025-12-26 01:33:05 +00:00
fix: update API request handling to use request body schema instead of query parameters
This commit is contained in:
parent
886c45fb1d
commit
b976273876
|
|
@ -15,33 +15,21 @@ from django.utils.translation import gettext_lazy as _
|
|||
class CommonApi:
|
||||
class HitTestApi(ApiMixin):
|
||||
@staticmethod
|
||||
def get_request_params_api():
|
||||
return [
|
||||
openapi.Parameter(name='query_text',
|
||||
in_=openapi.IN_QUERY,
|
||||
type=openapi.TYPE_STRING,
|
||||
required=True,
|
||||
description=_('query text')),
|
||||
openapi.Parameter(name='top_number',
|
||||
in_=openapi.IN_QUERY,
|
||||
type=openapi.TYPE_NUMBER,
|
||||
default=10,
|
||||
required=True,
|
||||
description='topN'),
|
||||
openapi.Parameter(name='similarity',
|
||||
in_=openapi.IN_QUERY,
|
||||
type=openapi.TYPE_NUMBER,
|
||||
default=0.6,
|
||||
required=True,
|
||||
description=_('similarity')),
|
||||
openapi.Parameter(name='search_mode',
|
||||
in_=openapi.IN_QUERY,
|
||||
type=openapi.TYPE_STRING,
|
||||
default="embedding",
|
||||
required=True,
|
||||
description=_('Retrieval pattern embedding|keywords|blend')
|
||||
)
|
||||
]
|
||||
def get_request_body_api():
|
||||
return openapi.Schema(
|
||||
type=openapi.TYPE_OBJECT,
|
||||
required=['query_text', 'top_number', 'similarity', 'search_mode'],
|
||||
properties={
|
||||
'query_text': openapi.Schema(type=openapi.TYPE_STRING, title=_('query text'),
|
||||
description=_('query text')),
|
||||
'top_number': openapi.Schema(type=openapi.TYPE_NUMBER, title=_('top number'),
|
||||
description=_('top number')),
|
||||
'similarity': openapi.Schema(type=openapi.TYPE_NUMBER, title=_('similarity'),
|
||||
description=_('similarity')),
|
||||
'search_mode': openapi.Schema(type=openapi.TYPE_STRING, title=_('search mode'),
|
||||
description=_('search mode'))
|
||||
}
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def get_response_body_api():
|
||||
|
|
|
|||
|
|
@ -142,7 +142,7 @@ class Dataset(APIView):
|
|||
|
||||
@action(methods="PUT", detail=False)
|
||||
@swagger_auto_schema(operation_summary=_('Hit test list'), operation_id=_('Hit test list'),
|
||||
manual_parameters=CommonApi.HitTestApi.get_request_params_api(),
|
||||
request_body=CommonApi.HitTestApi.get_request_body_api(),
|
||||
responses=result.get_api_array_response(CommonApi.HitTestApi.get_response_body_api()),
|
||||
tags=[_('Knowledge Base')])
|
||||
@has_permissions(lambda r, keywords: Permission(group=Group.DATASET, operate=Operate.USE,
|
||||
|
|
|
|||
Loading…
Reference in New Issue