Kimi-Audio简介

一、简介

Kimi-Audio 是一种通用音频基础模型,能够在单一统一框架内处理多种音频处理任务。其核心特点包括:

1. 通用能力
支持以下多样化任务:

  • 自动语音识别(ASR):将语音转换为文本。
  • 音频问答(AQA):对音频内容进行理解和回答问题。
  • 自动音频字幕生成(AAC):为音频生成描述性字幕。
  • 语音情感识别(SER):识别语音中的情绪。
  • 声音事件/场景分类(SEC/ASC):分类环境声或特定声音事件。
  • 端到端语音对话:支持实时语音交互和多轮对话。

2. 最先进性能
在多项音频基准测试中取得 SOTA(最先进水平)成果(详见 评估部分 和 《技术报告》)。

3. 大规模预训练
基于 超过 1300 万小时 的多样化音频数据(语音、音乐、环境声)和文本数据进行预训练,实现强大的音频推理能力和语言理解能力。

4. 创新架构

  • 混合音频输入:结合连续声学向量和离散语义 token。
  • LLM 核心:采用并行处理文本和音频 token 生成的双头结构。

5. 高效推理

  • 低延迟音频生成:基于流匹配(Flow Matching)的分块式流式反分词器,显著降低生成延迟。

6. 开源开放

  • 代码与模型权重:开源预训练模型和指令微调版本。
  • 综合评估工具包:提供完整评估工具,推动社区研究与开发。

二、架构设计

Kimi-Audio 由三个核心组件构成:


1. 音频分词器(Audio Tokenizer)
将输入音频转换为以下两种形式:

  • 离散语义 token(帧率为 12.5Hz),通过矢量量化技术生成。
  • 连续声学特征,基于 Whisper 编码器提取(下采样至 12.5Hz)。

2. 音频大模型(Audio LLM)

  • 采用基于 Transformer 的模型架构,以预训练文本大语言模型(如 Qwen 2.5 7B)作为初始化基础。
  • 共享层处理多模态输入(音频与文本),随后通过并行头生成:
    • 自回归文本 token(用于文本输出)。
    • 离散音频语义 token(用于语音生成)。

3. 音频反分词器(Audio Detokenizer)

  • 利用流匹配模型和声码器(BigVGAN),将预测的离散语义音频 token 转换为高保真波形。
  • 支持分块式流式处理,结合前瞻机制实现低延迟音频生成。

开始使用

步骤 1:获取代码
git clone https://github.com/MoonshotAI/Kimi-Audio.git
cd Kimi-Audio
git submodule update --init --recursive
pip install -r requirements.txt
说明
  1. 克隆仓库:通过 git clone 命令将 Kimi-Audio 项目从 GitHub 下载到本地。
  2. 进入项目目录:使用 cd Kimi-Audio 进入项目文件夹。
  3. 初始化子模块git submodule update --init --recursive 确保项目依赖的子模块(如 Whisper 编码器)被正确下载和配置。
  4. 安装依赖pip install -r requirements.txt 安装项目运行所需的 Python 库和工具。

三、快速入门

示例说明

此示例演示了 Kimi-Audio 的基础用法:

  1. 音频转文本(ASR):从音频生成文字。
  2. 语音对话生成:在对话回合中同时生成文本和语音。
代码实现
import soundfile as sf
from kimia_infer.api.kimia import KimiAudio

# --- 1. 加载模型 ---
model_path = "moonshotai/Kimi-Audio-7B-Instruct" 
model = KimiAudio(model_path=model_path, load_detokenizer=True)

# --- 2. 定义采样参数 ---
sampling_params = {
    "audio_temperature": 0.8,                  # 音频生成的随机性
    "audio_top_k": 10,                         # 音频 token 采样范围
    "text_temperature": 0.0,                   # 文本生成的随机性
    "text_top_k": 5,                           # 文本 token 采样范围
    "audio_repetition_penalty": 1.0,           # 音频重复惩罚系数
    "audio_repetition_window_size": 64,        # 音频重复惩罚窗口大小
    "text_repetition_penalty": 1.0,            # 文本重复惩罚系数
    "text_repetition_window_size": 16,         # 文本重复惩罚窗口大小
}

# --- 3. 示例 1:音频转文本(ASR)---
messages_asr = [
    # 可以提供上下文或指令
    {"role": "user", "message_type": "text", "content": "请转录以下音频内容:"},
    # 提供音频文件路径
    {"role": "user", "message_type": "audio", "content": "test_audios/asr_example.wav"}
]

# 仅生成文本输出
_, text_output = model.generate(messages_asr, **sampling_params, output_type="text")
print(">>> ASR 输出文本: ", text_output) 
# 预期输出: "这并不是告别,这是一个篇章的结束,也是新篇章的开始。"

# --- 4. 示例 2:音频-文本对话生成 ---
messages_conversation = [
    # 以音频查询启动对话
    {"role": "user", "message_type": "audio", "content": "test_audios/qa_example.wav"}
]

# 同时生成音频和文本输出
wav_output, text_output = model.generate(messages_conversation, **sampling_params, output_type="both")

# 保存生成的音频文件
output_audio_path = "output_audio.wav"
sf.write(output_audio_path, wav_output.detach().cpu().view(-1).numpy(), 24000)  # 假设输出采样率为 24kHz
print(f">>> 对话输出音频已保存至: {output_audio_path}")
print(">>> 对话输出文本: ", text_output) 
# 预期输出: "A."

print("Kimi-Audio 推理示例完成。")

四、评估

Kimi-Audio 在多个音频基准测试中实现了 最先进(SOTA)性能

以下是整体表现:

基准测试表现

以下是不同基准测试中的表现:
您可以轻松通过我们的 Kimi-Audio-Evalkit(详见评估工具包)复现我们的结果和基线模型:

自动语音识别(ASR)

DatasetsModelPerformance (WER↓)
LibriSpeech
test-clean | test-other
Qwen2-Audio-base1.74 | 4.04
Baichuan-base3.02 | 6.04
Step-Audio-chat3.19 | 10.67
Qwen2.5-Omni2.37 | 4.21
Kimi-Audio1.28 | 2.42
Fleurs
zh | en
Qwen2-Audio-base3.63 | 5.20
Baichuan-base4.15 | 8.07
Step-Audio-chat4.26 | 8.56
Qwen2.5-Omni2.92 | 4.17
Kimi-Audio2.69 | 4.44
AISHELL-1Qwen2-Audio-base1.52
Baichuan-base1.93
Step-Audio-chat2.14
Qwen2.5-Omni1.13
Kimi-Audio0.60
AISHELL-2 iosQwen2-Audio-base3.08
Baichuan-base3.87
Step-Audio-chat3.89
Qwen2.5-Omni2.56
Kimi-Audio2.56
WenetSpeech
test-meeting | test-net
Qwen2-Audio-base8.40 | 7.64
Baichuan-base13.28 | 10.13
Step-Audio-chat10.83 | 9.47
Qwen2.5-Omni7.71 | 6.04
Kimi-Audio6.28 | 5.37
Kimi-ASR Internal Testset
subset1 | subset2
Qwen2-Audio-base2.31 | 3.24
Baichuan-base3.41 | 5.60
Step-Audio-chat2.82 | 4.74
Qwen2.5-Omni1.53 | 2.68
Kimi-Audio1.42 | 2.44

音频理解
DatasetsModelPerformance↑
MMAU
music | sound | speech
Qwen2-Audio-base58.98 | 69.07 | 52.55
Baichuan-chat49.10 | 59.46 | 42.47
GLM-4-Voice38.92 | 43.54 | 32.43
Step-Audio-chat49.40 | 53.75 | 47.75
Qwen2.5-Omni62.16 | 67.57 | 53.92
Kimi-Audio61.68 | 73.27 | 60.66
ClothoAQA
test | dev
Qwen2-Audio-base71.73 | 72.63
Baichuan-chat48.02 | 48.16
Step-Audio-chat45.84 | 44.98
Qwen2.5-Omni72.86 | 73.12
Kimi-Audio71.24 | 73.18
VocalSoundQwen2-Audio-base93.82
Baichuan-base58.17
Step-Audio-chat28.58
Qwen2.5-Omni93.73
Kimi-Audio94.85
Nonspeech7kQwen2-Audio-base87.17
Baichuan-chat59.03
Step-Audio-chat21.38
Qwen2.5-Omni69.89
Kimi-Audio93.93
MELDQwen2-Audio-base51.23
Baichuan-chat23.59
Step-Audio-chat33.54
Qwen2.5-Omni49.83
Kimi-Audio59.13
TUT2017Qwen2-Audio-base33.83
Baichuan-base27.9
Step-Audio-chat7.41
Qwen2.5-Omni43.27
Kimi-Audio65.25
CochlScene
test | dev
Qwen2-Audio-base52.69 | 50.96
Baichuan-base34.93 | 34.56
Step-Audio-chat10.06 | 10.42
Qwen2.5-Omni63.82 | 63.82
Kimi-Audio79.84 | 80.99

音频转文本对话
DatasetsModelPerformance↑
OpenAudioBench
AlpacaEval | Llama Questions |
Reasoning QA | TriviaQA | Web Questions
Qwen2-Audio-chat57.19 | 69.67 | 42.77 | 40.30 | 45.20
Baichuan-chat59.65 | 74.33 | 46.73 | 55.40 | 58.70
GLM-4-Voice57.89 | 76.00 | 47.43 | 51.80 | 55.40
StepAudio-chat56.53 | 72.33 | 60.00 | 56.80 | 73.00
Qwen2.5-Omni72.76 | 75.33 | 63.76 | 57.06 | 62.80
Kimi-Audio75.73 | 79.33 | 58.02 | 62.10 | 70.20
VoiceBench
AlpacaEval | CommonEval |
SD-QA | MMSU
Qwen2-Audio-chat3.69 | 3.40 | 35.35 | 35.43
Baichuan-chat4.00 | 3.39 | 49.64 | 48.80
GLM-4-Voice4.06 | 3.48 | 43.31 | 40.11
StepAudio-chat3.99 | 2.99 | 46.84 | 28.72
Qwen2.5-Omni4.33 | 3.84 | 57.41 | 56.38
Kimi-Audio4.46 | 3.97 | 63.12 | 62.17
VoiceBench
OpenBookQA | IFEval |
AdvBench | Avg
Qwen2-Audio-chat49.01 | 22.57 | 98.85 | 54.72
Baichuan-chat63.30 | 41.32 | 86.73 | 62.51
GLM-4-Voice52.97 | 24.91 | 88.08 | 57.17
StepAudio-chat31.87 | 29.19 | 65.77 | 48.86
Qwen2.5-Omni79.12 | 53.88 | 99.62 | 72.83
Kimi-Audio83.52 | 61.10 | 100.00 | 76.93

语音对话性能

Kimi-Audio 与基线模型在语音对话任务中的性能表现。

ModelAbility
Speed ControlAccent ControlEmotion ControlEmpathyStyle ControlAvg
GPT-4o4.213.654.053.874.544.06
Step-Audio-chat3.252.873.333.054.143.33
GLM-4-Voice3.833.513.773.074.043.65
GPT-4o-mini3.152.714.243.164.013.45
Kimi-Audio4.303.454.273.394.093.90

五、学习资源链接

模型地址:https://github.com/MoonshotAI/Kimi-Audio

论文地址:https://github.com/MoonshotAI/Kimi-Audio/blob/master/assets/kimia_report.pdf

 

### 三个模型的主要特点与性能差异 #### 特点对比 Kimi 是一种专注于多模态处理的大型语言模型,能够有效理解并生成图像、文字等多种形式的内容[^1]。其设计目标在于提供更贴近人类交互体验的服务,在对话理解和情感分析方面表现出色。 ChatGPT 则由 OpenAI 开发,基于 GPT 系列架构演化而来,具有强大的自然语言生成能力以及广泛的领域适应性[^2]。它通过强化学习技术进一步优化了对话质量,使得生成的回答更加连贯且贴合上下文需求。 DeepSeek 是来自深度求索公司的一系列大语言模型产品线之一,以其高效训练机制和大规模参数量著称[^3]。该模型不仅具备优秀的文本生成能力,还特别强调计算资源利用率上的改进,从而降低运行成本的同时保持高性能表现。 #### 性能差异 在推理速度上,由于采用了不同的算法优化策略和技术手段,三者之间存在一定差距。例如,DeepSeek 在硬件加速支持下的批量处理效率较高,适合需要快速响应的应用场景;而 Kimi 因为其复杂的跨模态融合操作可能稍微牺牲了一些纯文本任务中的即时反馈速率[^4]。 关于泛化能力和定制潜力方面,ChatGPT 凭借长期积累的数据优势及持续迭代的学习框架,通常能够在新领域或少见话题上有较好的基础认知水平[^5]。相比之下,虽然其他两款模型同样拥有较强的基础功能覆盖范围,但在特定行业术语解析或者文化背景关联等方面或许稍逊一筹。 另外值得注意的是安全性考量——随着这些先进 AI 技术被广泛应用于实际业务流程当中,如何保障用户隐私不泄露成为了一个重要课题。在这方面,各家公司都采取了一系列措施来加强防护力度,比如数据脱敏处理、访问权限控制等等[^6]。 ```python # 假设我们有一个简单的函数用于评估不同模型的表现分数(虚构示例) def evaluate_model_performance(model_name, task_type="text"): scores = { "kimi": {"text":87,"image":95}, "chatgpt":{"text":92,"audio":80}, "deepseek":{"text":90} } return scores.get(model_name.lower(), {}).get(task_type.lower(), None) print(evaluate_model_performance('Kimi', 'text')) # 输出Kim对于文本任务的成绩 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值