最贵的一层:深入浅出 Liger Kernel 与 Cut Cross-Entropy
微调一个 2B 小模型也能 OOM?大词表时代,显存大头不是权重也不是注意力,而是交叉熵前那个「几万 token × 几十万词表」的 logits 矩阵,还一物多份。拆解两把砍掉它的刀——Liger Kernel 的分块融合 FLCE 与 Apple 的 Cut Cross-Entropy,附实操代码、一版讲透 use_reentrant 的纯 PyTorch 手写实现,以及昇腾 NPU 支持现状。
微调一个 2B 小模型也能 OOM?大词表时代,显存大头不是权重也不是注意力,而是交叉熵前那个「几万 token × 几十万词表」的 logits 矩阵,还一物多份。拆解两把砍掉它的刀——Liger Kernel 的分块融合 FLCE 与 Apple 的 Cut Cross-Entropy,附实操代码、一版讲透 use_reentrant 的纯 PyTorch 手写实现,以及昇腾 NPU 支持现状。
TTS 厂商都说自己「一句话就能控制风格」,但真听懂了吗?复旦 InstructTTSEval 出了三道从具体到抽象的考题——逐项声学参数、自然风格描述、只给角色场景——中英各 1000 题、Gemini 判卷。结果闭源大幅领先开源但都离真人很远,考场花絮更有意思:没有模型会叹气,会笑的只有三家,童声反而是开源赢。
语音 agent 抢话的根源,是它拿静音时长猜「你说完没」。Pipecat 的 Smart Turn 用一个 8 MB 的模型直接听音频做判断:Whisper Tiny 编码器 + 注意力池化 + 三层分类头,CPU 上十几毫秒出结果,权重、数据、训练代码全部开源。这篇拆它的架构、三代演进、合成数据流水线,以及它在 VAD 之上怎么组成双保险。
Moshi 开创的「codec 进词表」路线有一笔绕不开的智能税:语音 token 挤占词表、模态鸿沟吞噬文本知识。2025–2026 年的两个回应殊途同归——清华与字节的 SALMONN-omni 把 codec 彻底请出 LLM,用连续嵌入直连编码器与合成器;腾讯的 Covo-Audio 折中为「连续进、离散出」的混合双流,把全双工塞进预训练。两家还共享同一个信条:状态切换不需要外挂模块,、、BREAK——你的 LLM 偷偷就是个全双工预测器。这篇一次拆两个。
Moshi 为全双工改了架构——双 Transformer、声学延迟、17 条并行流;阿里通义实验室的 OmniFlatten 反其道而行:标准 GPT 一行不改,把用户和助手的语音、文字全部摊平进一条序列,用「模态对齐 → 半双工 → 全双工三流 → 两流」四步课程渐进逼近全双工。0.5B 的 Qwen2 底座、全合成的对话数据、块级交错的伪并行——这篇拆解它的每一步取舍,包括那个诚实的负结果:去掉文字流,语义就崩。
与 Moshi 几乎同时,上海交大 X-LANCE 与字节跳动的 LSLM 用一个 106M 参数的小模型回答了一个最小问题:模型能不能一边说话一边听?说话通道是单码本的 token TTS,听觉通道是流式 SSL 的连续嵌入,词表里加一个 IRQ token 表示「我被打断了」。三种融合位置的对比给出干净结论:early 毁掉语音生成、late 分不清噪声与人声、middle 恰到好处——这篇把这个全双工的解剖标本拆开讲透。
Kyutai 的 Moshi 是第一个真正实时的全双工语音大模型:Mimi 把声音压成 12.5 Hz 的离散 token,RQ-Transformer 用一大一小两个 Transformer 分担时间与深度,Inner Monologue 让模型先想文字再发声,多流建模直接取消了「轮次」概念,理论时延 160 毫秒。这篇顺着论文和开源代码把每个部件拆开讲透,再看它如何只改一个延迟参数就变身流式 ASR 与 TTS。
十几个语音对话系统都自称「全双工」,能力却天差地别。这篇 2026 年的综述给出三张地图:双工决策在模型栈哪一层做(L0–L3)、该支持哪些交互(T×I×R 六个试金石)、每一刻系统在干什么(五状态决策状态机),外加数据与评测两笔实证账——从此「是不是全双工」有了结构化的问法。
语音助手为什么一调用工具就沉默?qwen-audio-agent 的答案不是再造一个更大的端到端模型,而是把「实时对话」和「后台干活」拆成两条并行流水线:前台 Qwen Audio Realtime 只管听和说,后台任意 ACP Agent 负责执行,中间用 Work 状态机、权限中转和送达确认把两边缝回「同一个助理」。本文基于 0.9.1 源码逐层拆解。
注意力真正的瓶颈不是 O(N²) 的计算量,而是中间矩阵在显存里的来回搬运。从 FA1 的 IO 感知、FA2 的并行重构、FA3 的异步流水与 FP8,到 FA4 应对「不对称扩展」的协同设计——四代 FlashAttention 就是一部算法追着硬件跑的历史。