WhisperBot:整合了Mistral大型语言模型的实时语音转文本系统

本文主要是介绍WhisperBot:整合了Mistral大型语言模型的实时语音转文本系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目简介

欢迎来到 WhisperBot。WhisperBot 基于 WhisperLive 和 WhisperSpeech 的功能而构建,在实时语音到文本管道之上集成了大型语言模型 Mistral (LLM)。WhisperLive 依赖于 OpenAI Whisper,这是一个强大的自动语音识别 (ASR) 系统。Mistral 和 Whisper 都经过优化,可作为 TensorRT 引擎高效运行,从而最大限度地提高性能和实时处理能力。

特征

  • 实时语音转文本:利用 OpenAI WhisperLive 将口语实时转换为文本。

  • 大型语言模型集成:添加大型语言模型 Mistral,以增强对转录文本的理解和上下文。

  • TensorRT 优化:Mistral 和 Whisper 都经过优化,可作为 TensorRT 引擎运行,确保高性能和低延迟处理。

先决条件

安装 TensorRT-LLM 来构建 Whisper 和 Mistral TensorRT 引擎。自述文件为 TensorRT-LLM 构建了一个 docker 镜像。除了构建 docker 镜像之外,我们还可以参考 README 和 Dockerfile.multi 在基础 pytroch docker 镜像中安装所需的包。只要确保使用 dockerfile 中提到的正确的基础镜像,一切都会顺利进行。

构建 Whisper TensorRT 引擎

  • 将工作目录更改为 TensorRT-LLM 中的耳语示例目录。

cd TensorRT-LLM/examples/whisper
  • 目前,默认情况下 TensorRT-LLM 仅支持 large-v2 和 large-v3 。在此存储库中,我们使用 small.en 。

  • 下载所需的资源。

wget --directory-prefix=assets assets/mel_filters.npz https://raw.githubusercontent.com/openai/whisper/main/whisper/assets/mel_filters.npz
# small.en modelwget --directory-prefix=assets https://openaipublic.azureedge.net/main/whisper/models/f953ad0fd29cacd07d5a9eda5624af0f6bcf2258be67c92b79389873d91e0872/small.en.pt
  • 编辑 build.py 以支持 small.en 。为此,请将 "small.en" 添加为列表 choices 中的项目。

  • 构建 small.en TensorRT 引擎。

pip install -r requirements.txtpython3 build.py --output_dir whisper_small_en --use_gpt_attention_plugin --use_gemm_plugin --use_layernorm_plugin  --use_bert_attention_plugin --model_name small.en

构建 Mistral TensorRT 引擎

  • 将工作目录更改为 TensorRT-LLM 文件夹中的 llama 示例目录。

cd TensorRT-LLM/examples/llama
  • 将 Mistral 转换为 fp16 TensorRT 引擎。

    
    python build.py --model_dir teknium/OpenHermes-2.5-Mistral-7B \--dtype float16 \--remove_input_padding \--use_gpt_attention_plugin float16 \--enable_context_fmha \--use_gemm_plugin float16 \--output_dir ./tmp/mistral/7B/trt_engines/fp16/1-gpu/ \--max_input_len 5000--max_batch_size 1

构建 Phi TensorRT 引擎

注意:Phi 仅在主分支可用,尚未发布。因此,请确保从主分支构建 TensorRT-LLM。

  • 将工作目录更改为 TensorRT-LLM 文件夹中的 phi 示例目录。

cd TensorRT-LLM/examples/phi
  • 构建 phi TensorRT 引擎

git lfs install
git clone https://huggingface.co/microsoft/phi-2
python3 build.py --dtype=float16                    \--log_level=verbose                \--use_gpt_attention_plugin float16 \--use_gemm_plugin float16          \--max_batch_size=16                \--max_input_len=1024               \--max_output_len=1024              \--output_dir=phi_engine            \--model_dir=phi-2>&1 | tee build.log

项目链接

https://github.com/collabora/WhisperBot

这篇关于WhisperBot:整合了Mistral大型语言模型的实时语音转文本系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/657415

相关文章

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

SpringBoot整合DeepSeek实现AI对话功能

《SpringBoot整合DeepSeek实现AI对话功能》本文介绍了如何在SpringBoot项目中整合DeepSeekAPI和本地私有化部署DeepSeekR1模型,通过SpringAI框架简化了... 目录Spring AI版本依赖整合DeepSeek API key整合本地化部署的DeepSeek

Ollama整合open-webui的步骤及访问

《Ollama整合open-webui的步骤及访问》:本文主要介绍如何通过源码方式安装OpenWebUI,并详细说明了安装步骤、环境要求以及第一次使用时的账号注册和模型选择过程,需要的朋友可以参考... 目录安装环境要求步骤访问选择PjrIUE模型开始对话总结 安装官方安装地址:https://docs.