package cn.iocoder.yudao.module.ai.dal.dataobject.model; import cn.iocoder.yudao.framework.ai.core.enums.AiPlatformEnum; import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; /** * AI 聊天模型 DO * * 默认聊天模型:{@link #status} 为开启,并且 {@link #sort} 排序第一 * * @author fansili * @since 2024/4/24 19:39 */ @TableName("ai_chat_model") @KeySequence("ai_chat_model_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 @Data @EqualsAndHashCode(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class AiChatModelDO extends BaseDO { /** * 编号 */ @TableId private Long id; /** * API 秘钥编号 * * 关联 {@link AiApiKeyDO#getId()} */ private Long keyId; /** * 模型名称 */ private String name; /** * 模型标志 */ private String model; /** * 平台 * * 枚举 {@link AiPlatformEnum} */ private String platform; /** * 排序值 */ private Integer sort; /** * 状态 * * 枚举 {@link CommonStatusEnum} */ private Integer status; // ========== 对话配置 ========== /** * 温度参数 * * 用于调整生成回复的随机性和多样性程度:较低的温度值会使输出更收敛于高频词汇,较高的则增加多样性 */ private Double temperature; /** * 单条回复的最大 Token 数量 */ private Integer maxTokens; /** * 上下文的最大 Message 数量 */ private Integer maxContexts; }