refactor: model

This commit is contained in:
wxg0103 2025-06-05 18:37:06 +08:00
parent fee5993c22
commit d05d82106e
3 changed files with 15 additions and 15 deletions

View File

@ -11,11 +11,11 @@ urlpatterns = [
path('provider/model_list', views.Provide.ModelList.as_view()), path('provider/model_list', views.Provide.ModelList.as_view()),
path('provider/model_params_form', views.Provide.ModelParamsForm.as_view()), path('provider/model_params_form', views.Provide.ModelParamsForm.as_view()),
path('provider/model_form', views.Provide.ModelForm.as_view()), path('provider/model_form', views.Provide.ModelForm.as_view()),
path('workspace/<str:workspace_id>/model', views.Model.as_view()), path('workspace/<str:workspace_id>/model', views.ModelSetting.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/model_params_form', views.Model.ModelParamsForm.as_view()), path('workspace/<str:workspace_id>/model/<str:model_id>/model_params_form', views.ModelSetting.ModelParamsForm.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>', views.Model.Operate.as_view()), path('workspace/<str:workspace_id>/model/<str:model_id>', views.ModelSetting.Operate.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/pause_download', views.Model.PauseDownload.as_view()), path('workspace/<str:workspace_id>/model/<str:model_id>/pause_download', views.ModelSetting.PauseDownload.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/meta', views.Model.ModelMeta.as_view()), path('workspace/<str:workspace_id>/model/<str:model_id>/meta', views.ModelSetting.ModelMeta.as_view()),
] ]
if os.environ.get('SERVER_NAME', 'web') == 'local_model': if os.environ.get('SERVER_NAME', 'web') == 'local_model':

View File

@ -31,7 +31,6 @@ def encryption_credential(credential):
return credential return credential
def get_edit_model_details(request): def get_edit_model_details(request):
path = request.path path = request.path
body = request.data body = request.data
@ -40,20 +39,21 @@ def get_edit_model_details(request):
credential_encryption_ed = encryption_credential(credential) credential_encryption_ed = encryption_credential(credential)
return { return {
'path': path, 'path': path,
'body': {**body, 'credential':credential_encryption_ed}, 'body': {**body, 'credential': credential_encryption_ed},
'query': query 'query': query
} }
def get_model_operation_object(model_id): def get_model_operation_object(model_id):
model_model = QuerySet(model=Model).filter(id=model_id).first() model_model = QuerySet(model=Model).filter(id=model_id).first()
if model_model is not None: if model_model is not None:
return { return {
"name":model_model.name "name": model_model.name
} }
return {} return {}
class Model(APIView): class ModelSetting(APIView):
authentication_classes = [TokenAuth] authentication_classes = [TokenAuth]
@extend_schema(methods=['POST'], @extend_schema(methods=['POST'],
@ -66,7 +66,7 @@ class Model(APIView):
responses=ModelCreateAPI.get_response()) responses=ModelCreateAPI.get_response())
@has_permissions(PermissionConstants.MODEL_CREATE.get_workspace_permission()) @has_permissions(PermissionConstants.MODEL_CREATE.get_workspace_permission())
@log(menu='model', operate='Create model', @log(menu='model', operate='Create model',
get_operation_object=lambda r,k: {'name': r.date.get('name')}, get_operation_object=lambda r, k: {'name': r.date.get('name')},
get_details=get_edit_model_details get_details=get_edit_model_details
) )
def post(self, request: Request, workspace_id: str): def post(self, request: Request, workspace_id: str):
@ -113,7 +113,7 @@ class Model(APIView):
tags=[_('Model')]) # type: ignore tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_EDIT.get_workspace_permission()) @has_permissions(PermissionConstants.MODEL_EDIT.get_workspace_permission())
@log(menu='model', operate='Update model', @log(menu='model', operate='Update model',
get_operation_object=lambda r,k: get_model_operation_object(k.get('model_id')), get_operation_object=lambda r, k: get_model_operation_object(k.get('model_id')),
get_details=get_edit_model_details get_details=get_edit_model_details
) )
def put(self, request: Request, workspace_id, model_id: str): def put(self, request: Request, workspace_id, model_id: str):
@ -172,7 +172,7 @@ class Model(APIView):
tags=[_('Model')]) # type: ignore tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission()) @has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission())
@log(menu='model', operate='Save model parameter form', @log(menu='model', operate='Save model parameter form',
get_operation_object=lambda r,k: get_model_operation_object(k.get('model_id'))) get_operation_object=lambda r, k: get_model_operation_object(k.get('model_id')))
def put(self, request: Request, workspace_id: str, model_id: str): def put(self, request: Request, workspace_id: str, model_id: str):
return result.success( return result.success(
ModelSerializer.ModelParams(data={'id': model_id}).save_model_params_form(request.data)) ModelSerializer.ModelParams(data={'id': model_id}).save_model_params_form(request.data))

View File

@ -28,7 +28,7 @@ class ModelApply(APIView):
responses=DefaultModelResponse.get_response(), responses=DefaultModelResponse.get_response(),
tags=[_('Model')] # type: ignore tags=[_('Model')] # type: ignore
) )
def post(self, request: Request, model_id): def post(self, request: Request, workspace_id, model_id):
return result.success( return result.success(
ModelApplySerializers(data={'model_id': model_id}).embed_documents(request.data)) ModelApplySerializers(data={'model_id': model_id}).embed_documents(request.data))
@ -40,7 +40,7 @@ class ModelApply(APIView):
responses=DefaultModelResponse.get_response(), responses=DefaultModelResponse.get_response(),
tags=[_('Model')] # type: ignore tags=[_('Model')] # type: ignore
) )
def post(self, request: Request, model_id): def post(self, request: Request, workspace_id, model_id):
return result.success( return result.success(
ModelApplySerializers(data={'model_id': model_id}).embed_query(request.data)) ModelApplySerializers(data={'model_id': model_id}).embed_query(request.data))
@ -52,6 +52,6 @@ class ModelApply(APIView):
responses=DefaultModelResponse.get_response(), responses=DefaultModelResponse.get_response(),
tags=[_('Model')] # type: ignore tags=[_('Model')] # type: ignore
) )
def post(self, request: Request, model_id): def post(self, request: Request, workspace_id, model_id):
return result.success( return result.success(
ModelApplySerializers(data={'model_id': model_id}).compress_documents(request.data)) ModelApplySerializers(data={'model_id': model_id}).compress_documents(request.data))