package cn.iocoder.yudao.module.llm.controller.admin.modelservice.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;

@Schema(description = "管理后台 - 模型服务新增/修改 Request VO")
@Data
public class ModelServiceSaveReqVO {

    @Schema(description = "模型服务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8280")
    private Long id;

    @Schema(description = "服务名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
    @NotEmpty(message = "服务名称不能为空")
    private String serviceName;

    @Schema(description = "微调任务ID")
    private Long fineTuningTask;

    @Schema(description = "检查点，使用字典（llm_model_checkpoint）")
    private Long checkPoint;

    @Schema(description = "GPU，使用字典（llm_gpu_type）", example = "1")
    private Long gpuType;

    @Schema(description = "GPU数量", example = "2")
    private Integer gpuCount;

    @Schema(description = "模型服务状态，使用字典（llm_model_status）", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "模型服务状态，使用字典（llm_model_status）不能为空")
    private Integer status;

}
