深度学习系列83:使用outetts

1. 介绍

模型采用 LLaMa 架构基础,结合 WavTokenizer 音频标记化技术,将连续音频波形转换为离散令牌序列,每秒处理 150 个令牌。v2版本通过 CTC 强制对齐技术,实现文本与音频的精确映射,无需预处理即可生成时间戳对齐的语音流;v3版本使用whisper进行文本对齐。窗口化重复惩罚机制的引入,显著提升了语音输出的连贯性和自然度,尤其在长文本合成中表现稳定。

多语言支持是其核心亮点之一。模型直接支持英语、中文、阿拉伯语等 20 余种语言的文本输入,无需罗马化处理。训练数据覆盖高资源语言(如英语、中文)和中等资源语言(如葡萄牙语、波斯语),未训练语言也可生成语音但效果有限。

2. 中文使用方式

目前outetts不支持中文,所以要做些特别处理:

  1. 首先安装whisper-timestamped:pip3 install whisper-timestamped
  2. 然后安装outetts:pip3 install outetts==0.4.4
  3. 打开site-package里面的outetts/whisper/transcribe.py,将第一行改为:
    import whisper_timestamped as whisper
    将第17行改为text = whisper.transcribe(model, audio_path, language='zh',initial_prompt='普通话')
  4. 打开site-package里面的outetts/version/v3/audio_processor.py,将第226行改为:
    words.extend([{'word': i['text'].strip(), 'start': float(i['start']), 'end': float(i['end'])} for i in s['words']])

3. 测试代码

首先出啊给你家爱你一个interface

复制代码
import outetts
interface = outetts.Interface(
    config=outetts.ModelConfig.auto_config(
        model=outetts.Models.VERSION_1_0_SIZE_1B,
        backend=outetts.Backend.LLAMACPP,
        quantization=outetts.LlamaCppQuantization.Q8_0,      
    )
)

如果没有speaker文件,则使用语音片段新建一个:

复制代码
speaker = interface.create_speaker("2.wav",whisper_model="base")
interface.save_speaker(speaker,path="zh.json")

然后生成语音:

复制代码
from outetts import GenerationConfig
output = interface.generate(
	config=GenerationConfig(
		text="要确保回答简洁明了,不使用复杂的术语。同时,保持语气友好,让用户感到舒适",
    		speaker= interface.load_speaker("zh.json")
    	)
)
output.save("output.wav")
相关推荐
回眸&啤酒鸭几秒前
【回眸】OpenSwarm 多智能体协作系统实战指南
大数据·前端·人工智能
博图光电9 分钟前
Libra 27105相关技术参数
人工智能·数码相机
IT_陈寒33 分钟前
SpringBoot自动配置差点让我加班到凌晨
前端·人工智能·后端
yumgpkpm1 小时前
Acceldata ODP(Open Data Platform)3.3.6.4(RHEL9)保姆级完整安装手册
大数据·人工智能·hive·hadoop·kafka·hbase·cloudera
程序员cxuan1 小时前
腾讯又来一王炸,开源版 WorkBuddy 太夯了!
人工智能·后端·程序员
邓工说电1 小时前
智慧断路器安全吗?数据加密、离线保护与合规认证全解读
大数据·数据库·人工智能·智能断路器·炜晔科技
阿里云大数据AI技术1 小时前
Lance 数据检索怎么选,当然阿里云 Milvus 向量湖
人工智能
出海客1 小时前
跨境电商多语言客服知识库怎么建:资料结构、检索边界与人工升级
大数据·人工智能
xsd202411181 小时前
从自主导航到视觉读表:一台工业巡检机器人的全栈技术链路拆解
人工智能
袁哥大话安全1 小时前
巡隐WEBSHELL扫描软件
人工智能·安全·web