Browse Source

实验对比增加分页

dev-czh
chenzhihang 1 year ago
parent
commit
4093ea3833
3 changed files with 26 additions and 13 deletions
  1. +8
    -4
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/aim/AimController.java
  2. +2
    -2
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/AimService.java
  3. +16
    -7
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/AimServiceImpl.java

+ 8
- 4
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/aim/AimController.java View File

@@ -24,15 +24,19 @@ public class AimController extends BaseController {
@GetMapping("/getExpTrainInfos/{experiment_id}")
@ApiOperation("获取当前实验的模型训练指标信息")
@ApiResponse
public GenericsAjaxResult<List<InsMetricInfoVo>> getExpTrainInfos(@PathVariable("experiment_id") Integer experimentId) throws Exception {
return genericsSuccess(aimService.getExpTrainInfos(experimentId));
public GenericsAjaxResult<List<InsMetricInfoVo>> getExpTrainInfos(@RequestParam(value = "offset") String offset,
@RequestParam(value = "limit") int limit,
@PathVariable("experiment_id") Integer experimentId) throws Exception {
return genericsSuccess(aimService.getExpTrainInfos(experimentId, offset, limit));
}

@GetMapping("/getExpEvaluateInfos/{experiment_id}")
@ApiOperation("获取当前实验的模型推理指标信息")
@ApiResponse
public GenericsAjaxResult<List<InsMetricInfoVo>> getExpEvaluateInfos(@PathVariable("experiment_id") Integer experimentId) throws Exception {
return genericsSuccess(aimService.getExpEvaluateInfos(experimentId));
public GenericsAjaxResult<List<InsMetricInfoVo>> getExpEvaluateInfos(@RequestParam(value = "offset") String offset,
@RequestParam(value = "limit") int limit,
@PathVariable("experiment_id") Integer experimentId) throws Exception {
return genericsSuccess(aimService.getExpEvaluateInfos(experimentId, offset, limit));
}

@PostMapping("/getExpMetrics")


+ 2
- 2
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/AimService.java View File

@@ -8,11 +8,11 @@ import java.util.Map;

public interface AimService {

List<InsMetricInfoVo> getExpTrainInfos(Integer experimentId) throws Exception;
List<InsMetricInfoVo> getExpTrainInfos(Integer experimentId, String offset, int limit) throws Exception;

List<InsMetricInfoVo> getExpTrainInfos1(boolean isTrain, Integer experimentId, String runId) throws Exception;

List<InsMetricInfoVo> getExpEvaluateInfos(Integer experimentId) throws Exception;
List<InsMetricInfoVo> getExpEvaluateInfos(Integer experimentId, String offset, int limit) throws Exception;

String getExpMetrics(List<String> runIds) throws Exception;



+ 16
- 7
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/AimServiceImpl.java View File

@@ -4,7 +4,10 @@ import com.alibaba.fastjson2.JSON;
import com.ruoyi.platform.domain.ExperimentIns;
import com.ruoyi.platform.service.AimService;
import com.ruoyi.platform.service.ExperimentInsService;
import com.ruoyi.platform.utils.*;
import com.ruoyi.platform.utils.AIM64EncoderUtil;
import com.ruoyi.platform.utils.HttpUtils;
import com.ruoyi.platform.utils.JacksonUtil;
import com.ruoyi.platform.utils.JsonUtils;
import com.ruoyi.platform.vo.InsMetricInfoVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value;
@@ -27,13 +30,13 @@ public class AimServiceImpl implements AimService {
private String aimProxyUrl;

@Override
public List<InsMetricInfoVo> getExpTrainInfos(Integer experimentId) throws Exception {
return getAimRunInfos(true, experimentId);
public List<InsMetricInfoVo> getExpTrainInfos(Integer experimentId, String offset, int limit) throws Exception {
return getAimRunInfos(true, experimentId, offset, limit);
}

@Override
public List<InsMetricInfoVo> getExpEvaluateInfos(Integer experimentId) throws Exception {
return getAimRunInfos(false, experimentId);
public List<InsMetricInfoVo> getExpEvaluateInfos(Integer experimentId, String offset, int limit) throws Exception {
return getAimRunInfos(false, experimentId, offset, limit);
}

@Override
@@ -42,12 +45,18 @@ public class AimServiceImpl implements AimService {
return aimUrl + "/metrics?select=" + decode;
}

private List<InsMetricInfoVo> getAimRunInfos(boolean isTrain, Integer experimentId) throws Exception {
private List<InsMetricInfoVo> getAimRunInfos(boolean isTrain, Integer experimentId, String offset, int limit) throws Exception {
String experimentName = "experiment-" + experimentId + "-train";
if (!isTrain) {
experimentName = "experiment-" + experimentId + "-evaluate";
}
String encodedUrlString = URLEncoder.encode("run.experiment==\"" + experimentName + "\"", "UTF-8");

StringBuffer query = new StringBuffer("run.experiment==\"" + experimentName + "\"" + "&limit=" + limit);
if (StringUtils.isNotEmpty(offset)) {
query.append("&offset=").append(offset);
}

String encodedUrlString = URLEncoder.encode(String.valueOf(query), "UTF-8");
String url = aimProxyUrl + "/api/runs/search/run?query=" + encodedUrlString;
String s = HttpUtils.sendGet(url, null);
List<Map<String, Object>> response = JacksonUtil.parseJSONStr2MapList(s);


Loading…
Cancel
Save