尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

53_Spring AI 干货笔记之 转录 API

53_Spring AI 干货笔记之 转录 API
📅 发布时间:2026/6/19 3:37:00

一、转录 API

Spring AI 通过 TranscriptionModel 接口为语音转文字转录提供了统一的 API。这使您能够编写可在不同转录提供商之间移植的代码。

二、支持的提供商

  • OpenAI 的 Whisper API

  • Azure OpenAI Whisper API

三、通用接口

所有转录提供商都实现了以下共享接口:

3.1 TranscriptionModel

TranscriptionModel 接口提供了将音频转换为文本的方法:

publicinterfaceTranscriptionModelextendsModel<AudioTranscriptionPrompt,AudioTranscriptionResponse>{/** * 转录给定提示中的音频。 */AudioTranscriptionResponsecall(AudioTranscriptionPrompttranscriptionPrompt);/** * 转录音频资源的便捷方法。 */defaultStringtranscribe(Resourceresource){AudioTranscriptionPromptprompt=newAudioTranscriptionPrompt(resource);returnthis.call(prompt).getResult().getOutput();}/** * 使用选项转录音频资源的便捷方法。 */defaultStringtranscribe(Resourceresource,AudioTranscriptionOptionsoptions){AudioTranscriptionPromptprompt=newAudioTranscriptionPrompt(resource,options);returnthis.call(prompt).getResult().getOutput();}}

3.2 AudioTranscriptionPrompt

AudioTranscriptionPrompt 类封装了输入音频和选项:

ResourceaudioFile=newFileSystemResource("/path/to/audio.mp3");AudioTranscriptionPromptprompt=newAudioTranscriptionPrompt(audioFile,options);

3.3 AudioTranscriptionResponse

AudioTranscriptionResponse 类包含转录文本和元数据:

AudioTranscriptionResponseresponse=model.call(prompt);StringtranscribedText=response.getResult().getOutput();AudioTranscriptionResponseMetadatametadata=response.getMetadata();

四、编写与提供商无关的代码

共享转录接口的主要好处之一是能够编写无需修改即可与任何转录提供商一起工作的代码。实际的提供商(OpenAI、Azure OpenAI 等)由您的 Spring Boot 配置决定,允许您在不更改应用程序代码的情况下切换提供商。

4.1 基础服务示例

共享接口允许您编写与任何转录提供商一起工作的代码:

@ServicepublicclassTranscriptionService{privatefinalTranscriptionModeltranscriptionModel;publicTranscriptionService(TranscriptionModeltranscriptionModel){this.transcriptionModel=transcriptionModel;}publicStringtranscribeAudio(ResourceaudioFile){returntranscriptionModel.transcribe(audioFile);}publicStringtranscribeWithOptions(ResourceaudioFile,AudioTranscriptionOptionsoptions){AudioTranscriptionPromptprompt=newAudioTranscriptionPrompt(audioFile,options);AudioTranscriptionResponseresponse=transcriptionModel.call(prompt);returnresponse.getResult().getOutput();}}

此服务可与 OpenAI、Azure OpenAI 或任何其他转录提供商无缝协作,实际实现由您的 Spring Boot 配置决定。

五、提供商特定功能

虽然共享接口提供了可移植性,但每个提供商也通过提供商特定的选项类(例如 OpenAiAudioTranscriptionOptions、AzureOpenAiAudioTranscriptionOptions)提供特定功能。这些类在实现 AudioTranscriptionOptions 接口的同时,添加了提供商特定的能力。

有关提供商特定功能的详细信息,请参阅各个提供商的文档页面。

相关新闻

  • 手把手教你从零构建自定义元件进Multisim数据库
  • 6、软件开发中的代码审查、缺陷跟踪与敏捷工具应用
  • 47、非线性控制系统中的可观测性与零动态算法解析

最新新闻

  • 深入解析P4080DS嵌入式系统:从电源、时钟到ngPIXIS FPGA的硬件设计精髓
  • ERPNext开源ERP完整教程:中小企业如何零成本实现数字化转型
  • rvest完整指南:3分钟掌握R语言最简单网页抓取技巧
  • CANN/asc-devkit:half转int32函数
  • 如何高效使用Python SECS/GEM库:半导体设备通信的终极指南
  • 2026年值得信赖的家纺店推荐 服务品质之选 价格透明零套路 - mypinpai

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号