修改功能调试 确保可以联通ai中台[AC-INIT]

This commit is contained in:
MerCry 2026-02-26 23:25:44 +08:00
parent 905601ecdb
commit d25859e754
1 changed files with 18 additions and 3 deletions

View File

@ -5,6 +5,7 @@ import com.wecom.robot.adapter.TransferCapable;
import com.wecom.robot.dto.InboundMessage; import com.wecom.robot.dto.InboundMessage;
import com.wecom.robot.dto.OutboundMessage; import com.wecom.robot.dto.OutboundMessage;
import com.wecom.robot.dto.ai.ChatRequest; import com.wecom.robot.dto.ai.ChatRequest;
import com.wecom.robot.dto.ai.ChatMessage;
import com.wecom.robot.dto.ai.ChatResponse; import com.wecom.robot.dto.ai.ChatResponse;
import com.wecom.robot.entity.Message; import com.wecom.robot.entity.Message;
import com.wecom.robot.entity.Session; import com.wecom.robot.entity.Session;
@ -17,6 +18,7 @@ import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -94,7 +96,20 @@ public class MessageRouterServiceImpl implements MessageRouterService {
List<Message> history = sessionManagerService.getSessionMessages(session.getSessionId()); List<Message> history = sessionManagerService.getSessionMessages(session.getSessionId());
ChatRequest chatRequest = ChatRequest.fromInboundMessage(message); List<ChatMessage> chatHistory = new ArrayList<>();
if (history != null && !history.isEmpty()) {
for (Message msg : history) {
String role = Message.SENDER_TYPE_CUSTOMER.equals(msg.getSenderType())
? ChatMessage.ROLE_USER
: ChatMessage.ROLE_ASSISTANT;
chatHistory.add(ChatMessage.builder()
.role(role)
.content(msg.getContent())
.build());
}
}
ChatRequest chatRequest = ChatRequest.fromInboundMessage(message, chatHistory);
ChatResponse chatResponse; ChatResponse chatResponse;
try { try {
chatResponse = aiServiceClient.generateReply(chatRequest).get(); chatResponse = aiServiceClient.generateReply(chatRequest).get();
@ -110,8 +125,8 @@ public class MessageRouterServiceImpl implements MessageRouterService {
double confidence = chatResponse.getConfidence() != null ? chatResponse.getConfidence() : 0.0; double confidence = chatResponse.getConfidence() != null ? chatResponse.getConfidence() : 0.0;
int messageCount = sessionManagerService.getMessageCount(session.getSessionId()); int messageCount = sessionManagerService.getMessageCount(session.getSessionId());
boolean shouldTransfer = chatResponse.getShouldTransfer() != null && chatResponse.getShouldTransfer(); // boolean shouldTransfer = chatResponse.getShouldTransfer() != null && chatResponse.getShouldTransfer();
boolean shouldTransfer =false;
if (!shouldTransfer) { if (!shouldTransfer) {
shouldTransfer = transferService.shouldTransferToManual( shouldTransfer = transferService.shouldTransferToManual(
message.getContent(), message.getContent(),