综合介绍
AssemblyAI 是一个专注于语音AI技术的平台,为开发者和企业提供高效的语音转文字和音频分析工具。其核心亮点在于 Universal 系列模型,尤其是最新发布的 Universal-2,这是 AssemblyAI 迄今最先进的语音转文字模型。Universal-2 在 Universal-1 的基础上进一步提升,训练数据超过 1250 万小时的多语言音频,能够精准捕捉真实对话的复杂性,提供高准确度的音频数据。相比 Universal-1,Universal-2 在专有名词识别(如人名、品牌)上提升了 24%,在数字字母混合内容(如电话号码、邮箱)准确率提高 21%,文本格式化(如标点、大小写)改进 15%,显著减少了传统模型在“最后一英里”问题上的不足。AssemblyAI 通过简单易用的 API,将这些尖端技术开放给全球用户,已被 Spotify、Fireflies 等企业用于构建智能语音产品,覆盖会议记录、内容分析等领域。
功能列表
- 语音转文字:将音频文件或实时音频流转换为高精度文本,支持多语言和多种音频格式。
- 说话人检测:自动识别音频中不同说话人的身份,适用于多人对话场景。
- 情感分析:分析语音中的情感倾向,如积极、消极或中立,提升用户体验。
- 实时转录:提供低延迟的实时语音转文字功能,适合语音代理或直播字幕。
- 音频智能模型:包括内容审核、主题检测、关键词搜索等高级功能。
- LeMUR框架:利用大型语言模型处理转录文本,支持摘要生成、问答等功能。
- 字幕生成:支持导出 SRT 或 VTT 格式的字幕文件,便于视频内容制作。
- PII 隐私保护:自动识别并屏蔽音频中的敏感信息,如姓名或电话号码。
使用帮助
AssemblyAI 是一个基于云的 API 服务,无需本地安装即可使用其强大功能。以下是详细的使用指南,帮助您快速上手并深度挖掘其功能。
注册与获取 API 密钥
- 访问官网:打开浏览器,输入
https://www.assemblyai.com/
,进入首页。 - 注册账号:点击右上角“Sign Up”,输入邮箱和密码完成注册。注册后自动进入仪表盘(Dashboard)。
- 获取密钥:在仪表盘中找到“API Key”区域,点击“Copy”复制密钥。这是调用 API 的唯一凭证,需妥善保存。
- 免费试用:新用户可享受免费额度,无需立即绑定支付方式。
核心功能操作
AssemblyAI 的核心在于其 API 集成,以下以 Python 为例展示如何使用 Universal 系列模型。您也可以参考官网文档,使用其他语言(如 Java、Node.js)。
语音转文字(Universal-2)
- 准备工作:确保有一个音频文件(如
sample.mp3
)或 URL 链接。 - 安装 SDK:在终端运行:
pip install assemblyai
- 代码示例:
import assemblyai as aai
aai.settings.api_key = "你的API密钥" # 替换为你的密钥
transcriber = aai.Transcriber()
transcript = transcriber.transcribe("sample.mp3")
print(transcript.text) # 输出文本,如“今天天气很好。”
- Universal-2 优势:默认使用 Universal-2 模型,相较 Universal-1,它能更准确识别专有名词(如“张伟”)和格式化数字(如“2025年3月6日”),处理时间通常仅需数秒。
实时转录
- 适用场景:直播、电话会议等实时需求。
- 代码示例:
from assemblyai import RealtimeTranscriber import asyncio async def on_data(data): print(data.text) # 实时输出文本 transcriber = RealtimeTranscriber( api_key="你的API密钥", sample_rate=16000, on_data=on_data ) async def start(): await transcriber.connect() await transcriber.stream() # 开始接收音频流 asyncio.run(start())
- 操作流程:运行后对着麦克风说话,文本实时显示。Universal-2 的低延迟特性确保结果快速且准确。
说话人检测
- 启用方法:
config = aai.TranscriptionConfig(speaker_labels=True) transcript = transcriber.transcribe("sample.mp3", config=config) for utterance in transcript.utterances: print(f"说话人 {utterance.speaker}: {utterance.text}")
- 结果示例:
说话人 A: 你好,今天会议几点? 说话人 B: 下午两点。
- 提示:Universal-2 在多人对话中表现更稳定,减少混淆。
情感分析
- 启用方法:
config = aai.TranscriptionConfig(sentiment_analysis=True) transcript = transcriber.transcribe("sample.mp3", config=config) for result in transcript.sentiment_analysis: print(f"文本: {result.text}, 情感: {result.sentiment}")
- 结果示例:
文本: 我很喜欢这个产品, 情感: POSITIVE 文本: 服务有点慢, 情感: NEGATIVE
字幕生成
- 操作代码:
transcript = transcriber.transcribe("sample.mp3") with open("captions.srt", "w") as f: f.write(transcript.export_subtitles_srt())
- 结果:生成
.srt
文件,可直接导入视频编辑软件。
特色功能:LeMUR 框架
- 功能简介:LeMUR 结合大型语言模型处理转录结果,例如生成摘要。
- 操作步骤:
- 获取转录 ID:
transcript = transcriber.transcribe("sample.mp3") transcript_id = transcript.id
- 生成摘要:
from assemblyai import Lemur lemur = Lemur(api_key="你的API密钥") summary = lemur.summarize(transcript_id) print(summary.response)
- 示例输出:“会议讨论了项目进展,计划下周完成。”
- 获取转录 ID:
注意事项
- 支持格式:兼容 MP3、WAV 等 33 种音频/视频格式。
- 语言设置:支持 99+ 种语言,可通过
language_code="zh"
指定中文。 - 计费:按音频时长计费,具体价格见官网。
通过以上步骤,您可以充分利用 Universal-2 的强大功能,构建高效的语音应用。