Commit f4a52985 authored by 赵灿灿's avatar 赵灿灿

修改配置信息

parent 72e4f51a
Pipeline #21075 passed with stages
in 3 minutes and 13 seconds
......@@ -283,16 +283,41 @@ public class LangChainController {
//调用智能体
@GetMapping("/sseIntelligent")
public ResponseEntity<SseEmitter> sse(@RequestParam String chatMessage,@RequestParam String dialogId) {
public ResponseEntity<SseEmitter> sse(@RequestParam String chatMessage,@RequestParam String dialogId,
@RequestParam String selectedExpert ,@RequestParam String selectedOrg) {
String condition="";
String regionName= chatService.getAuthRegionName();
if("组织内".equals(selectedOrg)&&StringUtils.isNotEmpty(regionName))
{
condition=",只能查找"+regionName;
}else if("组织外".equals(selectedOrg)&&StringUtils.isNotEmpty(regionName))
{
condition=",排除"+regionName;
}
logger.info("开始调用1");
String urlAddr = "http://10.32.41.35:40517/scene_gateway/agent/6809d0895428476bb6789ad70c525c97";
//String urlAddr = "http://10.32.41.35:40517/scene_gateway/agent/83f77143b09c461993dd9a7db403eb94";
SseEmitter emitter = new SseEmitter(0L);
QuestionRequest questionRequest=new QuestionRequest();
questionRequest.setKeyword(chatMessage);
questionRequest.setKeyword(chatMessage+condition);
questionRequest.setRequestId(getRequestId());
questionRequest.setDialogId(dialogId);
Conversations conversations=chatService.saveConversations(dialogId,chatMessage,"内部专家");
Messages messagesQusetion=new Messages();
messagesQusetion.setRequestId(dialogId);
messagesQusetion.setContent(chatMessage);
messagesQusetion.setRole("user");
messagesQusetion.setModelName("qwen2.5-72b");
messagesQusetion=chatService.insertQuestionMessage(conversations,messagesQusetion);
Messages messagesContent=new Messages();
messagesContent.setRole("assistant");
messagesContent.setModelName("qwen2.5-72b");
messagesContent.setParentMsgId(messagesQusetion.getId());
messagesContent.setSort(messagesQusetion.getSort()+1);
chatService.insertMessage(conversations,messagesContent);
String params = JsonUtils.objectToJson(questionRequest);
StringBuffer content =new StringBuffer();
new Thread(() -> {
HttpURLConnection connection = null;
try {
......@@ -335,13 +360,18 @@ public class LangChainController {
emitter.send(SseEmitter.event().data("stop"),MediaType.parseMediaType("application/json; charset=UTF-8"));
}else
{
emitter.send(SseEmitter.event().data(data), MediaType.parseMediaType("application/json; charset=UTF-8"));
String sendData=data.replace("attachment#[]#attachmentsource#[]#source","").replace("<br />", "\n").replaceAll("###(?=\\S)", "### ").replaceAll("##(?=\\S)", "## ")
.replaceAll("#(?=\\S)", "# ").replaceAll("####(?=\\S)", "#### ").
replaceAll("#####(?=\\S)", "##### ").replaceAll("######(?=\\S)", "###### ");
emitter.send(SseEmitter.event().data(sendData), MediaType.parseMediaType("application/json; charset=UTF-8"));
content.append(sendData);
}
}
}
}
}
messagesContent.setContent(content.toString());
chatService.updateMessage(messagesContent);
emitter.complete(); // 流结束
} catch (Exception e) {
emitter.completeWithError(e);
......@@ -720,7 +750,7 @@ public class LangChainController {
*/
@GetMapping("/conversationMessages")
public Result conversationMessages(@RequestParam String sessionId) {
List<Map<String,Object>> mapList= chatService.conversationMessages(sessionId);
List<Messages> mapList= chatService.conversationMessages(sessionId);
return Result.successData(mapList);
}
}
......@@ -270,24 +270,18 @@ public class ChatService {
}
//查询会话内容通过会话id
public List<Map<String,Object>> conversationMessages(String sessionId)
public List<Messages> conversationMessages(String sessionId)
{
List<Map<String,Object>> mapList=new ArrayList<>();
List<Messages> messagesList=new ArrayList<>();
try {
MessagesCriteria messagesCriteria=new MessagesCriteria();
messagesCriteria.setSessionId(sessionId);
List<Messages> messagesList= iMessagesRepository.selectByCriteria(messagesCriteria);
for (Messages mes:
messagesList) {
Map<String,Object> map=new HashMap<>();
map.put("role",mes.getRole());
map.put("content",mes.getContent());
mapList.add(map);
}
messagesList= iMessagesRepository.selectByCriteria(messagesCriteria);
} catch (Exception e) {
e.printStackTrace();
}
return mapList;
return messagesList;
}
......@@ -312,4 +306,22 @@ public class ChatService {
return calendar.getTime();
}
//获取当前用户所在的地市
public String getAuthRegionName()
{
String regionName="";
try {
User user = auth.getUserReq();
String[] rganizationNameList=user.getOrganizationName().split("\\\\");
if(rganizationNameList.length>=2)
{
regionName=rganizationNameList[1];
}
} catch (Exception e) {
e.printStackTrace();
}
return regionName;
}
}
......@@ -100,9 +100,9 @@
<div class="dropdown-item" @click.stop="selectExpert('内部专家')" :class="{ 'active': selectedExpert === '内部专家' }">
<span>内部专家</span>
</div>
<div class="dropdown-item" @click.stop="selectExpert('外部专家')" :class="{ 'active': selectedExpert === '外部专家' }">
<span>外部专家</span>
</div>
<!-- <div class="dropdown-item" @click.stop="selectExpert('外部专家')" :class="{ 'active': selectedExpert === '外部专家' }">-->
<!-- <span>外部专家</span>-->
<!-- </div>-->
</div>
</div>
<div class="custom-select" v-click-outside="closeOrgDropdown">
......
......@@ -219,7 +219,8 @@ require(['jquery', 'vue', 'utils','marked','markdown', 'global'], function ($, V
}
});
// 连接SSE
this.currentEventSource = new EventSource('../../api/langchain/sseBigTwo');
this.currentEventSource = new EventSource('../../api/langchain/sseIntelligent?chatMessage='+chatMessage+"&dialogId="+this.sessionId
+"&selectedExpert="+this.selectedExpert+"&selectedOrg="+this.selectedOrg);
let responseText = '';
var md = new markdown({
......@@ -306,6 +307,7 @@ require(['jquery', 'vue', 'utils','marked','markdown', 'global'], function ($, V
// 这里可以添加将新对话添加到历史列表的逻辑
// this.addChatToHistory('新对话', new Date());
});
this.fistLoading=true;
},
loadChatHistory(chatId) {
......@@ -326,6 +328,8 @@ require(['jquery', 'vue', 'utils','marked','markdown', 'global'], function ($, V
//
this.sessionId = chatId;
// this.clearChat();
this.questions= [];
this.messages=[];
//这里添加加载对应对话历史的逻辑
//实际实现时可以调用API获取历史记录
$.ajax({
......@@ -335,10 +339,10 @@ require(['jquery', 'vue', 'utils','marked','markdown', 'global'], function ($, V
contentType: "application/json;charset=UTF-8",
async: false,
success: function (data) {
var mes = data.data;
if (mes && mes.length > 0){
var conversationMessages = data.data;
if (conversationMessages && conversationMessages.length > 0){
that.fistLoading = false;
mes.forEach(section => {
conversationMessages.forEach(section => {
that.addMessage(section.role, section.content);
});
}
......
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