来源:ChatGPT4提示“这张图片展示了一个舒适、色彩鲜艳的办公室,里面有各种各样的装饰和植物。一位任何性别和血统的专业人士坐在一张木制的桌子旁,在一台笔记本电脑上工作,笔记本电脑上有一个大屏幕,显示着‘Faster-Whisper’软件界面。该软件正在积极地将一个大的音频文件转录成文本,多种语言并排显示ile在屏幕上用一个清晰、简单的波形表示。环境现代而平易近人,背景是一扇大窗户,显示外面阳光明媚,房间里摆满了书籍和个人风格,增添了温暖和色彩。”
语音到文本技术新时代的曙光——2003年11月仍然是语音到文本开源技术领域的里程碑。随着三款高级机型的发布——OpenAI的Whisper Large v3(多语言)、Meta的Seamless M4T v2(多语言版)和Hugging Face的Distil Whisper(英语版)——该领域取得了重大飞跃。让我们在第一篇文章中探索一下,如何通过库快速使用Large Whisper v3,从而获得任何语言的大型音频文件的转录。提供了一个笔记本。
[编辑06/12/2023]如果你需要获得一个mp3文件来使用这篇文章的代码,你可以使用我的网络应用程序YouTube视频到音频。查看帖子“视频到音频”|一个笔记本和Web应用程序,从任何YouTube视频中获取mp3音频文件,以获取链接。
【编辑于2023年12月8日】语音转文本|用扬声器从任何语言的大型音频文件中获取转录(OpenAI Whisper+NeMo Speaker Diarization)
关于语音到文本模型
来自OpenAI的Whisper Large v3(多语言)
Whisper Large v3是OpenAI的最新迭代,以其多语言功能脱颖而出。该模型代表了基于数十万小时多语言数据训练的自动语音识别(ASR)的重大进步。令人印象深刻的不仅是训练的规模,还有模型处理各种口音、方言甚至嘈杂背景的能力。这使得Whisper Large v3成为全球企业和多语言环境的理想工具,轻松超越语言障碍。(拥抱面部模型轮毂上的模型)
Meta的Seamless M4T v2(多语言)
Meta的Seamless M4T v2是语言处理技术的一大奇迹。它专为处理多个任务而设计,擅长语音到语音翻译(S2ST)、语音到文本翻译(S2TT)、文本到语音翻译、文本到文本翻译、自动语音识别。Seamless M4T v2的多语言支持打破了语言障碍,促进了商业、教育和社会互动方面的全球连接。(拥抱面部模型轮毂上的模型)
Hugging Face 中的Distil-Whisper(英文)
“拥抱脸”以其用户友好和易于访问的人工智能模型而闻名,它发布了一款专注于英语的模型Distil Whisper。它是Whisper v2模型的精简版,速度快6倍,体积小49%,在分布外的评估集上执行的WER在1%以内。(拥抱面部模型轮毂上的模型)
影响和未来前景
这些发布标志着语音到文本技术的一个重要时刻,展示了人工智能的快速进步。展望未来,我们可以期待这些模型的发展,并更深入地融入我们数字生活的各个方面。它们可以改变客户服务、医疗保健、法律转录等,提高互动效率,打破语言障碍。
代码|通过库使用Large Whisper v3 Faster Whisper
更快的耳语是使用CTranslate2对OpenAI的whisper模型的重新实现,CTtranslate2是Transformer模型的快速推理引擎。
在使用较少内存的情况下,此实现的速度是openai/verbear的4倍,具有相同的精度。在CPU和GPU上使用8位量化可以进一步提高效率。
很容易,我们可以使用Whisper Large v3作为基础模型,以实现更快的耳语!
任何大型音频文件,任何语言
无论是mp3文件还是wav文件,您都不需要将音频文件分割成小文件。只需在您的音频文件上运行更快的耳语代码(在CPU或GPU上),即可获得尊重静音、时间信息和正确书写风格(大写字母、句点、逗号等)的转录!
基本python代码
[ source ]
# !pip install faster-whisper from faster_whisper import WhisperModel model_size = "large-v3" # Run on GPU with FP16 model = WhisperModel(model_size, device="cuda", compute_type="float16") # or run on GPU with INT8 # model = WhisperModel(model_size, device="cuda", compute_type="int8_float16") # or run on CPU with INT8 # model = WhisperModel(model_size, device="cpu", compute_type="int8") segments, info = model.transcribe( "audio.mp3", beam_size=5, vad_filter=True, vad_parameters=dict(min_silence_duration_ms=500), ) print("Detected language '%s' with probability %f" % (info.language, info.language_probability)) for segment in segments: print("[%.2fs -> %.2fs] %s" % (segment.start, segment.end, segment.text))
Notebook to get styled transcript
language-models/Speech_to_Text_with_faster_whisper_on_large_audio_file_in_any_language.ipynb at… pre-trained Language Models. Contribute to piegu/language-models development by creating an account on GitHub. github.com
在这本笔记本中,您将看到如何将时间转录到DataFrame和按句子划分的风格化书面段落中。
作为一个例子(见笔记本),以下是深度学习第1课视频中转录的第一句话。关于“构建和评估高级RAG应用程序”的AI课程(音频文件:lesson1_of_RAG_course_with_DeepLearningAI.mp3)。
Retrieval Augmented Generation, or RAG, has become a key method for getting LMs answered questions over a user's own data. But to actually build and productionize a high-quality RAG system, it costs a lot to have effective retrieval techniques, to give the LM highly relevant context to generate his answer, and also to have an effective evaluation framework to help you efficiently iterate and improve your RAG system, both during initial development and during post-deployment maintenance. This course covers two advanced retrieval methods, sentence window retrieval and auto-merging retrieval, that deliver a significantly better context to the LM than simpler methods. It also covers how to evaluate your LM question-answering system with three evaluation metrics, context relevance, drowdeness, and answer relevance. I'm excited to introduce Jerry Liu, co-founder and CEO of LarmRatex and Anupam Data, co-founder and CEO of LarmRatex. For a long time, I've enjoyed following Jerry and LarmRatex on social media and getting tips on evolving RAG practices, so I'm looking forward to him teaching this body of knowledge more systematically here. And Anupam has been a professor at CMU and has done research for over a decade on trustworthy AI and how to monitor, evaluate, and optimize AI app effectiveness. Thanks, Andrew. It's great to be here. Great to be with you, Andrew. (...)
我们可以看到,Whisper Large v3在名称上只犯了几个错误(larmRatex而不是LlamaIndex,Anupam Data而不是Anupam Datta)。
等等:-)
- 登录 发表评论