当前位置: 首页 > news >正文

企业网站做留言板有什么优势企业做网站维护价格

企业网站做留言板有什么优势,企业做网站维护价格,产品展示型网站建设,ui设计兼职平台有哪些构建一个语音转文字的WebApi服务 简介 由于业务需要,我们需要提供一个语音输入功能,以便更方便用户的使用,所以我们需要提供语音转文本的功能,下面我们将讲解使用Whisper将语音转换文本,并且封装成WebApi提供web服务…

构建一个语音转文字的WebApi服务

简介

由于业务需要,我们需要提供一个语音输入功能,以便更方便用户的使用,所以我们需要提供语音转文本的功能,下面我们将讲解使用Whisper将语音转换文本,并且封装成WebApi提供web服务给前端调用。

创建项目

  1. 第一步打开Vscode,选择一个目录作为工作空间,然后打开控制台,输入以下指令创建一个WebApi的项目:
dotnet new webapi -n Whisper --no-openapi=true
  1. 添加依赖包的引用:
    1. Whisper.netWhisper.cpp的.NET封装
    2. Whisper.net.Runtime.Clblast则是使用GPU的包,当然也可以不使用GPU
<PackageReference Include="Whisper.net" Version="1.5.0" />
<PackageReference Include="Whisper.net.Runtime.Clblast" Version="1.5.0" />
  1. 下载一个模型:https://huggingface.co/ggerganov/whisper.cpp/tree/main ,找到ggml-base-q5_1.bin下载,请注意的是带en的是只识别英文的。其他的是全语言。

  2. 下载一个语音示例文件 https://github.com/sandrohanea/whisper.net/blob/main/examples/TestData/kennedy.wav

<ItemGroup><None Update="ggml-base-q5_1.bin"><CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory></None><None Update="kennedy.wav"><CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory></None></ItemGroup>

实现基本使用案例

将俩个文件复制到部署目录

创建WhisperService.cs并且读取音频文件然后返回识别结果

public class WhisperService
{/// <summary>/// 音频转文字/// </summary>/// <param name="processor">注入的对象</param>/// <returns></returns>public static async Task<string> SpeechRecognitionAsync(WhisperProcessor processor){var sw = Stopwatch.StartNew();var wavFileName = "kennedy.wav";await using var fileStream = File.OpenRead(wavFileName);var str = string.Empty;await foreach (var result in processor.ProcessAsync(fileStream)){Console.WriteLine($"{result.Start}->{result.End}: {result.Text}");str += result.Text;}sw.Stop();Console.WriteLine($"翻译耗时:{sw.ElapsedMilliseconds}ms 翻译结果:{str} 文件大小:{fileStream.Length}");return str;}}

修改Program.cs

var builder = WebApplication.CreateBuilder(args);builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();// 注册单例的WhisperFactory,并且使用ggml-base-q5_1.bin模型
builder.Services.AddSingleton<WhisperFactory>((services) => WhisperFactory.FromPath("ggml-base-q5_1.bin"));
builder.Services.AddSingleton((services)=>
{// 从构建的服务中获取WhisperFactoryvar whisperFactory = services.GetRequiredService<WhisperFactory>();return whisperFactory.CreateBuilder().WithLanguage("auto") // 自动识别语言.Build();
});var app = builder.Build();if (app.Environment.IsDevelopment())
{app.UseSwagger();app.UseSwaggerUI();
}// 使用MiniApis构建一个简单的API,使用WhisperService.SpeechRecognitionAsync方法
app.MapGet("/whisper/speech-recognition", WhisperService.SpeechRecognitionAsync).WithName("whisper").WithOpenApi().WithDescription("识别语音文件");await app.RunAsync();

服务构建完成,下面运行体验效果:

在控制台输入:

cd .\Whisper\
dotent run
  • 显卡:1050Ti

  • 耗时:3385ms

  • 显卡:4080
  • 耗时:800ms

总结:

在本次会议中,讨论了构建一个语音转文字的WebApi服务的流程和步骤。主要内容包括创建项目、添加依赖包的引用、下载模型和语音示例文件、实现基本使用案例以及服务构建完成后的运行体验。

行动项目:

  • 下载并添加依赖包Whisper.netWhisper.net.Runtime.Clblast
  • 下载模型ggml-base-q5_1.bin和语音示例文件kennedy.wav,并将其复制到部署目录。
  • 创建WhisperService.cs,实现音频转文字的功能。
  • 修改Program.cs,注册WhisperFactory并构建API,使用WhisperService.SpeechRecognitionAsync方法。
  • 运行服务,测试效果。

分享

技术交流群:737776595

http://www.yayakq.cn/news/196806/

相关文章:

  • 网页提示站点不安全高质量外链平台
  • 采集站seo赚钱辅导班自己做网站视频
  • 网站分享模板房地产销售新手必学知识
  • 网站输入一级域名自动跳转二级域名手机怎么登录微信网页版
  • 卸载西部数码网站管理助手团队建设思路和方案
  • 建设外汇网站wordpress重置
  • 简单的企业网站cmswordpress怎么实现实时刷新
  • 做期货资讯网站手机网站报价单模板下载
  • 网页制作与网站建设宝典扫描版pdf关键词排名点击工具
  • 佛山建网站费用使用pycharm网站开发
  • 做网站编辑需要会什么网络宣传方式
  • wordpress 速卖通插件seo是什么化学名称
  • 找人做企业网站注意啥wordpress怎么获取在线ip
  • 自己做网站能否赚钱6湖南长沙关键词推广电话
  • 上海监理建设协会网站青岛崂山区网站建设
  • 杭州电商网站开发seo机构
  • 网站自己做的记者证erp管理软件开发公司
  • phpcms v9 实现网站搜索seo网站设计招聘
  • 做淘宝优惠网站步骤网页设计怎么做
  • 检查网站收录问题网站开发开题报告引言
  • 郑州艾特网站建设公司国外做仿牌网站
  • php5+mysql网站开发实例精讲推广产品引流的最佳方法
  • 网页网站免费wordpress可以做商城吗
  • 网站制作与网站建设pdf广东手机网站开发公司
  • 免费制作网站的平台在线代理网页浏览网站
  • 做网上购物网站网站免费优化工具
  • 如何做好网站建设的关键重点哔哩哔哩视频推广
  • app网站开发后台处理seo优化轻松seo优化排名
  • 百度网站的优缺点西安长安区建设局网站
  • 做电影网站如何买版权给我播放个免费的片