Merge remote-tracking branch 'origin/master'

This commit is contained in:
limin 2025-02-18 13:37:04 +08:00
commit 263199466c
2 changed files with 39 additions and 2 deletions

View File

@ -90,8 +90,14 @@ public class LLMBackendProperties {
private String tableDataQuery;
/**
* 5123 - 模型文件列表
*/
private String modelFileList;
/**
* 5123 - 模型文件下载
*/
private String modelFileDownload;
private String optimizePrompt;

View File

@ -9,6 +9,7 @@ import cn.iocoder.yudao.module.llm.controller.admin.modelservice.vo.ModelService
import cn.iocoder.yudao.module.llm.controller.admin.modelservice.vo.ModelServiceSaveReqVO;
import cn.iocoder.yudao.module.llm.dal.dataobject.finetuningtask.FineTuningTaskDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelservice.ModelServiceDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.servername.ServerNameDO;
import cn.iocoder.yudao.module.llm.dal.mysql.finetuningtask.FineTuningTaskMapper;
import cn.iocoder.yudao.module.llm.dal.mysql.modelservice.ModelServiceMapper;
import cn.iocoder.yudao.module.llm.framework.backend.config.LLMBackendProperties;
@ -18,7 +19,9 @@ import cn.iocoder.yudao.module.llm.service.http.ModelService;
import cn.iocoder.yudao.module.llm.service.modelassesstaskauto.ModelAssessTaskAutoService;
import cn.iocoder.yudao.module.llm.service.modelassesstaskmanual.ModelAssessTaskManualService;
import cn.iocoder.yudao.module.llm.service.modelassesstaskmanualbackup.ModelAssessTaskManualBackupService;
import cn.iocoder.yudao.module.llm.service.servername.ServerNameService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
@ -39,6 +42,7 @@ import static cn.iocoder.yudao.module.llm.enums.ErrorCodeConstants.MODEL_SERVIC_
*/
@Service
@Validated
@Slf4j
public class ModelServiceServiceImpl implements ModelServiceService {
@Resource
@ -69,6 +73,8 @@ public class ModelServiceServiceImpl implements ModelServiceService {
@Resource
private ModelAssessTaskManualBackupService modelAssessTaskManualBackupService;
@Resource
private ServerNameService serverNameService;
@Override
public Long createModelService (ModelServiceSaveReqVO createReqVO) {
@ -311,8 +317,22 @@ public class ModelServiceServiceImpl implements ModelServiceService {
String baseModelName = modelServiceDO.getBaseModelName();
Long type = modelServiceDO.getGpuType();
// 1. 获取文件列表
List<String> fileList = modelService.getFileList(type, baseModelName);
String modelFileDownload = llmBackendProperties.getModelFileDownload();
// 2. 根据 GPU 类型获取主机地址
ServerNameDO server = getServerByType(type);
String baseUrl = server.getHost();
if (baseUrl == null || baseUrl.trim().isEmpty()) {
log.warn("GPU: Type: {} , Name: {} , Host: {}", type, server.getCardServerName(), baseUrl);
return Collections.emptyList();
}
// 3. 拼接完整的请求 URL
String url = baseUrl + llmBackendProperties.getModelFileDownload();
log.info("modelFileDownload Request URL: {}", url);
List<String> res = new ArrayList<>();
if (fileList != null) {
for (String fileName : fileList) {
@ -320,7 +340,7 @@ public class ModelServiceServiceImpl implements ModelServiceService {
if (!extensionPattern.matcher(fileName).find()) {
continue;
}
res.add(modelFileDownload + baseModelName + "/" + fileName);
res.add(url + baseModelName + "/" + fileName);
}
}
@ -338,6 +358,17 @@ public class ModelServiceServiceImpl implements ModelServiceService {
return modelServiceDO.getGpuType();
}
/**
* 通过 GPU 类型获取对应的主机
* <p>ModelService GpuType ServerName 表ID
*
* @param gpuType gpuType
* @return host
*/
public ServerNameDO getServerByType (Long gpuType) {
return serverNameService.getServerName(gpuType);
}
/**
* 获取模型服务管理数量
*