main
黄海 7 months ago
parent ca1823b1d1
commit 2e00bc693a

@ -1,7 +1,10 @@
package com.dsideal.QingLong.MaxKB.Controller;
import com.alibaba.fastjson.JSONObject;
import com.dsideal.QingLong.Base.Model.BaseModel;
import com.dsideal.QingLong.MaxKB.Model.MaxKbModel;
import com.dsideal.QingLong.MaxKB.Service.Impl.MaxKbImpl;
import com.dsideal.QingLong.MaxKB.Service.MaxKbService;
import com.dsideal.QingLong.Util.CommonUtil;
import com.dsideal.QingLong.Util.SessionKit;
import com.jfinal.aop.Before;
@ -19,6 +22,10 @@ import java.util.UUID;
public class MaxKbController extends Controller {
MaxKbModel mkm = new MaxKbModel();
BaseModel baseModel = new BaseModel();
MaxKbService service = new MaxKbService();
//不管是谁都先上传这个QA的个性化文件逐步改进
String uploadFile = "D:\\dsWork\\QingLong\\Doc\\MaxKB\\黄海的个人简历【QA版本】.xlsx";
/**
*
@ -43,7 +50,7 @@ public class MaxKbController extends Controller {
*
*/
@Before(POST.class)
public void createApplication() {
public void createApplication() throws InterruptedException {
String person_id = SessionKit.get(getRequest(), getResponse(), "person_id");
if (StrKit.isBlank(person_id)) {
renderJson(CommonUtil.returnMessageJson(false, "未登录!"));
@ -60,25 +67,32 @@ public class MaxKbController extends Controller {
//1、拷贝生成应用
String sourceApplicationName = "应用【模板】";
String targetApplicationName = person_name + "的应用";
String application_id = mkm.addApplication(sourceApplicationName, targetApplicationName);
String applicationId = mkm.addApplication(sourceApplicationName, targetApplicationName);
//3、拷贝生成知识库
String sourceDataSetName = "知识库【模板】";
String targetDataSetName = person_name + "的知识库";
String dataset_id = mkm.addZsk(sourceDataSetName, targetDataSetName);
String zskId = mkm.addZsk(sourceDataSetName, targetDataSetName);
//4、应用与知识库关联
Record record = new Record();
record.set("create_time", LocalDateTime.now());
record.set("update_time", LocalDateTime.now());
record.set("id", UUID.randomUUID());
record.set("application_id", UUID.fromString(application_id));
record.set("dataset_id", UUID.fromString(dataset_id));
record.set("application_id", UUID.fromString(applicationId));
record.set("dataset_id", UUID.fromString(zskId));
Db.save("application_dataset_mapping", "id", record);
//5、生成应用的访问Token
String access_token = mkm.addAccessToken(application_id);
//System.out.println("增加成功access_token=" + access_token);
//5、给当前人员上传他个人的知识库
//获取身份识别
String authCode = MaxKbImpl.getAuthorization();
String documentId = service.uploadQA(authCode, targetDataSetName, uploadFile);
//6、手动生成问题
String modelName = "DeepSeek";//使用哪个模型
JSONObject res = service.manualQuestion(authCode, targetDataSetName, modelName, documentId);
//7、生成应用的访问Token
String access_token = mkm.addAccessToken(applicationId);
//8、返回结果
Kv kv = Kv.by("success", true);
kv.set("message", "创建成功!");
kv.set("access_token", access_token);

Loading…
Cancel
Save