Commit a65cbdd7 authored by yangyw's avatar yangyw

Merge branch 'refs/heads/feature/20241217_收尾' into sandbox

parents f7e19fe7 7e3308d3
......@@ -851,4 +851,12 @@ public class AppChatCompletionService {
}
return pageResult;
}
public String getKbSegment(String segmentId) {
try {
return tencentCloudFacade.getKbSegment(segmentId);
} catch (TencentCloudSDKException e) {
throw new RuntimeException(e);
}
}
}
......@@ -115,4 +115,8 @@ public class ChatCompletionMobileController {
}
@GetMapping("/kb/segment")
public ApiResponse<String> getKbSegment(@RequestParam(value = "segment_id") String segmentId) {
return ApiResponse.ok(chatCompletionService.getKbSegment(segmentId));
}
}
package cn.breeze.elleai.facade;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ArrayUtil;
import com.tencentcloudapi.common.Credential;
import com.tencentcloudapi.common.exception.TencentCloudSDKException;
import com.tencentcloudapi.lke.v20231130.LkeClient;
import com.tencentcloudapi.lke.v20231130.models.RateMsgRecordRequest;
import com.tencentcloudapi.lke.v20231130.models.RateMsgRecordResponse;
import com.tencentcloudapi.lke.v20231130.models.*;
import jakarta.annotation.PostConstruct;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
@Slf4j
public class TencentCloudFacade {
@Value("${deepseek.app_id}")
private String dsAppId;
private LkeClient lkeClient;
@PostConstruct
public void init() {
protected void init() {
Credential credential = new Credential("AKIDCHBybDvUqxrcCXjxFc4pVzIQeyMcicLq", "OdgU5TsLqP3kTD0mOn164vcDpR3jKiZT");
lkeClient = new LkeClient(credential, "ap-guangzhou");
}
......@@ -38,4 +42,21 @@ public class TencentCloudFacade {
log.info("dissMessage response:{}", response.getRequestId());
}
public String getKbSegment(String segmentId) throws TencentCloudSDKException {
DescribeSegmentsRequest request = new DescribeSegmentsRequest();
request.setBotBizId(dsAppId);
request.setSegBizId(new String[]{segmentId});
DescribeSegmentsResponse response = lkeClient.DescribeSegments(request);
StringBuilder sb = new StringBuilder();
if (ArrayUtil.isNotEmpty(response.getList())) {
for (DocSegment docSegment : response.getList()) {
sb.append(docSegment.getTitle());
sb.append("\n");
sb.append(docSegment.getPageContent());
}
}
return sb.toString();
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment