AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理

AITNT-国内领先的一站式人工智能新闻资讯网站
# 热门搜索 #
AITNT-国内领先的一站式人工智能新闻资讯网站 搜索
AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理
5722点击    2025-04-15 15:26

开源语音模型Orpheus让LLM涌现出人类情感!在A100 40GB显卡上,30亿参数模型的流式推理速度甚至超过了音频播放速度。甚至可以zero-shot克隆声音。


大语言模型(LLM)还能涌现什么能力?


这次开源模型Orpheus,直接让LLM涌现人类情感!


对此,Canopy Labs的开源开发者Elias表示Orpheus就像人类一样,已经拥有共情能力,能从文本中产生潜在的线索,比如叹息、欢笑和嗤笑。


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理


作为开源的文本转语音(Text to Speech,TTS)模型,Orpheus性能超越了包括ElevenLabs和OpenAI在内的所有开源/闭源模型!


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理


Orpheus成功证明了LLM在语音合成领域的涌现能力。


Orpheus表现出了共情能力,情智媲美人类,甚至可以从文字本身中生成叹息、笑声、轻笑等潜在的音调。


一直以来,开源TTS模型都无法与闭源模型竞争,而今天,这一局面开始发生改变,Ophueus颠覆语音界!


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理


新开源的Orpheus有4大特点:


  • 拟人化语音:具备自然的语调、情感和节奏,效果优于当前最先进(SOTA)的闭源模型。


  • 零样本语音克隆:无需额外微调即可克隆声音。


  • 可控情感与语调:使用简单的标签即可调整语音的情感和特征。


  • 低延迟:流式推理延迟约200ms,结合输入流式处理可降低至100ms,适用于实时应用。


流式推理可在音频生成过程中逐步输出结果,使延迟极低,适用于实时应用。


在A100 40GB显卡上,30亿参数模型的流式推理速度,甚至快于音频播放速度。


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理

项目地址:https://github.com/canopyai/Orpheus-TTS

模型地址:https://huggingface.co/collections/canopylabs/orpheus-tts-67d9ea3f6c05a941c06ad9d2


4大模型


Orpheus是由多个预训练和微调模型组成的系列,拥有30亿参数。


在未来几天内,开发者将发布更小规模的模型,包括10亿、5亿和1.5亿参数版本。


基于Llama架构,开源开发者还将发布预训练和微调模型,提供四种不同规模:


Medium – 30 亿参数

Small – 10 亿参数

Tiny – 4 亿参数

Nano – 1.5 亿参数


即使在极小的模型规模下,依然能实现极高质量、富有美感的语音生成。


微调模型适用于对话场景,而预训练模型可以用于多种下游任务,例如语音克隆或语音分类。


模型架构和设计


预训练模型采用Llama-3B作为基础架构,并在超过10万小时的英语语音数据和数十亿个文本token上进行了训练。


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理


通过训练文本token,显著提升了模型在TTS任务上的表现,使其具备更强的语言理解能力。


由于采用了LLM架构,模型具备高精度、强表现力和高度可定制性。


新模型支持实时语音输出流式推理,延迟低至约200毫秒,适用于对话类应用。


如果希望进一步降低延迟,可以将文本流式输入到模型的KV缓存中,从而将延迟降低至约25-50毫秒。


在实时语音的设计上,采用了两种突破传统的方法:基于CNN的tokenizer


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理

使用Snac采样不同频率的token,并将其展平


每帧生成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万+小时的英语语音数据训练而成,预设为条件生成模式,可扩展至更多任务。


流式推理


1.克隆仓库


git clone https://github.com/canopyai/Orpheus-TTS.git


2.安装依赖


cd Orpheus-TTS && pip install orpheus-speech # uses vllm under the hood for fast inference


pip install vllm==0.7.3


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>


Python包orpheus-speech和Notebook会自动格式化提示,无需手动调整。


2. 预训练模型


适用于仅基于文本生成语音,或基于一个或多个已有的文本-语音对生成语音。


零样本语音克隆:此模型未经过专门训练,因此输入的文本-语音对越多,生成目标声音的效果越稳定。


下列参数调整,适用于所有模型:


常规LLM生成参数:支持temperature、top_p等。

避免重复:repetition_penalty >= 1.1可提高稳定性。

语速调整:提高repetition_penalty和temperature会让语速变快。


模型微调


以下是关于如何对任何文本和语音进行模型微调的概述。


这个过程非常简单,类似于使用Trainer和Transformers来调整LLM(大语言模型)。


在大约50个样本后,应该开始看到高质量的结果,但为了达到最佳效果,建议每人提供300个样本。


第一步:数据集应该是一个Hugging Face数据集,格式如下:


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理


第二步:使用Colab Notebook来准备数据。


这会将一个中间数据集推送到Hugging Face,然可以将它输入到finetune/train.py中的训练脚本中。


预处理估计每千行数据花费不到1分钟的时间。


第三步:修改finetune/config.yaml文件,包含新的数据集和训练属性,然后运行训练脚本。


还可以运行任何与Hugging Face兼容的进程,比如Lora,来进一步调整模型。


pip install transformers datasets wandb trl flash_attn torch

huggingface-cli login <enter your HF token>

wandb login <wandb token>

accelerate launch train.py


这只是Canopy Labs打造的众多技术之一。


他们相信未来,每一个AI应用都将化身为可以与人互动的「数字人」。


参考资料:

https://canopylabs.ai/model-releases

https://x.com/Eliasfiz/status/1902435597954003174

https://x.com/shao__meng/status/1902504856277189027


文章来自于“新智元”,作者“KingHZ”。


AI涌现人类情感!希腊「乐之神」Orpheus开源,单卡可跑语音流式推理

关键词: AI , Orpheus , AI语音 , 人工智能
AITNT-国内领先的一站式人工智能新闻资讯网站
AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
数字人

【开源免费】Fay开源数字人框架是一个AI数字人项目,该项目可以帮你实现“线上线下的数字人销售员”,

“一个人机交互的数字人助理”或者是一个一个可以自主决策、主动联系管理员的智能体数字人。

项目地址:https://github.com/xszyou/Fay

2
微调

【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。

项目地址:https://github.com/InternLM/xtuner

3
prompt

【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。

项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md

在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0

4
无人直播

【开源免费】VideoChat是一个开源数字人实时对话,该项目支持支持语音输入和实时对话,数字人形象可自定义等功能,首次对话延迟低至3s。

项目地址:https://github.com/Henry-23/VideoChat

在线体验:https://www.modelscope.cn/studios/AI-ModelScope/video_chat


【开源免费】Streamer-Sales 销冠是一个AI直播卖货大模型。该模型具备AI生成直播文案,生成数字人形象进行直播,并通过RAG技术对现有数据进行寻找后实时回答用户问题等AI直播卖货的所有功能。

项目地址:https://github.com/PeterH0323/Streamer-Sales