main
黄海 7 months ago
parent 9c408a8df8
commit a1c2130873

@ -1,6 +1,6 @@
package Tools.MaxKb;
import Tools.MaxKb.Util.MaxKbDb;
import Tools.MaxKb.Util.MaxKbUtil;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;
@ -10,130 +10,28 @@ import java.util.UUID;
public class TestMaxKB {
/**
*
*
* @param model_name
* @return
*/
public static Record getModel(String model_name) {
String sql = "select * from model where name=?";
return Db.findFirst(sql, model_name);
}
/**
*
*
* @param applicationName
* @return
*/
public static Record getApplication(String applicationName) {
String sql = "select * from application where name=?";
return Db.findFirst(sql, applicationName);
}
/**
*
*
* @param sourceApplicationName
* @param targetApplicationName
*/
public static String addApplication(String sourceApplicationName, String targetApplicationName) {
//获取应用
Record record = getApplication(sourceApplicationName);
if (record == null) {
System.out.println(sourceApplicationName + "应用不存在!");
System.exit(0);
}
//克隆出对象
record = new Record().setColumns(record.getColumns());
//生成一个uuid
record.set("id", UUID.randomUUID());
//名称
record.set("name", targetApplicationName);
//增加
Db.save("application", "id", record);
return record.getStr("id");
}
/**
*
*
* @param dataset_name
* @return
*/
public static Record getDataSet(String dataset_name) {
String sql = "select * from dataset where name=?";
return Db.findFirst(sql, dataset_name);
}
/**
*
*
* @param sourceDatasetName
*/
public static String addDataSet(String sourceDatasetName, String targetDatasetName) {
//获取数据集
Record record = getDataSet(sourceDatasetName);
if (record == null) {
System.out.println(sourceDatasetName + "数据集不存在!");
System.exit(0);
}
//克隆出对象
record = new Record().setColumns(record.getColumns());
//生成一个uuid
record.set("id", UUID.randomUUID());
//名称
record.set("name", targetDatasetName);
record.set("desc", targetDatasetName);
//增加
Db.save("dataset", "id", record);
return record.getStr("id");
}
/**
* 访Token
*
* @param application_id id
*/
public static void addAccessToken(String application_id) {
Record record = new Record();
record.set("create_time", LocalDateTime.now());
record.set("update_time", LocalDateTime.now());
record.set("application_id", UUID.fromString(application_id));
//生成一个16位的随机数
record.set("access_token", UUID.randomUUID().toString().replace("-", "").substring(0, 16).toLowerCase());
record.set("is_active", true);
record.set("access_num", 100);
record.set("white_active", false);
record.set("white_list", new String[]{""});
record.set("show_source", false);
Db.save("application_access_token", "application_id", record);
}
public static void main(String[] args) throws Exception {
//加载配置文件
PropKit.use("MaxKb.properties");
//初始化数据库
MaxKbDb.Init();
MaxKbUtil.Init();
//获取模型的id
String model_name = "DeepSeek";
Record record = getModel(model_name);
Record record = MaxKbUtil.getModel(model_name);
String model_id = record.getStr("id");
System.out.println(model_id);
//拷贝生成应用
String sourceApplicationName = "应用【模板】";
String targetApplicationName = "XXX的应用";
String application_id = addApplication(sourceApplicationName, targetApplicationName);
String application_id = MaxKbUtil.addApplication(sourceApplicationName, targetApplicationName);
//拷贝生成知识库
String sourceDataSetName = "知识库【模板】";
String targetDataSetName = "XXX的知识库";
String dataset_id = addDataSet(sourceDataSetName, targetDataSetName);
String dataset_id = MaxKbUtil.addDataSet(sourceDataSetName, targetDataSetName);
//应用与知识库关联
record = new Record();
@ -145,7 +43,7 @@ public class TestMaxKB {
Db.save("application_dataset_mapping", "id", record);
//生成应用的访问Token
addAccessToken(application_id);
MaxKbUtil.addAccessToken(application_id);
System.out.println("增加成功!");
}

@ -1,7 +1,7 @@
package Tools.MaxKb;
import Tools.MaxKb.Service.MaxKbService;
import Tools.MaxKb.Util.MaxKbDb;
import Tools.MaxKb.Util.MaxKbUtil;
import com.jfinal.kit.PropKit;
public class UploadQA {
@ -13,7 +13,7 @@ public class UploadQA {
//加载配置文件
PropKit.use("MaxKb.properties");
//初始化数据库
MaxKbDb.Init();
MaxKbUtil.Init();
//上传文件
MaxKbService.uploadQA(uploadFile);

@ -1,24 +0,0 @@
package Tools.MaxKb.Util;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.activerecord.dialect.PostgreSqlDialect;
import com.jfinal.plugin.hikaricp.HikariCpPlugin;
public class MaxKbDb {
/**
* MaxKB
*/
public static void Init() {
String jdbcUrl = PropKit.get("jdbcUrl");
String user = PropKit.get("user");
String password = PropKit.get("password");
String driverClassName = PropKit.get("driverClassName");
//读取库
HikariCpPlugin hp = new HikariCpPlugin(jdbcUrl, user, password, driverClassName);
hp.start();
ActiveRecordPlugin arp = new ActiveRecordPlugin(hp);
arp.setDialect(new PostgreSqlDialect());
arp.start();
}
}

@ -0,0 +1,132 @@
package Tools.MaxKb.Util;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;
import com.jfinal.plugin.activerecord.dialect.PostgreSqlDialect;
import com.jfinal.plugin.hikaricp.HikariCpPlugin;
import java.time.LocalDateTime;
import java.util.UUID;
public class MaxKbUtil {
/**
* MaxKB
*/
public static void Init() {
String jdbcUrl = PropKit.get("jdbcUrl");
String user = PropKit.get("user");
String password = PropKit.get("password");
String driverClassName = PropKit.get("driverClassName");
//读取库
HikariCpPlugin hp = new HikariCpPlugin(jdbcUrl, user, password, driverClassName);
hp.start();
ActiveRecordPlugin arp = new ActiveRecordPlugin(hp);
arp.setDialect(new PostgreSqlDialect());
arp.start();
}
/**
*
*
* @param model_name
* @return
*/
public static com.jfinal.plugin.activerecord.Record getModel(String model_name) {
String sql = "select * from model where name=?";
return Db.findFirst(sql, model_name);
}
/**
*
*
* @param applicationName
* @return
*/
public static com.jfinal.plugin.activerecord.Record getApplication(String applicationName) {
String sql = "select * from application where name=?";
return Db.findFirst(sql, applicationName);
}
/**
*
*
* @param sourceApplicationName
* @param targetApplicationName
*/
public static String addApplication(String sourceApplicationName, String targetApplicationName) {
//获取应用
com.jfinal.plugin.activerecord.Record record = getApplication(sourceApplicationName);
if (record == null) {
System.out.println(sourceApplicationName + "应用不存在!");
System.exit(0);
}
//克隆出对象
record = new com.jfinal.plugin.activerecord.Record().setColumns(record.getColumns());
//生成一个uuid
record.set("id", UUID.randomUUID());
//名称
record.set("name", targetApplicationName);
//增加
Db.save("application", "id", record);
return record.getStr("id");
}
/**
*
*
* @param dataset_name
* @return
*/
public static com.jfinal.plugin.activerecord.Record getDataSet(String dataset_name) {
String sql = "select * from dataset where name=?";
return Db.findFirst(sql, dataset_name);
}
/**
*
*
* @param sourceDatasetName
*/
public static String addDataSet(String sourceDatasetName, String targetDatasetName) {
//获取数据集
com.jfinal.plugin.activerecord.Record record = getDataSet(sourceDatasetName);
if (record == null) {
System.out.println(sourceDatasetName + "数据集不存在!");
System.exit(0);
}
//克隆出对象
record = new com.jfinal.plugin.activerecord.Record().setColumns(record.getColumns());
//生成一个uuid
record.set("id", UUID.randomUUID());
//名称
record.set("name", targetDatasetName);
record.set("desc", targetDatasetName);
//增加
Db.save("dataset", "id", record);
return record.getStr("id");
}
/**
* 访Token
*
* @param application_id id
*/
public static void addAccessToken(String application_id) {
com.jfinal.plugin.activerecord.Record record = new Record();
record.set("create_time", LocalDateTime.now());
record.set("update_time", LocalDateTime.now());
record.set("application_id", UUID.fromString(application_id));
//生成一个16位的随机数
record.set("access_token", UUID.randomUUID().toString().replace("-", "").substring(0, 16).toLowerCase());
record.set("is_active", true);
record.set("access_num", 100);
record.set("white_active", false);
record.set("white_list", new String[]{""});
record.set("show_source", false);
Db.save("application_access_token", "application_id", record);
}
}
Loading…
Cancel
Save