|
@@ -41,7 +41,7 @@ public class MedicalRecordQc123Service {
|
|
|
private String knowledgeKid;
|
|
private String knowledgeKid;
|
|
|
|
|
|
|
|
|
|
|
|
|
- private static final String RULE_MATCHING_URL = "http://localhost:6039/rag/schema";
|
|
|
|
|
|
|
+ private static final String RULE_MATCHING_URL = "http://192.168.0.77:6039/rag/schema";
|
|
|
// private static final String LLM_MODEL_URL = "http://60.164.133.40:19997/v1/chat/completions";
|
|
// private static final String LLM_MODEL_URL = "http://60.164.133.40:19997/v1/chat/completions";
|
|
|
private static final String QC_NAME = "AI智能质控系统";
|
|
private static final String QC_NAME = "AI智能质控系统";
|
|
|
|
|
|
|
@@ -139,7 +139,7 @@ public class MedicalRecordQc123Service {
|
|
|
Map<String, Object> param = new HashMap<>();
|
|
Map<String, Object> param = new HashMap<>();
|
|
|
// param.put("messages", sectionLabel); // ✅ 动态传「入院记录」「首次病程记录」等
|
|
// param.put("messages", sectionLabel); // ✅ 动态传「入院记录」「首次病程记录」等
|
|
|
param.put("messages", "入院记录"); // ✅ 动态传「入院记录」「首次病程记录」等
|
|
param.put("messages", "入院记录"); // ✅ 动态传「入院记录」「首次病程记录」等
|
|
|
- param.put("model", "qwen3-32B");
|
|
|
|
|
|
|
+ param.put("model", "deepseek-r1-70B");
|
|
|
param.put("maxDistance", 0.75);
|
|
param.put("maxDistance", 0.75);
|
|
|
param.put("kid", knowledgeKid);
|
|
param.put("kid", knowledgeKid);
|
|
|
|
|
|
|
@@ -181,11 +181,11 @@ public class MedicalRecordQc123Service {
|
|
|
private String buildPrompt(String sectionLabel, String content, String ragResult) {
|
|
private String buildPrompt(String sectionLabel, String content, String ragResult) {
|
|
|
StringBuilder instruction = new StringBuilder();
|
|
StringBuilder instruction = new StringBuilder();
|
|
|
|
|
|
|
|
- instruction.append("你是一名专业的医疗病历质控员,负责依据标准书写规则对【")
|
|
|
|
|
|
|
+ instruction.append("你扮演的是一名专业的医疗病历质控员,依据【质控规则】对提供的【")
|
|
|
.append(sectionLabel).append("】进行质量审查。\n");
|
|
.append(sectionLabel).append("】进行质量审查。\n");
|
|
|
- instruction.append("当前病历原文如下:\n").append(content).append("\n\n");
|
|
|
|
|
|
|
+ instruction.append("【病历原文】:\n").append(content).append("\n\n");
|
|
|
instruction.append("所有质控规则内容如下:\n").append(ragResult).append("\n\n");
|
|
instruction.append("所有质控规则内容如下:\n").append(ragResult).append("\n\n");
|
|
|
- instruction.append("根据我提供的规则筛选【").append(sectionLabel).append("】需要的规则进行质控\n\n");
|
|
|
|
|
|
|
+ instruction.append("根据我提供的病历【").append(sectionLabel).append("】筛选出需要的规则进行质控\n\n");
|
|
|
|
|
|
|
|
// ✅ 保留你原来的输出格式规范
|
|
// ✅ 保留你原来的输出格式规范
|
|
|
instruction.append("如果病历完全符合所有规则,请严格输出以下内容:\\n");
|
|
instruction.append("如果病历完全符合所有规则,请严格输出以下内容:\\n");
|
|
@@ -229,7 +229,7 @@ public class MedicalRecordQc123Service {
|
|
|
*/
|
|
*/
|
|
|
private String callLLM(String prompt) {
|
|
private String callLLM(String prompt) {
|
|
|
Map<String, Object> request = new HashMap<>();
|
|
Map<String, Object> request = new HashMap<>();
|
|
|
- request.put("model", "qwen3-32B");
|
|
|
|
|
|
|
+ request.put("model", "deepseek-r1-70B");
|
|
|
request.put("stream", false);
|
|
request.put("stream", false);
|
|
|
|
|
|
|
|
List<Map<String, String>> messages = new ArrayList<>();
|
|
List<Map<String, String>> messages = new ArrayList<>();
|
|
@@ -238,7 +238,7 @@ public class MedicalRecordQc123Service {
|
|
|
|
|
|
|
|
String jsonBody = JSON.toJSONString(
|
|
String jsonBody = JSON.toJSONString(
|
|
|
new HashMap<String, Object>() {{
|
|
new HashMap<String, Object>() {{
|
|
|
- put("model", "qwen3-32B");
|
|
|
|
|
|
|
+ put("model", "deepseek-r1-70B");
|
|
|
put("stream", false);
|
|
put("stream", false);
|
|
|
put("messages", messages);
|
|
put("messages", messages);
|
|
|
put("max_tokens", 4096); // ✅ 限制最大输出token数
|
|
put("max_tokens", 4096); // ✅ 限制最大输出token数
|