package com.backendsys.entity.Ali;

import com.backendsys.entity.validator.RangeArray;
import jakarta.validation.constraints.*;
import lombok.Data;

@Data
public class AliDashscopeBackgroundParametersDTO {
    @RangeArray(message="图片生成的数量取值有误，范围应是(1~4)", value = {"1", "2", "3", "4"})
    private Integer n;                  // 图片生成的数量，支持1~4 张，默认值1
    @Max(value = 999, message = "相似度阙值不超过 {value}")
    private Integer noise_level;        // 当ref_image_url不为空时生效。在图像引导的过程中添加随机变化，数值越大与参考图相似度越低，默认值300，取值范围[0,999]

    @DecimalMin(value = "0", message = "文本和图像引导的权重值必须大于等于 {value}")
    @DecimalMax(value = "1", message = "文本和图像引导的权重值必须小于等于 {value}")
    private Float ref_prompt_weight;    // 仅当ref_image_url和ref_prompt同时输入时生效，该参数设定文本和图像引导的权重。ref_prompt_weight表示文本的权重，图像引导的权重为1-ref_prompt_weight。默认值0.5，取值范围 [0,1]
}
