2024-08-21 06:46:11 +00:00
|
|
|
|
# coding=utf-8
|
|
|
|
|
|
"""
|
|
|
|
|
|
@project: MaxKB
|
|
|
|
|
|
@Author:虎
|
|
|
|
|
|
@file: model_apply.py
|
|
|
|
|
|
@date:2024/8/20 20:38
|
|
|
|
|
|
@desc:
|
|
|
|
|
|
"""
|
|
|
|
|
|
from urllib.request import Request
|
|
|
|
|
|
|
|
|
|
|
|
from drf_yasg.utils import swagger_auto_schema
|
|
|
|
|
|
from rest_framework.decorators import action
|
|
|
|
|
|
from rest_framework.views import APIView
|
|
|
|
|
|
|
|
|
|
|
|
from common.response import result
|
|
|
|
|
|
from setting.serializers.model_apply_serializers import ModelApplySerializers
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ModelApply(APIView):
|
|
|
|
|
|
class EmbedDocuments(APIView):
|
|
|
|
|
|
@action(methods=['POST'], detail=False)
|
|
|
|
|
|
@swagger_auto_schema(operation_summary="向量化文档",
|
|
|
|
|
|
operation_id="向量化文档",
|
|
|
|
|
|
responses=result.get_default_response(),
|
|
|
|
|
|
tags=["模型"])
|
|
|
|
|
|
def post(self, request: Request, model_id):
|
|
|
|
|
|
return result.success(
|
|
|
|
|
|
ModelApplySerializers(data={'model_id': model_id}).embed_documents(request.data))
|
|
|
|
|
|
|
|
|
|
|
|
class EmbedQuery(APIView):
|
|
|
|
|
|
@action(methods=['POST'], detail=False)
|
|
|
|
|
|
@swagger_auto_schema(operation_summary="向量化文档",
|
|
|
|
|
|
operation_id="向量化文档",
|
|
|
|
|
|
responses=result.get_default_response(),
|
|
|
|
|
|
tags=["模型"])
|
|
|
|
|
|
def post(self, request: Request, model_id):
|
|
|
|
|
|
return result.success(
|
|
|
|
|
|
ModelApplySerializers(data={'model_id': model_id}).embed_query(request.data))
|
2024-09-05 03:28:21 +00:00
|
|
|
|
|
|
|
|
|
|
class CompressDocuments(APIView):
|
|
|
|
|
|
@action(methods=['POST'], detail=False)
|
|
|
|
|
|
@swagger_auto_schema(operation_summary="重排序文档",
|
|
|
|
|
|
operation_id="重排序文档",
|
|
|
|
|
|
responses=result.get_default_response(),
|
|
|
|
|
|
tags=["模型"])
|
|
|
|
|
|
def post(self, request: Request, model_id):
|
|
|
|
|
|
return result.success(
|
|
|
|
|
|
ModelApplySerializers(data={'model_id': model_id}).compress_documents(request.data))
|