package xiaozhi.modules.model.service; import java.util.List; import java.util.Map; import xiaozhi.common.page.PageData; import xiaozhi.common.service.BaseService; import xiaozhi.modules.model.dto.LlmModelBasicInfoDTO; import xiaozhi.modules.model.dto.ModelBasicInfoDTO; import xiaozhi.modules.model.dto.ModelConfigBodyDTO; import xiaozhi.modules.model.dto.ModelConfigDTO; import xiaozhi.modules.model.entity.ModelConfigEntity; public interface ModelConfigService extends BaseService { List getModelCodeList(String modelType, String modelName); List getLlmModelCodeList(String modelName); PageData getPageList(String modelType, String modelName, String page, String limit); ModelConfigDTO add(String modelType, String provideCode, ModelConfigBodyDTO modelConfigBodyDTO); ModelConfigDTO edit(String modelType, String provideCode, String id, ModelConfigBodyDTO modelConfigBodyDTO); void delete(String id); /** * 根据ID获取模型名称 * * @param id 模型ID * @return 模型名称 */ String getModelNameById(String id); /** * 根据ID获取模型配置 * * @param id 模型ID * @return 模型配置实体 */ ModelConfigEntity getModelByIdFromCache(String id); /** * 设置默认模型 * * @param modelType 模型类型 * @param isDefault 是否默认(1:是,0:否) */ void setDefaultModel(String modelType, int isDefault); /** * 获取符合条件的TTS平台列表 * * @return TTS平台列表(id和modelName) */ List> getTtsPlatformList(); /** * 根据模型类型获取所有启用的模型配置 * * @param modelType 模型类型(如:LLM, TTS, ASR等) * @return 启用的模型配置列表 */ List getEnabledModelsByType(String modelType); }