入门
AmiVoice API 是一个将语音转换为文本的语音识别 API。当您发送语音时,它会返回将语音内容转换为文本的结果。您可以创建支持语音的应用程序,如会议记录或语音对话系统。
文档结构
请参阅"引入和运营指南"部分了解引入前的安全和运营信息,"开发指南"部分了解实施详情,"参考"部分确认 API 规格,如遇困难请参阅"帮助"部分。
引入和运营指南
汇总了安全、合规和运营所需的信息。
开发指南
解释根据目的使用 API 的方法、请求、响应等开发所需的详细信息。
参考
API 参考
帮助
故障排除和咨询方法
快速入门
获取 API key
从用户注册页面注册,并记下在我的页面的[连接信息]中显示的 API key。使用以下命令将其设置为环境变量。
- macOS / Linux
- Windows (PowerShell)
- Windows (命令提示符)
export API_KEY=your_api_key_here
$env:API_KEY = "your_api_key_here"
set API_KEY=your_api_key_here
AmiVoice Tech Blog 提供了从用户注册到使用 AmiVoice API 将音频文件转换为文本的逐步说明,请参考以下链接:
准备音频文件
准备要转录的音频文件。您可以直接使用以下示例音频(test.wav)。
关于支持的音频文件格式,请参阅关于音频格式。
执行语音识别
请执行以下操作。将 test.wav 替换为您要使用的音频文件的路径。
- curl (macOS / Linux)
- curl (Windows PowerShell)
- curl (Windows 命令提示符)
- Python
curl https://acp-api.amivoice.com/v1/recognize \
-F d=-a-general \
-F u=$API_KEY \
-F a=@test.wav | jq
- 如果未安装
curl命令,请从 https://curl.se/ 下载适用于您的操作系统的软件包,或使用软件包管理器安装 curl。 - 结果文本是 Unicode 转义的。上述命令使用
jq来格式化响应,使其更易读。如果未安装jq,请尝试删除| jq部分执行。您可以从 https://stedolan.github.io/jq/ 下载适用于您的操作系统的软件包,或使用软件包管理器安装jq命令。
curl.exe https://acp-api.amivoice.com/v1/recognize `
-F d=-a-general `
-F u=$env:API_KEY `
-F a=@test.wav | jq
- 在 PowerShell 中,
curl是Invoke-WebRequest的别名,因此请明确使用curl.exe。Windows 10 版本 1803 及更高版本默认包含curl.exe。如果没有包含,请从 https://curl.se/ 安装。 - 结果文本是 Unicode 转义的。上述命令使用
jq来格式化响应,使其更易读。如果未安装jq,请尝试删除| jq部分执行。您可以从 https://stedolan.github.io/jq/ 下载适用于您的操作系统的软件包,或使用软件包管理器安装jq命令。
curl https://acp-api.amivoice.com/v1/recognize ^
-F d=-a-general ^
-F u=%API_KEY% ^
-F a=@test.wav
- Windows 10 版本 1803 及更高版本默认包含
curl。如果没有包含,请从 https://curl.se/ 安装。 - 结果文本是 Unicode 转义的。上述命令使用
jq来格式化响应,使其更易读。如果未安装jq,请尝试删除| jq部分执行。您可以从 https://stedolan.github.io/jq/ 下载适用于您的操作系统的软件包,或使用软件包管理器安装jq命令。
import os
import requests
with open("test.wav", "rb") as f:
response = requests.post(
"https://acp-api.amivoice.com/v1/recognize",
data={"d": "-a-general", "u": os.environ["API_KEY"]},
files={"a": f}
)
data = response.json() # JSON 解析器会自动将 Unicode 转义转换为中文
print(data)
确认结果
成功时会返回如下 JSON。转录结果包含在 text 字段中。
{
"results": [
{
"tokens": [ ... ],
"confidence": 0.998,
"starttime": 250,
"endtime": 8794,
"text": "アドバンスト・メディアは、人と機械との自然なコミュニケーションを実現し、豊かな未来を創造していくことを目指します。"
}
],
"utteranceid": "20220602/14/018122d637320a301bc194c9_20220602_141433",
"text": "アドバンスト・メディアは、人と機械との自然なコミュニケーションを実現し、豊かな未来を創造していくことを目指します。",
"code": "",
"message": ""
}
关于详细的响应内容,请参阅语音识别结果格式。
下一步
快速入门使用了同步 HTTP 接口。如果要处理实时音频源,可以使用 WebSocket 接口;如果要处理超过 15MB 的大音频文件,可以使用异步 HTTP 接口。有关各种用例和使用要点,请参阅接口类型和使用方法。
同步 HTTP 接口
简单实现,适用于短音频文件
WebSocket 接口
流式处理
异步 HTTP 接口
大文件和批处理
我们还提供支持开发的客户端库和示例程序。如果想使用生成式 AI 或编程 Agent 进行调查或实现,请参阅使用生成式 AI 进行开发。
客户端库
示例程序
使用生成式 AI 进行开发
让生成式 AI 参考官方文档
为了提高语音识别精度,可以利用以下功能进行自定义:
语音识别引擎
可以根据领域更改语音识别引擎
用户词典
可以预先注册专业术语和专有名词
规则语法
通过限定模式来提高精度
我们还提供说话人分类和情感分析等附加功能。请根据目的使用。
说话人区分
可以将包含多个说话人的音频按说话人分离,识别谁在什么时候说话。
情感分析
可以从语音中分析情感,识别说话人的情感状态。
我们还提供支持构建服务运营的功能。
使用量统计标签
可以统计请求时设置的每个标签的使用时间。
请同时参阅全面的开发指南。