
对话式人工智能
对话式人工智能指的是一系列让计算机通过自然语言处理(NLP)、机器学习等语言技术来模拟人类对话的技术。它驱动着客户支持、医疗、零售等领域的聊天机器人、虚拟助手和语音助手,提高了效率和个性化体验。...
OpenAI Whisper 是一款开源的 ASR 系统,能够准确地将语音转换为 99 种语言的文本,支持转录、翻译和语言识别,为强大的 AI 自动化提供支撑。
OpenAI Whisper 可根据不同语境被视为 模型 或 系统。
Whisper 的主要功能是将语音转录为文本输出。 它擅长:
Whisper 的核心是 Transformer 架构,具体为编码-解码模型。Transformer 神经网络擅长处理序列数据,并能理解长序列中的上下文关系。自 2017 年 “Attention is All You Need” 论文提出以来,Transformer 已成为众多 NLP 任务的基础。
Whisper 的处理流程包括:
Whisper 在庞大的 68 万小时监督数据 上训练,这些数据采集自互联网,涵盖:
Whisper 覆盖 99 种语言,对多样语言输入有强大适应力,适合面向国际的应用和服务。
采用大规模监督数据训练,Whisper 在转录任务中表现出高准确率。对不同口音、方言和背景噪音具备优异鲁棒性,适应多种真实场景。
Whisper 不仅能转录,还可:
Whisper 作为开源软件,开发者可以:
将 Whisper 集成到聊天机器人和 AI 助手中,可实现:
Whisper 作为 Python 库实现,可无缝集成到基于 Python 的项目中。使用 Whisper 需配置开发环境、安装依赖,并通过库函数实现音频转录或翻译。
在使用 Whisper 前,需要准备 Python、PyTorch、FFmpeg 及 Whisper 本身。
如未安装 Python,可在官网下载。安装 PyTorch 可用 pip:
pip install torch
或者前往 PyTorch 官网 查看适用于不同操作系统和 Python 版本的安装说明。
Whisper 需 FFmpeg 处理音频文件。不同操作系统可用相应包管理器进行安装。
Ubuntu/Debian:
sudo apt update && sudo apt install ffmpeg
MacOS(Homebrew):
brew install ffmpeg
Windows(Chocolatey):
choco install ffmpeg
用 pip 安装 Whisper Python 包:
pip install -U openai-whisper
如需直接安装最新版:
pip install git+https://github.com/openai/whisper.git
请确保已启用开发者模式:
Whisper 提供多种规模的模型,覆盖 tiny
到 large
,速度和准确率各有不同。
大小 | 参数量 | 英文专用模型 | 多语言模型 | 需显存 | 相对速度 |
---|---|---|---|---|---|
tiny | 3900 万 | tiny.en | tiny | ~1 GB | ~32x |
base | 7400 万 | base.en | base | ~1 GB | ~16x |
small | 2.44亿 | small.en | small | ~2 GB | ~6x |
medium | 7.69亿 | medium.en | medium | ~5 GB | ~2x |
large | 15.5亿 | N/A | large | ~10 GB | 1x |
配置好环境并安装必要组件后,即可在 Python 项目中调用 Whisper。
首先导入库并加载模型:
import whisper
# 加载所需模型
model = whisper.load_model("base")
根据需求用对应模型名替换 "base"
。
Whisper 提供简单的 transcribe
函数将音频文件转为文本。
示例:转录英文音频
# 转录音频文件
result = model.transcribe("path/to/english_audio.mp3")
# 输出转录文本
print(result["text"])
model.transcribe()
:处理音频文件,输出包含文本和元数据的字典。result["text"]
:获取转录结果文本。Whisper 可将多语种音频翻译为英文。
示例:将西班牙语音频翻译为英文
# 转录并翻译西班牙语音频为英文
result = model.transcribe("path/to/spanish_audio.mp3", task="translate")
# 输出翻译文本
print(result["text"])
task="translate"
:指示模型对音频进行翻译而非逐字转录。Whisper 支持自动检测语言,若指定可提升准确率和速度。
示例:转录法语音频
# 指定法语进行转录
result = model.transcribe("path/to/french_audio.wav", language="fr")
# 输出转录文本
print(result["text"])
Whisper 可用 detect_language
方法识别音频中的语言。
示例:语言识别
# 加载并预处理音频
audio = whisper.load_audio("path/to/unknown_language_audio.mp3")
audio = whisper.pad_or_trim(audio)
# 转为 log-Mel 频谱图
mel = whisper.log_mel_spectrogram(audio).to(model.device)
# 检测语言
_, probs = model.detect_language(mel)
language = max(probs, key=probs.get)
print(f"Detected language: {language}")
whisper.load_audio()
:加载音频文件。whisper.pad_or_trim()
:调整音频长度以适配模型输入。whisper.log_mel_spectrogram()
:转为模型所需格式。model.detect_language()
:输出各语言概率,选取最可能的语种。如需更细致控制转录流程,可调用底层函数并自定义解码选项。
decode
函数decode
支持指定语言、任务及是否包含时间戳等选项。
示例:自定义解码选项
# 设置解码选项
options = whisper.DecodingOptions(language="de", without_timestamps=True)
# 解码音频
result = whisper.decode(model, mel, options)
# 输出识别文本
print(result.text)
Whisper 可集成麦克风实时音频转录。
示例:转录麦克风实时输入
import whisper
import sounddevice as sd
# 加载模型
model = whisper.load_model("base")
# 录制麦克风音频
duration = 5 # 秒
fs = 16000 # 采样率
print("Recording...")
audio = sd.rec(int(duration * fs), samplerate=fs, channels=1, dtype='float32')
sd.wait
OpenAI Whisper 是由 OpenAI 开发的一款先进的自动语音识别(ASR)系统,采用深度学习技术将语音转录为书面文本。它支持 99 种语言,擅长转录、翻译和语言识别。
Whisper 采用基于 Transformer 的编码-解码架构,将音频处理为 log-Mel 频谱图,并通过语言模型输出文本。它使用 68 万小时多语言多任务数据进行训练,实现了高精度和强鲁棒性。
Whisper 支持多语言语音识别、语音翻译、自动语言识别,对口音和噪音具有强大适应性,并以开源形式提供,便于定制和集成。
硬件要求取决于模型大小:较小的模型如 'tiny' 需要约 1GB 显存,最大模型需约 10GB。Whisper 在 GPU 上运行更快,也可在 CPU 上运行但处理时间更长。
可以,Whisper 作为 Python 库实现,可通过 pip 安装。它支持语音转录、翻译和实时语音应用,便于集成到 Python 项目中。
常见应用包括自动会议记录、语音聊天机器人、实时翻译、无障碍工具(字幕和辅助技术)、呼叫中心自动化和语音控制自动化系统等。
有,替代方案包括开源引擎如 Mozilla DeepSpeech、Kaldi、Wav2vec,以及商用 API 如 Google Cloud Speech-to-Text、Microsoft Azure AI Speech 和 AWS Transcribe。
是的,OpenAI Whisper 是开源项目,开发者可根据自身需求定制、微调并集成到自己的产品和服务中,无需授权限制。
将先进的语音转文字能力集成到你的应用中,自动化工作流程,并结合 OpenAI Whisper 与 FlowHunt 提升用户体验。
对话式人工智能指的是一系列让计算机通过自然语言处理(NLP)、机器学习等语言技术来模拟人类对话的技术。它驱动着客户支持、医疗、零售等领域的聊天机器人、虚拟助手和语音助手,提高了效率和个性化体验。...
由 OpenAI GPT-4o 驱动的 AI 聊天机器人助手,可自动搜索并利用公司内部文档来回答用户问题。结合聊天历史和检索到的知识,提供具备上下文感知、准确且对话式的回应,非常适用于客户支持、内部帮助台或员工入职场景。...
大型语言模型(LLM)是一种通过海量文本数据训练的人工智能,能够理解、生成和处理人类语言。LLM 利用深度学习和 Transformer 神经网络,驱动文本生成、摘要、翻译等多种任务,广泛应用于各行各业。...