From f679922eb3be654c88abdc86a16a3e44dd6cff95 Mon Sep 17 00:00:00 2001 From: zhangtao Date: Mon, 6 Jan 2025 14:18:31 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E5=B7=A5=E5=8E=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backend/config/LLMBackendProperties.java | 3 ++ .../llm/service/http/TrainHttpService.java | 20 ++++++--- .../llm/service/http/vo/AigcLoginReqVO.java | 14 ++++++ .../llm/service/http/vo/AigcLoginRespVO.java | 14 ++++++ .../llm/service/http/vo/AigcRespVO.java | 17 +++++++ .../service/http/vo/FineTuningCreateVO.java | 27 +++++++++++ .../http/vo/FineTuningFileListRespVO.java | 45 +++++++++++++++++++ .../src/main/resources/application-dev.yaml | 8 +++- .../src/main/resources/application-local.yaml | 8 +++- 9 files changed, 146 insertions(+), 10 deletions(-) create mode 100644 yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginReqVO.java create mode 100644 yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java create mode 100644 yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcRespVO.java create mode 100644 yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningCreateVO.java create mode 100644 yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningFileListRespVO.java diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java index 5876aa34f..7a52aebe8 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java @@ -59,6 +59,9 @@ public class LLMBackendProperties { @NotNull(message = "登录 POST") private String login; + private String loginUsername; + private String loginPassword; + @NotNull(message = "基础模型列表 GET") private String baseModelList; diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java index 2fa011d08..59f2cbf30 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java @@ -3,11 +3,10 @@ package cn.iocoder.yudao.module.llm.service.http; import cn.iocoder.yudao.framework.common.util.http.HttpUtils; import cn.iocoder.yudao.module.llm.framework.backend.config.LLMBackendProperties; -import cn.iocoder.yudao.module.llm.service.http.vo.RagEmbedReqVo; -import cn.iocoder.yudao.module.llm.service.http.vo.RagQueryMultipleReqVo; -import cn.iocoder.yudao.module.llm.service.http.vo.RagQueryReqVo; +import cn.iocoder.yudao.module.llm.service.http.vo.*; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.toolkit.BeanUtils; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -17,6 +16,7 @@ import java.util.Map; * 训练相关接口 */ @Service +@Slf4j public class TrainHttpService { @Resource @@ -98,10 +98,18 @@ public class TrainHttpService { /** * 登录 POST */ - public String login(Map headers, String body){ + public AigcLoginRespVO login(Map headers){ String login = llmBackendProperties.getLogin(); - String res = HttpUtils.post(login, headers, body); - return res; + AigcLoginReqVO req = new AigcLoginReqVO(llmBackendProperties.getLoginUsername(), llmBackendProperties.getLoginPassword()); + String res = HttpUtils.post(login, headers, JSON.toJSONString(req)); + log.info("登录接口返回:{}", res); + AigcRespVO aigcRespVO = JSON.parseObject(res, AigcRespVO.class); + if (aigcRespVO.isSuccess()){ + AigcLoginRespVO aigcLoginRespVO = JSON.parseObject(aigcRespVO.getData().toString(), AigcLoginRespVO.class); + headers.put("Authorization", "Bearer " + aigcLoginRespVO.getToken()); + return aigcLoginRespVO; + } + return null; } /** diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginReqVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginReqVO.java new file mode 100644 index 000000000..3611cf8e0 --- /dev/null +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginReqVO.java @@ -0,0 +1,14 @@ +package cn.iocoder.yudao.module.llm.service.http.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AigcLoginReqVO { + + private String username; + private String password; +} diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java new file mode 100644 index 000000000..c8eca1fd3 --- /dev/null +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java @@ -0,0 +1,14 @@ +package cn.iocoder.yudao.module.llm.service.http.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AigcLoginRespVO { + + private String token; + private String username; +} diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcRespVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcRespVO.java new file mode 100644 index 000000000..21ae2eeeb --- /dev/null +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcRespVO.java @@ -0,0 +1,17 @@ +package cn.iocoder.yudao.module.llm.service.http.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AigcRespVO { + + private boolean success; + private int code; + private Object data; + private String message; + private String traceId; +} diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningCreateVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningCreateVO.java new file mode 100644 index 000000000..70fe0ea5c --- /dev/null +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningCreateVO.java @@ -0,0 +1,27 @@ +package cn.iocoder.yudao.module.llm.service.http.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; + +@Data +@ToString +@AllArgsConstructor +@NoArgsConstructor +public class FineTuningCreateVO { + + private String scenario = "faq"; + private String fileId = "48fac97c-5a69-4fde-9f77-86f4de2e91eb"; + private String baseModel; + private int trainEpoch; + private String suffix; + private String remark; + private int trainBatchSize; + private int evalBatchSize; + private int accumulationSteps; + private int procPerNode; + private double learningRate; + private int modelMaxLength; + private boolean lora; +} diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningFileListRespVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningFileListRespVO.java new file mode 100644 index 000000000..940f26cc4 --- /dev/null +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/FineTuningFileListRespVO.java @@ -0,0 +1,45 @@ +package cn.iocoder.yudao.module.llm.service.http.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class FineTuningFileListRespVO { + private boolean success; + private int code; + private ListData data; + private String message; + private String traceId; + + // 嵌套在顶层类中的 Data 类 + @Data + @AllArgsConstructor + @NoArgsConstructor + public static class ListData { + private List list; + private int total; + } + + // 嵌套在 Data 类中的 FaqFile 类 + @Data + @AllArgsConstructor + @NoArgsConstructor + public static class FaqFile { + private int size; + private String createdAt; + private String fileId; + private String filename; + private String purpose; + private String fileType; + private int tenantId; + private String s3Url; + private int lineCount; + private int tokenCount; + + } +} diff --git a/yudao-server/src/main/resources/application-dev.yaml b/yudao-server/src/main/resources/application-dev.yaml index 539385de4..84d69d80c 100644 --- a/yudao-server/src/main/resources/application-dev.yaml +++ b/yudao-server/src/main/resources/application-dev.yaml @@ -235,9 +235,13 @@ llm: # 大模型列表 GET models_list: http://localhost:8123/api/models # 登录 POST - login: http://localhost:8123/login + login: http://aigc.xhllm.xinnuojinzhi.com/api/auth/login + login_username: admin + login_password: admin # 创建微调任务 POST - finetuning_create: http://localhost:8123/api/finetuning + finetuning_create: http://aigc.xhllm.xinnuojinzhi.com/api/finetuning + # 微调文件列表 GET + finetuning_file_list: http://aigc.xhllm.xinnuojinzhi.com/api/files?purpose=fine-tune #### 大模型对话 # 基础模型列表 GET diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index e981a7636..4402ab276 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -278,9 +278,13 @@ llm: # 大模型列表 GET models_list: http://localhost:8123/api/models # 登录 POST - login: http://localhost:8123/login + login: http://aigc.xhllm.xinnuojinzhi.com/api/auth/login + login_username: admin + login_password: admin # 创建微调任务 POST - finetuning_create: http://localhost:8123/api/finetuning + finetuning_create: http://aigc.xhllm.xinnuojinzhi.com/api/finetuning + # 微调文件列表 GET + finetuning_file_list: http://aigc.xhllm.xinnuojinzhi.com/api/files?purpose=fine-tune #### 大模型对话 # 模型列表 GET From a7c8073101002595f764308f688d38b873a47cc0 Mon Sep 17 00:00:00 2001 From: zhangtao Date: Mon, 6 Jan 2025 14:28:45 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E5=B7=A5=E5=8E=82=E7=9A=84=E7=A7=9F=E6=88=B7ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../llm/framework/backend/config/LLMBackendProperties.java | 2 +- yudao-server/src/main/resources/application-dev.yaml | 1 + yudao-server/src/main/resources/application-local.yaml | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java index 7a52aebe8..ea15ee4df 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java @@ -58,7 +58,7 @@ public class LLMBackendProperties { @NotNull(message = "登录 POST") private String login; - + private String loginTenantId; private String loginUsername; private String loginPassword; diff --git a/yudao-server/src/main/resources/application-dev.yaml b/yudao-server/src/main/resources/application-dev.yaml index 84d69d80c..42aa99236 100644 --- a/yudao-server/src/main/resources/application-dev.yaml +++ b/yudao-server/src/main/resources/application-dev.yaml @@ -236,6 +236,7 @@ llm: models_list: http://localhost:8123/api/models # 登录 POST login: http://aigc.xhllm.xinnuojinzhi.com/api/auth/login + login_tenant_id: 5c4e33fb-7ae2-4a48-9a78-fb74e4634d16 login_username: admin login_password: admin # 创建微调任务 POST diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index 4402ab276..db4453437 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -279,6 +279,7 @@ llm: models_list: http://localhost:8123/api/models # 登录 POST login: http://aigc.xhllm.xinnuojinzhi.com/api/auth/login + login_tenant_id: 5c4e33fb-7ae2-4a48-9a78-fb74e4634d16 login_username: admin login_password: admin # 创建微调任务 POST From 04efc7f95ddfc6f34acbb15ff102d722448dc7d7 Mon Sep 17 00:00:00 2001 From: zhangtao Date: Mon, 6 Jan 2025 14:38:54 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E5=B7=A5=E5=8E=82=E7=9A=84=E7=A7=9F=E6=88=B7ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backend/config/LLMBackendProperties.java | 2 +- .../llm/service/http/TrainHttpService.java | 25 ++++++++++++-- .../service/http/vo/AigcAccountRespVO.java | 34 +++++++++++++++++++ .../llm/service/http/vo/AigcLoginRespVO.java | 1 + .../src/main/resources/application-dev.yaml | 2 +- .../src/main/resources/application-local.yaml | 2 +- 6 files changed, 60 insertions(+), 6 deletions(-) create mode 100644 yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcAccountRespVO.java diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java index ea15ee4df..f70175b48 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java @@ -58,7 +58,7 @@ public class LLMBackendProperties { @NotNull(message = "登录 POST") private String login; - private String loginTenantId; + private String account; private String loginUsername; private String loginPassword; diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java index 59f2cbf30..8acb9cc1f 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.llm.service.http; +import cn.hutool.core.collection.CollUtil; import cn.iocoder.yudao.framework.common.util.http.HttpUtils; import cn.iocoder.yudao.module.llm.framework.backend.config.LLMBackendProperties; import cn.iocoder.yudao.module.llm.service.http.vo.*; @@ -104,10 +105,28 @@ public class TrainHttpService { String res = HttpUtils.post(login, headers, JSON.toJSONString(req)); log.info("登录接口返回:{}", res); AigcRespVO aigcRespVO = JSON.parseObject(res, AigcRespVO.class); - if (aigcRespVO.isSuccess()){ + if (aigcRespVO.isSuccess() && aigcRespVO.getData() != null){ AigcLoginRespVO aigcLoginRespVO = JSON.parseObject(aigcRespVO.getData().toString(), AigcLoginRespVO.class); - headers.put("Authorization", "Bearer " + aigcLoginRespVO.getToken()); - return aigcLoginRespVO; + headers.put("X-Token", aigcLoginRespVO.getToken()); + AigcAccountRespVO aigcAccountRespVO = account(headers); + if (aigcAccountRespVO != null && CollUtil.isNotEmpty(aigcAccountRespVO.getTenants())) { + aigcLoginRespVO.setTenantId(aigcAccountRespVO.getTenants().get(0).getId()); + log.info(" login:{}", aigcAccountRespVO); + return aigcLoginRespVO; + } + } + return null; + } + + public AigcAccountRespVO account(Map headers){ + String account = llmBackendProperties.getAccount(); + String res = HttpUtils.get(account, headers); + log.info(" account:{}", res); + AigcRespVO aigcRespVO = JSON.parseObject(res, AigcRespVO.class); + if (aigcRespVO.isSuccess() && aigcRespVO.getData() != null){ + AigcAccountRespVO aigcAccountRespVO = JSON.parseObject(aigcRespVO.getData().toString(), AigcAccountRespVO.class); + log.info(" account:{}", aigcAccountRespVO); + return aigcAccountRespVO; } return null; } diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcAccountRespVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcAccountRespVO.java new file mode 100644 index 000000000..fd5858de2 --- /dev/null +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcAccountRespVO.java @@ -0,0 +1,34 @@ +package cn.iocoder.yudao.module.llm.service.http.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AigcAccountRespVO { + + // 租户列表,由于JSON中是一个数组,所以这里用List来表示 + private List tenants; + // 电子邮件地址 + private String email; + // 昵称 + private String nickname; + // 语言设置 + private String language; + + // 嵌套的Tenant类,用于表示租户信息 + @Data + @AllArgsConstructor + @NoArgsConstructor + public static class Tenant { + + // 租户ID + private String id; + // 租户名称 + private String name; + } +} diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java index c8eca1fd3..1dc977f62 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/vo/AigcLoginRespVO.java @@ -11,4 +11,5 @@ public class AigcLoginRespVO { private String token; private String username; + private String tenantId; } diff --git a/yudao-server/src/main/resources/application-dev.yaml b/yudao-server/src/main/resources/application-dev.yaml index 42aa99236..e75bc4b81 100644 --- a/yudao-server/src/main/resources/application-dev.yaml +++ b/yudao-server/src/main/resources/application-dev.yaml @@ -236,7 +236,7 @@ llm: models_list: http://localhost:8123/api/models # 登录 POST login: http://aigc.xhllm.xinnuojinzhi.com/api/auth/login - login_tenant_id: 5c4e33fb-7ae2-4a48-9a78-fb74e4634d16 + account: http://aigc.xhllm.xinnuojinzhi.com/api/auth/account login_username: admin login_password: admin # 创建微调任务 POST diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index db4453437..730f1668e 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -279,7 +279,7 @@ llm: models_list: http://localhost:8123/api/models # 登录 POST login: http://aigc.xhllm.xinnuojinzhi.com/api/auth/login - login_tenant_id: 5c4e33fb-7ae2-4a48-9a78-fb74e4634d16 + account: http://aigc.xhllm.xinnuojinzhi.com/api/auth/account login_username: admin login_password: admin # 创建微调任务 POST From 8e469cfdc3e1988f1ab3abfb0eac4ce14ce89d16 Mon Sep 17 00:00:00 2001 From: zhangtao Date: Mon, 6 Jan 2025 14:40:25 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E5=B7=A5=E5=8E=82=E7=9A=84=E7=A7=9F=E6=88=B7ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iocoder/yudao/module/llm/service/http/TrainHttpService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java index 8acb9cc1f..ff844d76f 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java @@ -111,6 +111,7 @@ public class TrainHttpService { AigcAccountRespVO aigcAccountRespVO = account(headers); if (aigcAccountRespVO != null && CollUtil.isNotEmpty(aigcAccountRespVO.getTenants())) { aigcLoginRespVO.setTenantId(aigcAccountRespVO.getTenants().get(0).getId()); + headers.put("X-Tenant-Id", aigcLoginRespVO.getTenantId()); log.info(" login:{}", aigcAccountRespVO); return aigcLoginRespVO; } From 8f33f0b3dc193a047d0716c099c64f3d3015aed1 Mon Sep 17 00:00:00 2001 From: zhangtao Date: Mon, 6 Jan 2025 14:42:04 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=9C=A8=E7=99=BB=E5=BD=95=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E4=B8=AD=E5=A4=84=E7=90=86header?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iocoder/yudao/module/llm/service/http/TrainHttpService.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java index ff844d76f..5528cda84 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java @@ -100,6 +100,8 @@ public class TrainHttpService { * 登录 POST */ public AigcLoginRespVO login(Map headers){ + headers.put("Content-Type", "application/json"); + headers.put("Pragma", "no-cache"); String login = llmBackendProperties.getLogin(); AigcLoginReqVO req = new AigcLoginReqVO(llmBackendProperties.getLoginUsername(), llmBackendProperties.getLoginPassword()); String res = HttpUtils.post(login, headers, JSON.toJSONString(req));