From f4371f332f71e578de38e50a73a1de61c28a62cf Mon Sep 17 00:00:00 2001 From: Administrator Date: Tue, 14 Oct 2025 22:26:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=AF=AD=E9=9F=B3=E8=BD=AC?= =?UTF-8?q?=E6=96=87=E6=9C=AC=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/vetti/web/controller/ai/AiCommonController.java | 2 +- vetti-admin/src/main/resources/application-druid.yml | 2 +- vetti-admin/target/classes/application-druid.yml | 4 ++-- .../java/com/vetti/common/ai/whisper/WhisperClient.java | 8 ++++++++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/vetti-admin/src/main/java/com/vetti/web/controller/ai/AiCommonController.java b/vetti-admin/src/main/java/com/vetti/web/controller/ai/AiCommonController.java index b2cf6b3..a0dac86 100644 --- a/vetti-admin/src/main/java/com/vetti/web/controller/ai/AiCommonController.java +++ b/vetti-admin/src/main/java/com/vetti/web/controller/ai/AiCommonController.java @@ -62,7 +62,7 @@ public class AiCommonController extends BaseController @GetMapping("/handleViceToText") public AjaxResult handleViceToText() { - whisperClient.handleVoiceToText("/Users/wangxiangshun/Desktop/临时文件/output.mp3"); + whisperClient.handleVoiceToText("F:\\/output.mp3"); return success(); } diff --git a/vetti-admin/src/main/resources/application-druid.yml b/vetti-admin/src/main/resources/application-druid.yml index 778d18f..24a7f16 100644 --- a/vetti-admin/src/main/resources/application-druid.yml +++ b/vetti-admin/src/main/resources/application-druid.yml @@ -150,7 +150,7 @@ elevenLabs: # 语音转文本 whisper: apiUrl: https://api.openai.com/v1/audio/transcriptions - model: whisper-1 + model: gpt-4o-mini-transcribe apiKey: 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 language: en diff --git a/vetti-admin/target/classes/application-druid.yml b/vetti-admin/target/classes/application-druid.yml index 52f6f17..24a7f16 100644 --- a/vetti-admin/target/classes/application-druid.yml +++ b/vetti-admin/target/classes/application-druid.yml @@ -150,7 +150,7 @@ elevenLabs: # 语音转文本 whisper: apiUrl: https://api.openai.com/v1/audio/transcriptions - model: whisper-1 + model: gpt-4o-mini-transcribe apiKey: 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 language: en @@ -158,7 +158,7 @@ whisper: chatGpt: apiKey: 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 apiUrl: https://api.openai.com/v1/chat/completions - model: gpt-4 + model: gpt-3.5-turbo role: user diff --git a/vetti-common/src/main/java/com/vetti/common/ai/whisper/WhisperClient.java b/vetti-common/src/main/java/com/vetti/common/ai/whisper/WhisperClient.java index d81920e..2c3411b 100644 --- a/vetti-common/src/main/java/com/vetti/common/ai/whisper/WhisperClient.java +++ b/vetti-common/src/main/java/com/vetti/common/ai/whisper/WhisperClient.java @@ -1,6 +1,8 @@ package com.vetti.common.ai.whisper; +import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import okhttp3.*; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @@ -80,6 +82,7 @@ public class WhisperClient { * @return */ public String handleVoiceToText(String audioFileUrl) { + System.out.println("1-处理记录时间:"+System.currentTimeMillis()/1000); String resultText = ""; OkHttpClient client = new OkHttpClient(); // 音频文件路径 @@ -89,10 +92,15 @@ public class WhisperClient { Map options = new HashMap<>(); options.put("language", language); resultText = transcribe(audioFile, options, client); + if(StrUtil.isNotEmpty(resultText)){ + Map map = JSONUtil.toBean(resultText, Map.class); + resultText = map.get("text"); + } System.out.println("转写结果: " + resultText); } catch (Exception e) { e.printStackTrace(); } + System.out.println("2-处理记录时间:"+System.currentTimeMillis()/1000); return resultText; } } \ No newline at end of file