使用ModelScope社区搭建一个录音情感识别小应用

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,100CU*H 3个月
简介: 本文介绍通过ModelScope来完成“语音情绪识别”这一应用,该应用使用两个模型:● 语音转文本(ASR):paraformer模型● 文本情绪识别:达摩院StructBERT中文情感分类模型

操作步骤

参考快速开始

环境准备

为了更快的体验产品,这里选择了使用ModelScope提供的远程环境,即Notebook进行开发,更加便捷。


模型调试:语音转文本

参考:https://modelscope.cn/#/models/damo/speech_paraformer_asr_nat-zh-cn-16k-common-vocab8358-tensorflow1/summary

准备语音文件:

  • 只支持wav格式,如果你没有这个格式的文件,请下载格式转换器一类的工具
  • 将wav文件上传至notebook

  • 输入下列代码
frommodelscope.pipelinesimportpipelinefrommodelscope.utils.constantimportTasksinference_16k_pipline=pipeline(
task=Tasks.auto_speech_recognition,
model='damo/speech_paraformer_asr_nat-zh-cn-16k-common-vocab8358-tensorflow1')
rec_result=inference_16k_pipline(audio_in='xigua2.wav')
print(rec_result)
  • 注意文件的路径,使用相对路径。


模型调试:文本情感分析

参考:https://modelscope.cn/#/models/damo/nlp_structbert_sentiment-classification_chinese-base/summary

直接输入代码

frommodelscope.pipelinesimportpipelinefrommodelscope.utils.constantimportTaskssemantic_cls=pipeline(Tasks.sentiment_classification, 'damo/nlp_structbert_sentiment-classification_chinese-base')
semantic_cls(input=rec_result["text"])  # 注意,这是上一步语音识别的结果

上面的代码直接引用了第一步语音识别的结果,如果你想单独测试,可以直接给文本输入,例如:

semantic_cls(input="我爱中国")


至此,我们已经在代码层面完成了两个模型的调试和串联,并实现了“语音情绪识别”这一功能。下面,我们通过一个web ui将该功能封装起来,形成一个小的app。

引入web ui

安装gradio:pip install gradio

frommodelscope.pipelinesimportpipelinefrommodelscope.utils.constantimportTasksimportgradioasgrasr=pipeline(
task=Tasks.auto_speech_recognition,
model='damo/speech_paraformer_asr_nat-zh-cn-16k-common-vocab8358-tensorflow1')
classifier=pipeline(Tasks.sentiment_classification, 'damo/nlp_structbert_sentiment-classification_chinese-base')
defspeech_to_text(speech):
text=asr(speech)["text"]
returntextdeftext_to_sentiment(text):
returnclassifier(text)
demo=gr.Blocks()
withdemo:
audio_file=gr.Audio(type="filepath")
text=gr.Textbox()
label=gr.Textbox()
b1=gr.Button("Recognize Speech")
b2=gr.Button("Classify Sentiment")
b1.click(speech_to_text, inputs=audio_file, outputs=text)
b2.click(text_to_sentiment, inputs=text, outputs=text)
demo.launch(share="true")

至此,我们就搭建了一个支持语音识别+文本情绪识别的小应用。

image.png

体验优化建议

  • 文档:
  • 文档中给出的链接不能点击右键开新的窗口,只能在一个页面上切换。
  • 文档本身自带滚动条,与浏览器本身的滚动条重复,屏幕中能看到两套水平和垂直的滚动条,例如:

  • 所有的网页都没有标题,窗口开多了之后就分不清楚哪个是干嘛的了。如下图所示

  • 文档自身目录缺失,对于“快速开始”这样很长的文章,无法按需跳转到目标章节,只能一点点滚动页面。
  • 帮助文档中没有给出进入notebook的方法


相关文章
|
7月前
|
人工智能 JSON 搜索推荐
社区供稿 | GLM-4适配ModelScope-Agent最佳实践
GLM-4是由智谱 AI 发布的新一代基座大模型。
|
2月前
|
弹性计算 Serverless API
海量大模型如何一键部署上云,函数计算 x ModelScope 社区给出答案
得益于阿里云函数计算的产品能力,魔搭 SwingDeploy 后的模型推理 API 服务默认具备极致弹性伸缩(缩零能力)、GPU 虚拟化(最小 1GB 显存粒度)、异步调用能力、按用付费、闲置计费等能力,这些能力帮助算法工程师大大加快了魔搭开源模型投入生产的生命周期。
|
7月前
|
人工智能 自然语言处理 搜索推荐
魔搭ModelScope社区作为一个AI模型开源平台,提供了丰富的模型资源和便捷的服务
【2月更文挑战第9天】魔搭ModelScope社区作为一个AI模型开源平台,提供了丰富的模型资源和便捷的服务
464 3
|
4月前
|
人工智能 开发框架 物联网
赢万元奖金 | 第七届CCF开源创新大赛ModelScope开源模型应用挑战赛开启报名!
第七届CCF开源创新大赛(后简称“大赛”) 由中国计算机学会(CCF)主办,长沙理工大学、CCF开源发展委员会联合承办。
|
7月前
ModelScope中huggingface的创空间spaces下gradio应用能获取user id或者uuid吗?
ModelScope中huggingface的创空间spaces下gradio应用能获取user id或者uuid吗?【1月更文挑战第4天】【1月更文挑战第17篇】
111 1
|
7月前
使用ModelScope FunASR官网的体验链接进行10M录音文件的识别
你在使用ModelScope FunASR官网的体验链接进行10M录音文件的识别时,遇到了无法识别的问题【1月更文挑战第8篇】
108 1
|
7月前
要将ModelScope的应用检测模型转换为ONNX格式或RKNN格式
要将ModelScope的应用检测模型转换为ONNX格式或RKNN格式
417 1
|
7月前
|
人工智能 Ubuntu Linux
linux配置魔搭社区modelscope时的whl下载中断问题和解决方案
本文提供了断点续传和手动安装两个方案。
310 3
|
7月前
|
计算机视觉
在ModelScope中,如果您使用图像分类模型进行推理并返回识别的坐标位置
在ModelScope中,如果您使用图像分类模型进行推理并返回识别的坐标位置
189 3
|
数据可视化 测试技术 API
Modelscope Agent实操(三):将API注册为tool,成为smart API,方便社区开发者调用
大家通过写python代码的方式来定制自己的tool,进一步扩展Agent的能力。

热门文章

最新文章