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

5分钟搭建SenseVoice语音识别服务:支持HTTP接口调用,小白友好教程

5分钟搭建SenseVoice语音识别服务支持HTTP接口调用小白友好教程1. 快速了解SenseVoice语音识别服务SenseVoice是一款基于ONNX量化的多语言语音识别服务特别适合需要快速部署语音识别功能的开发者。它最大的特点是开箱即用不需要复杂的配置就能获得高质量的语音转文字能力。这个服务能帮你做什么把会议录音自动转成文字记录为视频内容自动生成字幕开发语音交互的智能应用分析客服电话录音内容最棒的是它支持中文、粤语、英语、日语、韩语等多种语言还能自动检测语言类型。即使你完全没有AI背景也能在5分钟内把它跑起来2. 环境准备与安装2.1 基础环境要求在开始之前请确保你的系统满足以下条件Python 3.7或更高版本至少2GB可用内存网络连接首次运行需要下载模型2.2 一键安装依赖打开终端Linux/Mac或命令提示符Windows执行以下命令安装所需依赖pip install funasr-onnx gradio fastapi uvicorn soundfile jieba这个命令会安装运行SenseVoice所需的所有Python包包括funasr-onnx语音识别推理引擎gradio用于构建Web界面fastapi和uvicorn用于提供API服务soundfile处理音频文件jieba中文分词工具3. 启动语音识别服务3.1 启动命令安装完依赖后用这个简单命令启动服务python3 app.py --host 0.0.0.0 --port 7860你会看到类似这样的输出INFO: Started server process [12345] INFO: Waiting for application startup. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:7860这表示服务已经成功启动现在可以通过浏览器或API来使用它了。3.2 服务访问方式启动后你有三种方式使用这个语音识别服务Web界面打开浏览器访问http://localhost:7860可以直接上传音频文件测试识别效果适合快速验证和演示API文档访问http://localhost:7860/docs查看所有可用的API接口可以直接在页面上测试API调用健康检查访问http://localhost:7860/health确认服务是否正常运行返回{status:healthy}表示一切正常4. 通过API调用语音识别4.1 基本API调用示例最常用的API是转写接口可以通过curl命令测试curl -X POST http://localhost:7860/api/transcribe \ -F fileaudio.wav \ -F languageauto \ -F use_itntrue这个请求会上传名为audio.wav的音频文件自动检测语言languageauto启用逆文本正则化如把百分之十转为10%4.2 Python调用示例如果你想在自己的Python程序中使用这个服务可以这样写import requests def transcribe_audio(file_path): url http://localhost:7860/api/transcribe with open(file_path, rb) as f: files {file: f} data {language: auto, use_itn: true} response requests.post(url, filesfiles, datadata) if response.status_code 200: return response.json() else: print(f识别失败: {response.text}) return None # 使用示例 result transcribe_audio(meeting_recording.wav) print(result[text]) # 打印识别结果4.3 支持的音频格式这个服务可以处理多种常见音频格式WAV推荐识别效果最好MP3M4AFLAC建议使用16kHz采样率的单声道音频这样识别效果最佳。5. 进阶使用技巧5.1 直接使用Python库除了HTTP API你也可以直接调用Python库from funasr_onnx import SenseVoiceSmall # 初始化模型会自动使用缓存模型 model SenseVoiceSmall( /root/ai-models/danieldong/sensevoice-small-onnx-quant, batch_size10, quantizeTrue ) # 识别单个文件 result model([audio.wav], languageauto, use_itnTrue) print(result[0][text]) # 批量识别多个文件 results model([audio1.wav, audio2.wav, audio3.wav], languagezh) for res in results: print(res[text])5.2 语言代码参考如果你知道音频的语言直接指定语言代码可以提高识别准确率代码语言auto自动检测zh中文en英语yue粤语ja日语ko韩语5.3 处理长音频对于超过1分钟的音频建议先分割成小段再识别用pydub等库分割音频批量提交识别合并结果from pydub import AudioSegment # 分割长音频 audio AudioSegment.from_file(long_audio.wav) chunks [audio[i*60000:(i1)*60000] for i in range(len(audio)//60000 1)] # 保存临时文件并识别 for i, chunk in enumerate(chunks): chunk.export(ftemp_{i}.wav, formatwav) print(model([ftemp_{i}.wav], languageauto)[0][text])6. 常见问题解答6.1 模型下载问题Q: 第一次运行很慢为什么A: 服务首次运行需要下载约230MB的量化模型之后会缓存在/root/ai-models/danieldong/sensevoice-small-onnx-quant目录下次启动就快了。6.2 性能优化建议Q: 识别速度能更快吗A: 可以尝试以下方法使用WAV格式而非MP3明确指定语言而非auto适当降低音频采样率不低于16kHz6.3 特殊功能说明Q: ITN是什么应该开启吗A: ITN逆文本正则化会把口语化的数字表达转为标准形式如三点五 → 3.5百分之二十 → 20%一千二百元 → 1200元建议对正式文档开启对口语化内容可以关闭。7. 总结通过这篇教程你已经学会了如何一键安装SenseVoice语音识别服务通过Web界面快速测试识别效果使用HTTP API集成到自己的应用中直接调用Python库进行批量处理处理常见问题和优化识别效果这个服务特别适合快速验证语音识别功能中小规模的语音处理需求需要多语言支持的场景资源有限的环境部署现在你可以开始尝试用SenseVoice为你的应用添加语音识别能力了获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

相关文章:

5分钟搭建SenseVoice语音识别服务:支持HTTP接口调用,小白友好教程

5分钟搭建SenseVoice语音识别服务:支持HTTP接口调用,小白友好教程 1. 快速了解SenseVoice语音识别服务 SenseVoice是一款基于ONNX量化的多语言语音识别服务,特别适合需要快速部署语音识别功能的开发者。它最大的特点是开箱即用,…...

nli-MiniLM2-L6-H768真实效果:政务公开信件政策主题识别准确率91.7%

nli-MiniLM2-L6-H768真实效果:政务公开信件政策主题识别准确率91.7% 1. 效果惊艳的零样本分类器 在政务公开信件处理场景中,我们测试了cross-encoder/nli-MiniLM2-L6-H768模型的真实表现。这款轻量级NLI模型在政策主题识别任务上达到了91.7%的准确率&a…...

如何解决HPC和学术环境中LDAP用户无root权限构建容器镜像难题:img工具的完整应用指南

如何解决HPC和学术环境中LDAP用户无root权限构建容器镜像难题:img工具的完整应用指南 【免费下载链接】img Standalone, daemon-less, unprivileged Dockerfile and OCI compatible container image builder. 项目地址: https://gitcode.com/gh_mirrors/im/img …...

如何快速掌握mtail:日志指标提取的终极指南

如何快速掌握mtail:日志指标提取的终极指南 【免费下载链接】mtail extract internal monitoring data from application logs for collection in a timeseries database 项目地址: https://gitcode.com/gh_mirrors/mt/mtail mtail 是一款强大的日志指标提取…...

终极Airframe React主题定制指南:轻松打造个性化UI界面

终极Airframe React主题定制指南:轻松打造个性化UI界面 【免费下载链接】airframe-react Free Open Source High Quality Dashboard based on Bootstrap 4 & React 16: https://airframe-react-lime.vercel.app 项目地址: https://gitcode.com/gh_mirrors/ai/…...

Netcode for GameObjects部署实战:从开发到发布的完整流程

Netcode for GameObjects部署实战:从开发到发布的完整流程 【免费下载链接】com.unity.netcode.gameobjects Netcode for GameObjects is a high-level netcode SDK that provides networking capabilities to GameObject/MonoBehaviour workflows within Unity and…...

NCMconverter:3分钟快速解锁加密音乐文件的终极免费方案

NCMconverter:3分钟快速解锁加密音乐文件的终极免费方案 【免费下载链接】NCMconverter NCMconverter将ncm文件转换为mp3或者flac文件 项目地址: https://gitcode.com/gh_mirrors/nc/NCMconverter 你是否曾经遇到过这样的情况:从音乐平台下载了心…...

egergergeeert部署案例:CSDN GPU平台7860端口Web服务搭建全记录

egergergeeert部署案例:CSDN GPU平台7860端口Web服务搭建全记录 1. 项目背景与镜像介绍 egergergeeert 是一套专为图像创作场景设计的文生图AI镜像,能够通过简单的提示词输入直接生成高质量图片。这套解决方案特别适合需要快速生成插画草图、角色设计图…...

php-qrcode实战教程:如何为二维码添加Logo和背景图片

php-qrcode实战教程:如何为二维码添加Logo和背景图片 【免费下载链接】php-qrcode A PHP QR Code generator and reader with a user-friendly API. 项目地址: https://gitcode.com/gh_mirrors/ph/php-qrcode php-qrcode是一个功能强大的PHP二维码生成和读取…...

Phi-3.5-mini-instruct部署案例:开发者如何用单卡A10部署高性能轻量模型

Phi-3.5-mini-instruct部署案例:开发者如何用单卡A10部署高性能轻量模型 1. 模型简介 Phi-3.5-mini-instruct 是一个轻量级的高性能开放模型,属于Phi-3模型家族。这个模型基于精心筛选的高质量数据集构建,特别注重推理密集型任务的数据处理…...

SSH服务器强化完全手册:基于ssh-audit的安全配置最佳实践

SSH服务器强化完全手册:基于ssh-audit的安全配置最佳实践 【免费下载链接】ssh-audit SSH server & client security auditing (banner, key exchange, encryption, mac, compression, compatibility, security, etc) 项目地址: https://gitcode.com/gh_mirro…...

DeOldify服务高可用设计:双实例负载均衡+Nginx反向代理故障转移方案

DeOldify服务高可用设计:双实例负载均衡Nginx反向代理故障转移方案 1. 引言 在现代AI服务部署中,单点故障是影响服务可用性的主要风险。特别是对于DeOldify这样的深度学习图像上色服务,模型推理需要消耗大量计算资源,单实例部署…...

uni-app怎么获取WiFi列表 uni-app手机连接WiFi信息查询【教程】

getWifiList返回空因未走完完整流程:需先startWifi初始化,再注册onGetWifiList监听回调,且真机必须开启定位权限并配置requiredPrivateInfos白名单。uni-app里getWifiList为什么总返回空?因为没走完完整流程:微信小程序…...

从零开始用MedGemma:医学影像上传、提问与分析结果查看

从零开始用MedGemma:医学影像上传、提问与分析结果查看 1. MedGemma系统简介 MedGemma Medical Vision Lab是一个基于Google MedGemma-1.5-4B多模态大模型构建的医学影像智能分析Web系统。这个创新工具让医学研究人员和教育工作者能够通过简单的网页界面&#xff…...

如何选择LeetCode2的多语言支持:Java、JavaScript与Shell脚本的终极指南

如何选择LeetCode2的多语言支持:Java、JavaScript与Shell脚本的终极指南 【免费下载链接】Leetcode Solutions to LeetCode problems; updated daily. Subscribe to my YouTube channel for more. 项目地址: https://gitcode.com/gh_mirrors/leetcode2/Leetcode …...

Kubero社区贡献指南:从新手到贡献者的完整路径

Kubero社区贡献指南:从新手到贡献者的完整路径 【免费下载链接】kubero A free and self-hosted PaaS alternative to Heroku / Netlify / Coolify / Vercel / Dokku / Portainer running on Kubernetes 项目地址: https://gitcode.com/gh_mirrors/ku/kubero …...

Qwen3-ASR-1.7B开源模型实践:微调适配特定行业口音与专业词汇指南

Qwen3-ASR-1.7B开源模型实践:微调适配特定行业口音与专业词汇指南 1. 项目概述 Qwen3-ASR-1.7B是阿里云通义千问团队开源的中量级语音识别模型,相比之前的0.6B版本,在识别准确率上有了显著提升。这个模型特别擅长处理复杂的长难句和中英文混…...

Oboe核心特性解析:10个必知的高性能音频开发技巧

Oboe核心特性解析:10个必知的高性能音频开发技巧 【免费下载链接】oboe Oboe is a C library that makes it easy to build high-performance audio apps on Android. 项目地址: https://gitcode.com/gh_mirrors/ob/oboe Oboe是一个C库,旨在简化A…...

碧蓝航线自动化终极指南:告别重复操作,让AzurLaneAutoScript接管一切

碧蓝航线自动化终极指南:告别重复操作,让AzurLaneAutoScript接管一切 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLane…...

tao-8k开源Embedding模型实测:对比BGE、text2vec等主流模型效果

tao-8k开源Embedding模型实测:对比BGE、text2vec等主流模型效果 1. 引言:为什么需要长文本Embedding模型 在日常的文本处理任务中,我们经常需要将文字转换为数值向量,这就是Embedding模型的作用。传统的Embedding模型通常只能处…...

Dev-CPP技术架构深度解析:为什么它成为轻量级C/C++开发者的首选

Dev-CPP技术架构深度解析:为什么它成为轻量级C/C开发者的首选 【免费下载链接】Dev-CPP A greatly improved Dev-Cpp 项目地址: https://gitcode.com/gh_mirrors/dev/Dev-CPP Dev-CPP是一款专注于C/C语言开发的轻量级集成开发环境,通过优化的架构…...

Finatra Thrift服务构建:高并发RPC服务的终极解决方案

Finatra Thrift服务构建:高并发RPC服务的终极解决方案 【免费下载链接】finatra Fast, testable, Scala services built on TwitterServer and Finagle 项目地址: https://gitcode.com/gh_mirrors/fi/finatra Finatra是基于TwitterServer和Finagle构建的快速…...

JDspyder:京东商品自动化预约与抢购的终极解决方案

JDspyder:京东商品自动化预约与抢购的终极解决方案 【免费下载链接】JDspyder 京东预约&抢购脚本,可以自定义商品链接 项目地址: https://gitcode.com/gh_mirrors/jd/JDspyder 在当今电商抢购热潮中,京东商品自动化和秒杀抢购脚本…...

Qwen3-4B-Thinking快速上手指南:Gradio界面+参数调优实操手册

Qwen3-4B-Thinking快速上手指南:Gradio界面参数调优实操手册 1. 模型简介 Qwen3-4B-Thinking-2507-Gemini-2.5-Flash-Distill是基于通义千问Qwen3-4B官方模型开发的一个特殊版本,专注于"思考模式"输出。这个版本最大的特点是能够生成推理链&…...

Laratrust检查器架构解析:深入理解权限验证机制

Laratrust检查器架构解析:深入理解权限验证机制 【免费下载链接】laratrust Handle roles and permissions in your Laravel application 项目地址: https://gitcode.com/gh_mirrors/la/laratrust Laratrust是Laravel应用中处理角色和权限的强大工具&#xf…...

打卡信奥刷题(3142)用C++实现信奥题 P7635 [COCI 2010/2011 #5] DVONIZ

P7635 [COCI 2010/2011 #5] DVONIZ 题目描述 当前 K K K 个元素的和与最后 K K K 个元素的和都不大于 S S S 时,我们说这个 2 K 2\times K 2K 个元素的序列是有趣的。 给出一个长度为 N N N 的序列 A A A。对于每个元素,输出从该元素开始的最长…...

Malcolm核心组件深度解析:从PCAP处理到威胁检测

Malcolm核心组件深度解析:从PCAP处理到威胁检测 【免费下载链接】Malcolm Malcolm is a powerful, easily deployable network traffic analysis tool suite for full packet capture artifacts (PCAP files), Zeek logs and Suricata alerts. 项目地址: https://…...

从多旋翼到无人车:APM/ArduPilot开源项目实战指南,一个地面站搞定5种模型

从多旋翼到无人车:APM/ArduPilot开源项目实战指南 在模型爱好者的世界里,从天空翱翔的无人机到地面疾驰的无人车,再到水中潜行的无人船,控制系统的统一性和可移植性一直是开发者面临的挑战。APM/ArduPilot开源项目以其惊人的通用性…...

glslify与Webpack集成:现代前端工具链中的GLSL模块化

glslify与Webpack集成:现代前端工具链中的GLSL模块化 【免费下载链接】glslify A node.js-style module system for GLSL! :sparkles: 项目地址: https://gitcode.com/gh_mirrors/gl/glslify glslify是一款强大的GLSL模块化工具,它为WebGL开发者提…...

BitNet b1.58-2B-4T开源模型应用场景:文档摘要、代码补全、智能客服落地

BitNet b1.58-2B-4T开源模型应用场景:文档摘要、代码补全、智能客服落地 1. 项目概述 BitNet b1.58-2B-4T是一款革命性的开源大语言模型,采用创新的1.58-bit量化技术。这个模型最特别的地方在于它的权重只有-1、0、1三个值,平均每个参数仅占…...