写点什么

Web ML 库 Transformers.js 提供文本转语音功能

作者:Agazi Mekonnen I

  • 2023-12-08
    北京
  • 本文字数:1092 字

    阅读完需:约 4 分钟

Web ML 库 Transformers.js 提供文本转语音功能

JavaScript 库 Transformers.js 提供了类似 Python Transformers 库的功能,设计用于在 Web 浏览器中直接运行 Transformer 模型,而不再需要外部服务器参与处理。在最新的 2.7 版本中,Transformers.js 引入了增强功能,其中包括文本转语音(TTS)支持。这次升级响应了用户的诸多需求,扩展了库的应用场景。


文本转语音(TTS)包括从文本创建听起来比较自然的语音,并提供了多种口语语言和 speaker。目前,Transformers.js 只通过 Xenova/speecht5_tts 提供 TTS 支持,而 Xenova/speecht5_tts 基于微软提供的带有 ONNX 权重的 SpeechT5。未来更新计划中包括增加对 bark 和 MMS 的支持。


开发人员可以通过 @xenova/transformers 中的管道函数来使用文本转语音功能,包括指定“文本转语音”任务和要使用的模型('Xenova/ speecht5_ts '),并使用选项{quantized: false}。此外,其中还包含提供 speaker embeddings 的文件链接。


将 TTS 模型应用于给定的文本后,它就会输出音频数组和采样率。该数组表示合成语音,可以进一步处理或直接在浏览器中播放。


Transformers.js 适用于各种用例,包括风格转换、图像绘制、图像着色和超分辨率。它的多功能性和定期更新使其成为开发人员探索机器学习和 Web 开发结合点的宝贵资产,并使其成为 Web 机器学习领域的可靠工具。


按照设计,Transformers.js 在功能上等同于 Hugging Face 的 Python 库 transformers,也就是说,你可以使用非常近似的 API 运行相同的预训练模型。


Transformers.js 支持许多任务和模型,涉及自然语言处理、视觉、音频、表格数据、多模态应用和强化学习。该库涵盖了从文本分类和摘要到图像分割和对象检测的各种任务,这使其成为各种机器学习应用程序的通用工具。


Transformers.js 提供了广泛的模型支持,包括 BERT、GPT-2、T5 和 Vision Transformer(ViT)等架构,确保用户可以针对特定的任务选择正确的模型。


对于 Transformers.js 的发布,社区持积极态度。在今年早些时候发起的 Reddit 帖子中,用户 Intrepid-Air6525 表示:我决定用它来代替 openai 的嵌入模型。速度非常快。我实际使用的 LLM 是 webLLM ,因为我不想消耗太多的 CPU 处理。


用户 1EvilSexyGenius 对 Hugging Face 的市场定位以及关于实际应用的讨论发表了看法:


[…] 借助 Transformers.js 及他们提供的其他优秀的库,很显然, [Hugging Face] 正在努力实现语言模型的民主化,并将它们带给大众。与每天发布的所有模型相比,这样的帖子会让这个社区受益匪浅。


感兴趣的读者可以从 Hugging Face Transformers.js 官方网站及其 GitHub 库中获得更多信息。


原文链接:

https://www.infoq.com/news/2023/11/transformersjs-ml-for-web/


2023-12-08 08:005992

评论

发布
暂无评论
发现更多内容

浅谈Http,Https

工程师日月

HTTP 5月月更

跨平台应用开发进阶(十六) :uni-app实现H5页面唤醒APP

No Silver Bullet

uni-app App 5月月更 H5页面

都是限制,都是秘密,JS逆向某建筑市场数据,python爬虫120例

梦想橡皮擦

5月月更

漫画 | 新一代软件架构会影响到谁?

阿里巴巴云原生

阿里云 云原生 事件总线 EventBridge

中兴通讯加入龙蜥社区,共建ICT全场景开源生态

OpenAnolis小助手

开源 生态 龙蜥社区 CLA 中兴通讯

智能手表的机遇与挑战并存

Geek_99967b

数据安全 物联网, 智能手表

【网易云信】沉浸式体验网易云信在线 KTV

网易智企

音视频

企业智能化转型meetup回顾|开源BI & AI助力企业转型之旅三阶段!

第四范式开发者社区

人工智能 开源 企业 大数据平台 智能化转型

一、KVM虚拟化的功能特性

穿过生命散发芬芳

kvm 5月月更

gitlab 8.13.6添加server hook后保护分支失效

阿呆

#GitLab gitlab hook 保护分支

SAAS服务的特点

Geek_99967b

小程序 SaaS

读书笔记之怪诞行为学6:非凡的决定

宇宙之一粟

读书笔记 5月月更

一种直流电池/电源正反接均可供电的电路方案

不脱发的程序猿

电路设计 电源电路 嵌入式硬件 直流电池/电源正反接电路

Linux环境混合使用静态库与动态库

Loken

音视频 5月月更

Docker下RabbitMQ四部曲之二:细说RabbitMQ镜像制作

程序员欣宸

Java RabbitMQ 5月月更

图分析的22种算法与图形理解

清林情报分析师

数据分析 知识图谱 图算法 图论 知识结构

JVM 线上问题定位实战(CPU 飙升)

Ayue、

JVM

将微信小程序生成商用App很简单吗?

Geek_99967b

ide 小程序转app 小程序预览

JDK 15 以上版本的字符串块

HoneyMoose

OpenClusterManagement 开源之夏 2022 来了

阿里巴巴云原生

阿里云 云原生 开源之夏

一文学完Linux Shell编程,比书都好懂

编程攻略

Linux

车联网的发展面临的难点怎样突破

Geek_99967b

小程序 车联网

实现内网穿透(二)

风斩断晚霞

Go websocket

Java Core「6」反射与SPI机制

Samson

学习笔记 5月月更 Java core

Java 8 中的设计模式策略

HoneyMoose

《0次与10000次》:让坏事发生0次,让好事发生10000次

郭明

HTML语法基本规范

恒山其若陋兮

5月月更

怎样为自己的小程序打包为App

Geek_99967b

小程序 小程序转app

LabVIEW控制Arduino LED灯闪烁(基础篇—2)

不脱发的程序猿

单片机 LabVIEW Arduino LED灯闪烁 LIAT

LabVIEW和Arduino的巧妙结合(基础篇—1)

不脱发的程序猿

单片机 LabVIEW Arduino 上位机

AIRIOT物联网低代码平台如何配置Modbus TCP协议?

AIRIOT

低代码平台 驱动配置

Web ML 库 Transformers.js 提供文本转语音功能_架构/框架_InfoQ精选文章