diff --git a/vetti-admin/src/main/java/com/vetti/socket/ChatWebSocketHandler.java b/vetti-admin/src/main/java/com/vetti/socket/ChatWebSocketHandler.java index 1e294ac..dd0c9ea 100644 --- a/vetti-admin/src/main/java/com/vetti/socket/ChatWebSocketHandler.java +++ b/vetti-admin/src/main/java/com/vetti/socket/ChatWebSocketHandler.java @@ -130,7 +130,7 @@ public class ChatWebSocketHandler { aiStreamClient.streamChat(cacheResultText, new OpenAiStreamListenerService() { @Override public void onMessage(String content) { - log.info("返回AI结果:{}",content.trim()); + log.info("返回AI结果:{}",content); // 实时输出内容 //开始进行语音输出-流式持续输出 log.info("2、开始进行AI回答时间:{}",System.currentTimeMillis()/1000); @@ -140,14 +140,14 @@ public class ChatWebSocketHandler { String resultFileName = clientId + "_" + System.currentTimeMillis() + ".wav"; String resultPathUrl = RuoYiConfig.getProfile() + VOICE_STORAGE_RESULT_DIR + resultFileName; ElevenLabsClient elevenLabsClient = SpringUtils.getBean(ElevenLabsClient.class); - elevenLabsClient.handleTextToVoice(content.trim(), resultPathUrl); + elevenLabsClient.handleTextToVoice(content, resultPathUrl); log.info("3、开始进行AI回答时间:{}",System.currentTimeMillis()/1000); //持续返回数据流给客户端 try { - String resultOutPathUrl = RuoYiConfig.getProfile() + VOICE_STORAGE_RESULT_DIR + "110_"+resultFileName; - handleVoice(resultPathUrl,resultOutPathUrl); +// String resultOutPathUrl = RuoYiConfig.getProfile() + VOICE_STORAGE_RESULT_DIR + "110_"+resultFileName; + handleVoice(resultPathUrl,resultPathUrl); //文件转换成文件流 - ByteBuffer outByteBuffer = convertFileToByteBuffer(resultOutPathUrl); + ByteBuffer outByteBuffer = convertFileToByteBuffer(resultPathUrl); //发送文件流数据 session.getBasicRemote().sendBinary(outByteBuffer); // 发送响应确认 @@ -408,7 +408,6 @@ public class ChatWebSocketHandler { private void handleVoice(String inputPath,String outputPath){ double trimMs = 270; // 要去掉的尾部时长(毫秒) - try { // 1. 解析音频格式和总长度 AudioInputStream audioIn = AudioSystem.getAudioInputStream(new File(inputPath)); diff --git a/vetti-common/src/main/java/com/vetti/common/ai/gpt/OpenAiStreamClient.java b/vetti-common/src/main/java/com/vetti/common/ai/gpt/OpenAiStreamClient.java index 5c45d7b..ed40b3b 100644 --- a/vetti-common/src/main/java/com/vetti/common/ai/gpt/OpenAiStreamClient.java +++ b/vetti-common/src/main/java/com/vetti/common/ai/gpt/OpenAiStreamClient.java @@ -110,6 +110,7 @@ public class OpenAiStreamClient { // 解析JSON获取内容 try { JSONObject json = JSONUtil.parseObj(data); + System.out.println(json); String content = json.getJSONArray("choices") .getJSONObject(0) .getJSONObject("delta")