结论先行

  1. Spring AI 在 2025-07 之后已提供 audio→text 统一抽象(AudioTranscriptionModel / AudioTranscriptionPrompt),可无缝对接 OpenAI Whisper阿里 DashScope 等官方转录模型。

  2. Kimi 目前只开放「文本对话」接口,没有公开「音频上传」或「语音识别」端点;因此 Spring AI 官方 starter 里暂无 KimiAudioTranscriptionModel,也无法把原始音频直接甩给 Kimi。

  3. 折中做法:先拿 Spring AI 的 Whisper(或 DashScope)转录,再把文本发给 Kimi 做后续摘要/问答,即可在 Spring AI 框架内完成「语音→文字→Kimi」全链路。


  1. Spring AI 语音转文字怎么用(已验证)

java

复制

// 0. 依赖(Spring AI 1.0.0-M3 之后)
implementation("org.springframework.ai:spring-ai-openai-spring-boot-starter")

// 1. 注入转录模型
@Autowired
lateinitvar transcriber: OpenAiAudioTranscriptionModel

// 2. 上传音频
val audio: Resource = ClassPathResource("test.m4a")
val prompt = AudioTranscriptionPrompt(
        audio,
        OpenAiAudioTranscriptionOptions.builder()
            .withModel("whisper-1")   // 可换成 dashscope 等
            .withLanguage("zh")       // 可选
            .build())
val text = transcriber.call(prompt).result.output
println(text)   // 你好,这是测试音频

上面代码在 2025-07 CSDN 实测通过;阿里版把 OpenAiAudioTranscriptionModel 换成 DashScopeAudioTranscriptionModel 即可。


  1. Kimi 的实况

  • 官方文档与社区 issue 截至 2025-08 仅提供 Chat Completions 接口,不支持上传音频文件

  • Spring AI 社区 starter(spring-ai-kimi)也只实现了 KimiChatModel,没有 KimiAudioTranscriptionModel 类。
    因此「直接把音频发给 Kimi」这条通路目前不存在


  1. 推荐落地方案(Spring AI 框架内)

语音文件 → Whisper/DashScope 转录 → 文本 → KimiChatModel 摘要/问答

全部用 Spring AI 提供的 Portable API 完成,后续若 Kimi 开放语音接口,只需换一道 TranscriptionModel 实现即可,业务代码零改动。


一句话总结
Spring AI 自身已经能「音频转文字」;但 Kimi 目前只接受文本,所以不能直接发音频给 Kimi。先用 Spring AI 的 Whisper/DashScope 转录,再把文字喂给 KimiChatModel,即可在 Spring 体系里完成整条链路。

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐