微信扫码
添加专属顾问
我要投稿
希腊神话中的乐之神Orpheus在AI世界中再现,赋予机器以人类情感。单卡即可实现流式推理,超越现有技术。核心内容:1. Orpheus开源语音模型,让LLM展现出人类情感2. 模型特点:拟人化语音、零样本克隆、可控情感与低延迟3. 基于Llama架构,提供不同规模的预训练和微调模型,支持实时语音输出流式
新智元报道
这次开源模型Orpheus,直接让LLM涌现人类情感!
对此,Canopy Labs的开源开发者Elias表示Orpheus就像人类一样,已经拥有共情能力,能从文本中产生潜在的线索,比如叹息、欢笑和嗤笑。
作为开源的文本转语音(Text to Speech,TTS)模型,Orpheus性能超越了包括ElevenLabs和OpenAI在内的所有开源/闭源模型!
Orpheus成功证明了LLM在语音合成领域的涌现能力。
Orpheus表现出了共情能力,情智媲美人类,甚至可以从文字本身中生成叹息、笑声、轻笑等潜在的音调。
一直以来,开源TTS模型都无法与闭源模型竞争,而今天,这一局面开始发生改变,Ophueus颠覆语音界!
新开源的Orpheus有4大特点:
拟人化语音:具备自然的语调、情感和节奏,效果优于当前最先进(SOTA)的闭源模型。
零样本语音克隆:无需额外微调即可克隆声音。
可控情感与语调:使用简单的标签即可调整语音的情感和特征。
流式推理可在音频生成过程中逐步输出结果,使延迟极低,适用于实时应用。
在A100 40GB显卡上,30亿参数模型的流式推理速度,甚至快于音频播放速度。
模型地址:https://huggingface.co/collections/canopylabs/orpheus-tts-67d9ea3f6c05a941c06ad9d2
在未来几天内,开发者将发布更小规模的模型,包括10亿、5亿和1.5亿参数版本。
基于Llama架构,开源开发者还将发布预训练和微调模型,提供四种不同规模:
Medium – 30 亿参数
Small – 10 亿参数
Tiny – 4 亿参数
Nano – 1.5 亿参数
即使在极小的模型规模下,依然能实现极高质量、富有美感的语音生成。
每帧生成7个token,并作为单个展平序列解码,而非使用7个LM头进行解码。
这样,模型需要生成的步数增加,但在A100或H100 GPU上,使用vLLM实现后,模型的token生成速度仍然快于实时播放,因此即使是较长的语音序列,也能保持实时生成。
Orpheus采用了非流式(基于CNN)的tokenizer。
其他使用SNAC作为解码器的语音LLM,在去token化时,会出现帧之间的「弹跳(popping)」现象。
Orpheus通过滑动窗口改进了去token化的实现,使其支持流式推理,同时完全消除popping问题。
本次发布包含三款模型。
此外,还提供了数据处理脚本和示例数据集,方便用户轻松进行自定义微调。
目前,共有两款模型:
Finetuned Prod:针对日常TTS应用微调的高质量模型,适用于日常TTS应用的微调模型。
Pretrained:预训练基础模型,基于10万+小时的英语语音数据训练而成,预设为条件生成模式,可扩展至更多任务。
git clone https://github.com/canopyai/Orpheus-TTS.git
cd Orpheus-TTS && pip install orpheus-speech # uses vllm under the hood for fast inference
pip install vllm==0.7.3
from orpheus_tts import OrpheusModel
import wave
import time
model = OrpheusModel(model_name ="canopylabs/orpheus-tts-0.1-finetune-prod")
prompt = '''Man, the way social media has, um, completely changed how we interact is just wild, right? Like, we're all connected 24/7 but somehow people feel more alone than ever. And don't even get me started on how it's messing with kids' self-esteem and mental health and whatnot.'''
start_time = time.monotonic()
syn_tokens = model.generate_speech(
prompt=prompt,
voice="tara",
)
with wave.open("output.wav", "wb") as wf:
wf.setnchannels(1)
wf.setsampwidth(2)
wf.setframerate(24000)
total_frames = 0
chunk_counter = 0
for audio_chunk in syn_tokens: # output streaming
chunk_counter += 1
frame_count = len(audio_chunk) // (wf.getsampwidth() * wf.getnchannels())
total_frames += frame_count
wf.writeframes(audio_chunk)
duration = total_frames / wf.getframerate()
end_time = time.monotonic()
print(f"It took {end_time - start_time} seconds to generate {duration:.2f} seconds of audio")
1. 微调模型
主要的文本提示格式为:
{name}: I went to the ...
可选的姓名(按对话自然度排序,主观评估):「tara」, 「leah」, 「jess」, 「leo」, 「dan」, 「mia」, 「zac」, 「zoe」。
可添加情感标签:
<laugh>, <chuckle>, <sigh>, <cough>, <sniffle>, <groan>, <yawn>, <gasp>
适用于仅基于文本生成语音,或基于一个或多个已有的文本-语音对生成语音。
零样本语音克隆:此模型未经过专门训练,因此输入的文本-语音对越多,生成目标声音的效果越稳定。
常规LLM生成参数:支持temperature、top_p等。
避免重复:repetition_penalty >= 1.1可提高稳定性。
语速调整:提高repetition_penalty和temperature会让语速变快。
以下是关于如何对任何文本和语音进行模型微调的概述。
pip install transformers datasets wandb trl flash_attn torch
huggingface-cli login <enter your HF token>
wandb login <wandb token>
accelerate launch train.py
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-16
A2A协议:打破Agent“孤岛”,开启智能协作新时代
2025-04-16
GitMCP: 让AI助手拥抱开源世界的桥梁
2025-04-16
解放双手!Index:顶尖开源AI浏览器代理,复杂网页任务一键搞定 (Claude 3.7 驱动)
2025-04-16
CortexON:开源通用AI Agent,又一替代Manus产品
2025-04-16
Second Me 重磅升级:全平台 Docker 支持,Mac/Windows/Linux 全覆盖!
2025-04-15
Spring AI 1.0.0 M7 发布!很炸裂!!
2025-04-15
OpenManus初体验,整合千问大模型Qwen/QwQ-32B
2025-04-15
小红书开源的中文语音转文字FireRedASR:一键整合包带webui、API
2025-01-01
2024-07-25
2025-01-21
2024-05-06
2024-09-20
2024-07-20
2024-06-12
2024-07-11
2024-08-13
2024-12-26
2025-04-15
2025-04-13
2025-04-10
2025-04-07
2025-04-03
2025-04-03
2025-04-03
2025-04-01