FlexiSLM
FlexiSLM: A Dynamic and Controllable Frame Rate Spoken Language Model
The first spoken language model supporting dynamic and controllable frame rates on both input and output, exploiting variable information density in speech. A single 7B model operates from 4.0–12.5 Hz without retraining, outperforming fixed-rate baselines while achieving roughly 2× speedup with maintained quality.
Links
Paper & demos
Code & resources
Impact
Abstract
Spoken language models (SLMs) extend LLMs to speech input and output. Existing SLMs represent speech at fixed frame rates (e.g., 25 or 12.5 Hz), ignoring the time-varying information density of speech and offering no flexibility to trade off quality for speed at inference time. Recent audio tokenizer research has proposed dynamic frame rate speech coding, which exploits this non-uniformity and enables two new capabilities: very low average frame rates and frame rate controllability. However, this technique has not yet been applied to SLMs. We introduce Flexible Spoken Language Model (FlexiSLM), the first SLM that supports dynamic and controllable frame rates on both speech input and output. Using dynamic frame rate representations, FlexiSLM outperforms fixed-frame-rate 7B models including Qwen2.5-Omni and Kimi-Audio at its high-quality operating points. We further verify that FlexiSLM can be accurately steered down to 4.0 Hz; at 6.25 Hz, it roughly halves inference time relative to 12.5 Hz while retaining strong speech-to-speech quality. Audio samples are available at https://flexislm.github.io .
Introduction and Motivation
Spoken language models (SLMs) have emerged as a unified framework for speech understanding and generation, extending large language models (LLMs) to handle speech input and output across tasks including speech-to-speech dialogue, automatic speech recognition (ASR), text-to-speech (TTS), and general audio understanding. Representative systems such as Qwen2.5-Omni and Kimi-Audio represent speech at fixed frame rates — 25 Hz and 12.5 Hz respectively — meaning they use a constant number of discrete or continuous speech-encoding frames per second of audio regardless of the actual information content in the signal.
This fixed-rate paradigm has two significant drawbacks. First, it ignores the time-varying information density of speech: phonetically rich segments (consonants, transitions) carry far more information per frame than silences or steady-state vowels. Allocating the same number of tokens to both wastes compute. Second, it offers no inference-time quality–speed control: a model trained at 25 Hz must always run at 25 Hz, with no way to trade off quality for speed to match different deployment budgets, network conditions, or device capabilities.
Recent work on audio tokenizers — particularly FlexiCodec — has addressed these limitations through dynamic frame rate speech coding, which uses frame merging based on inter-frame similarity to achieve low average frame rates (around 6.25 Hz) while retaining high reconstruction fidelity. FlexiCodec was demonstrated only in a small 0.3B-parameter TTS pipeline, however, and applying dynamic-rate coding to full end-to-end SLMs remained unexplored.
FlexiSLM (Flexible Spoken Language Model) closes this gap as the first SLM to support both dynamic and controllable frame rates on both speech input and output. A single FlexiSLM-7B model can operate anywhere from 4.0 Hz to 12.5 Hz without retraining. At 12.5 Hz it surpasses fixed-rate 7B baselines including Qwen2.5-Omni-7B and Kimi-Audio-7B; at 6.25 Hz it roughly halves inference time relative to a 12.5 Hz system while retaining strong speech-to-speech quality.
Background and Related Work
Speech Tokenization
Early neural audio codecs such as SoundStream and EnCodec use Residual Vector Quantization (RVQ) to produce acoustic tokens at fixed frame rates (50–75 Hz), prioritizing reconstruction fidelity. Self-supervised semantic tokens from models like HuBERT capture linguistic content and are widely used in speech language modeling. More recent work has pushed toward efficient representations: single-codebook approaches at 50–75 Hz and semantic-enhanced codecs at 12.5–50 Hz.
The dynamic frame rate direction exploits temporal sparsity in speech. FlexiCodec (the tokenizer used in this work) merges 12.5 Hz semantic features based on cosine similarity to achieve dynamic-rate tokenization averaging around 6.25 Hz. Other dynamic-rate works — CodecSlime, TFC, and VARSTok — explore higher average frame rates (18.75–40 Hz). None of these dynamic codecs had been applied inside an SLM framework prior to this work.
Spoken Language Models
Modern end-to-end SLMs typically follow a three-stage paradigm: a pretrained speech encoder extracts acoustic features, a decoder-only LLM processes them, and an additional module predicts speech tokens. Kimi-Audio models parallel speech-text at 12.5 Hz; Qwen2.5-Omni uses a thinker–talker architecture at 25 Hz; Moshi targets full-duplex capability; GLM-4-Voice uses interleaved speech-text sequences; Fun-Audio-Chat and Mimo-Audio group speech into 5 Hz or 6.25 Hz LLM-side sequences via patching. None of these systems natively support dynamic or controllable frame rates.
FlexiSLM Architecture
FlexiSLM is a parallel speech-text model with a thinker–talker structure. Its components are:
Audio Encoder
The audio encoder converts user speech into a semantic-rich continuous representation. FlexiSLM adopts the pretrained Qwen2.5-Omni audio encoder, which extracts 25 Hz continuous speech features from raw waveforms. This encoder has approximately 640M parameters.
Frame Merging Module
This module appears twice in FlexiSLM: once on the input side (compressing 25 Hz encoder features to a dynamic-rate sequence at or below 12.5 Hz) and once inside the FlexiCodec audio tokenizer (merging 12.5 Hz ASR features before quantization). Both instances share the same mechanism.
Given a sequence of feature vectors $\mathbf{x}_1, \mathbf{x}_2, \ldots, \mathbf{x}_T$ at a base frame rate, the module computes cosine similarity between consecutive frames:
$$s_t = \frac{\mathbf{x}_t \cdot \mathbf{x}_{t+1}}{\|\mathbf{x}_t\| \, \|\mathbf{x}_{t+1}\|}, \quad t = 1, \ldots, T-1$$If $s_t$ exceeds a merging threshold $\tau$, frames $\mathbf{x}_t$ and $\mathbf{x}_{t+1}$ are grouped and their average is taken. This greedy left-to-right process merges contiguous high-similarity frames into a single averaged representation. After merging, each group yields an averaged feature $\bar{\mathbf{x}}_k$ and a frame length attribute $l_k$ (the number of original frames in the group). The original and averaged features are interleaved to form an augmented sequence, processed by a lightweight Transformer with local attention. Representations at positions corresponding to averaged features are extracted, yielding the merged sequence with associated frame lengths. Each merging Transformer has approximately 20M parameters.
LLM Backbone (Thinker)
FlexiSLM uses Qwen2.5-7B-Instruct as initialization for its LLM backbone (Thinker), the same base model used by Qwen2.5-Omni and Kimi-Audio. The Thinker processes the merged speech input features alongside text tokens and produces hidden states consumed by the Talker.
FlexiCodec Audio Tokenizer
FlexiCodec is used to obtain discrete speech tokens as the prediction target of the Talker. The codec uses Finite Scalar Quantization (FSQ) to discretize each frame; each token is paired with a frame length attribute for audio reconstruction. FlexiSLM uses only FlexiCodec's semantic tokens and omits its RVQ acoustic tokens. The FlexiCodec semantic branch encodes SenseVoice ASR features at 12.5 Hz through its Frame Merging Module and FSQ quantizer. FlexiCodec and its SenseVoice semantic encoder together have approximately 450M parameters.
Talker Transformer
The Talker Transformer decodes the Thinker LLM's hidden states and outputs into FlexiCodec's dynamic-frame-rate speech tokens. It has hidden size 1280, 20 Transformer layers, 8 attention heads, and intermediate size 5120, totaling approximately 630M parameters.
Input: The Talker's input sequence runs over the entire user + assistant context. At each position, the input embedding is projected from the concatenation of: (1) the Thinker LLM's last-layer hidden state, (2) a sinusoidal embedding of the target frame rate (the frame rate conditioning signal), and (3) the embeddings of previously emitted speech and frame length tokens.
Output: The Talker produces two parallel output streams: FlexiCodec FSQ codes and their associated frame lengths. Two separate LM heads predict these streams in parallel, enabling dynamic-rate output.
Token delay: The Talker's FSQ token stream is delayed by 5 tokens from the text stream, providing a small lookahead that prevents speech from preceding its corresponding text. The frame length tokens are further delayed by one additional position, allowing the model to predict a frame's duration after knowing its speech token.
Audio Decoder
The audio decoder is a frozen non-autoregressive (NAR) flow-matching Transformer (363M parameters, VoiceBox-style) that decodes mel spectrograms from the speech tokens. A Vocos neural vocoder then converts the mel spectrogram into 24 kHz waveforms. Specifically, the flow-matching model takes FSQ semantic tokens and associated frame lengths as input. Each FlexiCodec FSQ token is repeated according to its frame length to construct a 12.5 Hz fixed-rate sequence, which is interpolated to 50 Hz to match the mel-spectrogram rate. The model learns a velocity field $v_\theta(\mathbf{z}_t, t)$ transporting samples from a Gaussian prior $\mathbf{z}_0 \sim \mathcal{N}(0, I)$ to the mel-spectrogram distribution $\mathbf{z}_1$. Speaker identity is conditioned on a short reference audio prompt.
Talker-to-Thinker Connection
In addition to the standard cascaded Thinker-to-Talker information flow, FlexiSLM contains an optional Talker-to-Thinker connection that feeds the Talker's previously emitted speech-token embeddings back into the Thinker LLM at the next step. This gives the Thinker explicit access to what has already been spoken. The connection projects the concatenation of the Talker's embeddings (speech code + frame length) and the text embedding into the Thinker's hidden state. It can be disabled by zeroing out the Talker embedding contribution. This connection is only activated in Stage 3 (full fine-tuning), not in Stages 1 or 2.
Controllable Frame Rate
A key innovation of FlexiSLM is its ability to control the output frame rate at inference time, enabling a single model to cover a range of compute budgets without retraining. For a dynamic frame rate sequence, the average frame rate is defined as:
$$\text{Average Frame Rate} = \frac{\text{Total number of frames after merging}}{\text{Audio duration in seconds}}$$Baseline: Merging Threshold Control
A straightforward approach is to control the merging threshold $\tau$: a higher $\tau$ merges fewer frames (higher frame rate), while a lower $\tau$ merges more (lower frame rate). This is how FlexiCodec-TTS operates. However, this provides only indirect control with serious limitations: (1) the resulting frame rate varies significantly across utterances and datasets, making speedup difficult to predict; (2) a single threshold maps to a wide distribution of frame rates, increasing modeling complexity; (3) it is unintuitive for users unfamiliar with the architecture.
Direct Frame-Rate Control (Proposed)
FlexiSLM directly conditions both the Talker Transformer and the Frame Merging Module on the target average frame rate. During training, merging thresholds are randomly sampled, the resulting average frame rate per utterance is computed, and this empirical rate is fed as a conditioning signal. At inference, the user simply specifies the desired frame rate.
The scalar frame rate $r$ is encoded using sinusoidal positional encoding:
$$\text{PE}(r) = [\sin(r \omega_1), \cos(r \omega_1), \ldots, \sin(r \omega_d), \cos(r \omega_d)]$$where $\omega_i = 10{,}000$ are frequency bases. This encoding is concatenated into the Talker input embedding at every position in the sequence. During training, the input frame rate target is sampled from $\mathcal{U}(4, 12.5)$ Hz and the FlexiCodec merging threshold from $\tau \sim \mathcal{U}(0.85, 1.0)$, exposing the model to a broad range of operating points.
Training Procedure
Training proceeds in three stages:
Stage 1: Talker Pre-training
The LLM backbone is frozen and only the randomly initialized Talker is trained, using TTS data only. Training data consists of English samples from Emilia and Multilingual LibriSpeech (MLS), totaling approximately 100K hours. The Talker-to-Thinker connection is disabled. This stage spans 300K steps.
Stage 2: Multi-Task LoRA Fine-Tuning
The speech input-side Frame Merging Module, Thinker (with LoRA, rank $r=32$, scaling $\alpha=64$), and Talker are all activated. The Frame Merging Module is randomly initialized. Training uses a mixture of tasks drawn from multiple data sources (Table below). This stage spans 240K steps (3 epochs). The Talker-to-Thinker connection remains disabled.
| Dataset | Task | Ratio | Utterances | Hours |
|---|---|---|---|---|
| FlexiSLM-Data | Dialog (s2s) | 3.0 | 1.4M | 9.9K |
| TriviaQA + WebQuestions | Dialog (s2s) | 3.0 | 140K | 0.4K |
| TriviaQA + WebQuestions | Dialog (t2t) | 1.0 | 140K | — |
| Emilia-EN | TTS | 0.15 | 14M | 50K |
| MLS | TTS | 0.15 | 12M | 50K |
| LibriSpeech | ASR | 1.0 | 280K | 1K |
| MLS | ASR | 0.1 | 12M | 50K |
| LLaSO-Instruct | Audio Understanding | 1.0 | 7M | 24K |
A central component is FlexiSLM-Data, a speech-to-speech dialogue corpus constructed specifically for this work. It is distilled from a 30B Qwen3-Omni SLM. Text prompts are sourced from public datasets (TriviaQA, WebQuestions, TyDiQA, Alpaca, SmolTalk2, SODA, Magpie-Pro, UltraChat, HH-RLHF, WildChat). Qwen3-Omni generates speech-friendly text responses (short, conversational, formatting-free) to these prompts; responses are synthesized into speech using Qwen3-TTS with a fixed speaker "Ryan"; user speech prompts are synthesized with Fish-Audio TTS using randomly sampled Emilia speaker prompts. Quality filtering removes code/formula-containing samples, incorrect responses (via DeepSeek-V4-Flash API), and high-WER samples (Whisper-medium, WER > 20%). The resulting dataset contains 1.4M samples totaling 9.9K hours (2.7K user + 7.2K assistant).
Stage 3: Full Fine-Tuning
Starting from the Stage 2 checkpoint, LoRA updates are merged back into LLM weight matrices, and full-parameter fine-tuning is performed. The Talker-to-Thinker connection is enabled and trained in this stage. The same data mixture is used. DeepSpeed ZeRO-2 is applied; gradient accumulation is set to 2. This stage spans 160K steps. The LLM backbone uses a reduced learning rate of $1 \times 10^{-6}$ (vs. $2 \times 10^{-5}$ in Stage 2).
Training Loss and Configuration
The model is trained end-to-end with a weighted cross-entropy loss over multiple token streams:
$$\mathcal{L} = \lambda_{\text{text}} \, \mathcal{L}_{\text{text}} + \lambda_{\text{speech}} \, \mathcal{L}_{\text{speech}} + \lambda_{\text{speech\_len}} \, \mathcal{L}_{\text{speech\_len}}$$where $\mathcal{L}_{\text{text}}$, $\mathcal{L}_{\text{speech}}$, and $\mathcal{L}_{\text{speech\_len}}$ are cross-entropy losses for text tokens, FlexiCodec FSQ speech codes, and per-token frame lengths respectively. Loss weights are $\lambda_{\text{text}} = 2$ and $\lambda_{\text{speech}} = \lambda_{\text{speech\_len}} = 1$. For non-speech sequences, speech and frame-length losses are zeroed out. Training uses 24 A100 80G GPUs with AdamW optimizer, dynamic batch size of 3K tokens per GPU, and a 5% linear warmup followed by cosine decay to 1/10 of the peak learning rate.
Experiments and Evaluation
Baselines and Benchmarks
Primary comparisons are against 7B SLMs: Qwen2.5-Omni-7B, Kimi-Audio-7B, Mimo-Audio-7B, and Qwen2-Audio-7B. Larger models (Fun-Audio-Chat-8B, GLM4-Voice-9B, Qwen3-Omni-30B, Gemini 2.5-Pro/Flash) are included for reference.
Evaluation uses the Kimi-Audio-Evalkit. Benchmarks include:
- OpenAudioBench: speech QA covering Llama Questions, Web Questions, and TriviaQA; scored by GPT-5.5 as LLM-as-judge.
- VoiceBench: speech QA covering AlpacaEval, CommonEval, IFEval, SD-QA, and AdvBench; scored by GPT-5.5.
- LibriSpeech test sets (clean/other): ASR WER.
All benchmarks are evaluated in both speech-to-text (s2t) and speech-to-speech (s2s) modes. An overall score averages OpenAudioBench and VoiceBench scores normalized to 0–100 scale. Additional evaluations cover audio understanding (LLaSO-Eval) and TTS quality (E2TTS test suite on LibriSpeech-PC).
Main Results
| Model | In FR | Out FR | Overall s2t | Overall s2s | LS clean WER | LS other WER |
|---|---|---|---|---|---|---|
| Gemini 2.5-Pro | — | — | 83.6 | — | 3.05 | 5.19 |
| Gemini 2.5-Flash | — | — | — | 72.2 | — | — |
| Qwen3-Omni-30B | 12.5 | 12.5 | 76.5 | 69.7 | 1.44 | 2.82 |
| Fun-Audio-Chat-8B | 5.0 | 5.0 | 74.5 | 67.3 | — | — |
| GLM-4-Voice-9B | 12.5 | 12.5 | 61.1 | 55.2 | 2.82 | 7.66 |
| Qwen2-Audio-7B | 25 | — | 54.9 | — | 1.74 | 4.04 |
| Mimo-Audio-7B | 6.25 | 6.25 | 70.6 | 59.0 | — | — |
| Kimi-Audio-7B | 12.5 | 12.5 | 69.7 | 57.2 | 1.80 | 2.45 |
| Qwen2.5-Omni-7B | 25 | 50 | 66.7 | 63.3 | 2.38 | 4.21 |
| FlexiSLM-7B-Stage3 | 12.5 | 12.5 | 72.4 | 67.2 | 1.98 | 5.79 |
| FlexiSLM-7B-Stage3 | 12.5 | 6.25 | 72.3 | 66.2 | 1.98 | 5.79 |
| FlexiSLM-7B-Stage3 | 6.25 | 6.25 | 70.2 | 64.3 | 2.55 | 6.37 |
| FlexiSLM-7B-Stage3 | 5.0 | 5.0 | 69.0 | 60.4 | 3.34 | 7.85 |
| FlexiSLM-7B-Stage3 | 4.0 | 4.0 | 67.2 | 56.5 | 4.47 | 9.53 |
FlexiSLM is strongest at 12.5 Hz and remains competitive at 6.25 Hz. At the 12.5/12.5 Hz setting, FlexiSLM-Stage3 attains overall s2t/s2s scores of 72.4/67.2, surpassing the strongest 7B baseline Qwen2.5-Omni-7B (66.7/63.3) by 5.7/3.9 points, and exceeding Kimi-Audio-7B (69.7/57.2) and Mimo-Audio-7B (70.6/59.0). When only the output frame rate is reduced to 6.25 Hz, FlexiSLM keeps nearly identical scores (72.3/66.2) while using half as many output speech tokens. Even at the matched 6.25/6.25 Hz setting, FlexiSLM reaches 70.2/64.3, still above all 7B baselines on s2s.
FlexiSLM can be steered to very low frame rates with graceful degradation. Moving from 6.25/6.25 Hz to 5.0/5.0 Hz reduces overall s2t/s2s from 70.2/64.3 to 69.0/60.4. At 4.0/4.0 Hz the score is 67.2/56.5. ASR follows the same trend, with LibriSpeech clean/other WER worsening from 2.55/6.37 at 6.25 Hz to 4.47/9.53 at 4.0 Hz. Improving robustness below 6.25 Hz remains an open challenge.
Stage 3 improves both full-rate quality and low-rate robustness. Stage 3 improves the 12.5/12.5 Hz score from 70.6/66.1 (Stage 2) to 72.4/67.2, and reduces the s2s loss from halving output frame rate from 2.0 points to 1.0 point. The 6.25/6.25 Hz setting improves from 69.2/63.6 to 70.2/64.3.
Frame Rate Controllability Analysis
The paper directly evaluates how accurately FlexiSLM can control the average output frame rate, comparing merging threshold control vs. direct frame rate control on several benchmark datasets.
| Method | Target | Mean FR (Hz) | Range (Hz) | $\sigma$ |
|---|---|---|---|---|
| Threshold ($\tau=0.90$) | ~8 Hz | 7.91–8.34 | 3.91–10.74 | ~0.70 |
| Threshold ($\tau=0.86$) | ~6 Hz | 6.03–6.44 | 3.43–8.86 | ~0.59 |
| Direct FR Ctrl. | 6.25 Hz | 6.24–6.25 | 5.77–7.03 | ~0.05 |
| Direct FR Ctrl. | 4.0 Hz | 3.99–4.00 | 3.57–4.58 | ~0.05 |
Direct frame rate control is dramatically more accurate than threshold control. Threshold control exhibits high per-utterance variance ($\sigma \approx 0.70$) and varying averages across datasets. Direct frame rate control matches the requested rate with errors below 0.1 Hz and $\sigma \approx 0.05$ across all settings and datasets. The paper discusses that threshold control may still be preferable when the goal is applying a consistent compression criterion across utterances, but for deployment purposes, direct frame rate control provides predictable compute budgets and reduces modeling ambiguity in the Talker.
Inference Efficiency
| Model | In FR | Out FR | RTF | Avg Out Seq Len | TFLOPs |
|---|---|---|---|---|---|
| Qwen2.5-Omni-7B | 25 | 50 | 1.57 (1.3×) | 835 (talker) / 61 (thinker) | 5.26 (1.2×) |
| FlexiSLM-7B | 12.5 | 12.5 | 1.17 (1.0×) | 190 | 4.57 (1.0×) |
| FlexiSLM-7B | 12.5 | 6.25 | 0.59 (0.5×) | 114 | 3.41 (0.7×) |
| FlexiSLM-7B | 6.25 | 12.5 | 1.09 (0.9×) | 196 | 4.18 (0.9×) |
| FlexiSLM-7B | 6.25 | 6.25 | 0.57 (0.5×) | 101 | 2.73 (0.6×) |
RTF is computed as processing time divided by generated audio duration (lower is faster), measured on a single A100 GPU, batch size 1, averaged over 30 runs. TFLOPs estimates exclude the non-autoregressive flow-matching decoder.
Output frame rate is the main driver of inference speedup. Reducing output frame rate from 12.5 to 6.25 Hz nearly halves the RTF (1.17 → 0.59), since autoregressive speech generation dominates inference cost. Reducing input frame rate from 12.5 to 6.25 Hz yields only a modest improvement (1.17 → 1.09), since input prefilling accounts for a smaller fraction of total time.
FlexiSLM at 12.5/12.5 Hz is already 1.3× faster than Qwen2.5-Omni-7B (1.17 vs. 1.57 RTF). At 6.25 Hz output, the speedup over Qwen2.5-Omni increases to 2.7×. The speedup is somewhat smaller than the raw output-rate ratio (50 vs. 6.25 Hz) because FlexiSLM's Thinker processes a speech-length sequence for bidirectional Thinker–Talker information flow, whereas Qwen2.5-Omni's Thinker stops after text generation.
Ablation Studies
All ablation models are trained on 8 GPUs for 160K steps through Stage 2 and evaluated at 6.25 Hz input / 6.25 Hz output.
Core Design Ablations
| Method | OAB+VB s2t | OAB+VB s2s | LS clean WER | LS other WER | TTS WER |
|---|---|---|---|---|---|
| FlexiSLM-Stage2 (full) | 68.7 | 63.0 | 2.92 | 7.20 | 3.11 |
| w/o dynamic output FR (uniform merging) | 67.7 | 61.0 | 3.14 | 7.67 | 4.95 |
| w/o dynamic input FR (uniform merging) | 67.5 | 62.9 | 2.97 | 7.97 | 3.12 |
| w/ threshold-controlled output FR | 68.2 | 61.7 | 2.96 | 7.24 | 3.53 |
Dynamic output frame rates improve generation quality at 6.25 Hz. Replacing threshold-based merging with uniform merging (every two adjacent frames merged to convert 12.5 Hz to 6.25 Hz) causes a clear drop in s2s performance (63.0 → 61.0) and a 59% relative increase in TTS WER (3.11 → 4.95). The s2t drop (68.7 → 67.7) also suggests that lower-quality output tokenization can hurt the LLM backbone during end-to-end training.
Dynamic input frame rates help speech understanding. Uniform input merging reduces s2t AVG from 68.7 to 67.5 and worsens ASR test-other WER from 7.20 to 7.97, while s2s and ASR test-clean remain nearly unchanged. This suggests dynamic input merging is most beneficial for tasks requiring finer-grained speech understanding.
Direct frame rate control improves Talker quality. Replacing direct frame-rate conditioning with threshold control degrades s2s (63.0 → 61.7) and TTS (3.11 → 3.53) while leaving s2t and ASR nearly unchanged, consistent with the reduced modeling ambiguity argument — a predictable target frame rate accelerates Talker convergence.
Additional Ablations: Encoder and Backbone Choice
| Method | OAB+VB s2t | OAB+VB s2s | LS clean WER | LS other WER | TTS WER |
|---|---|---|---|---|---|
| Baseline (Qwen2.5-Omni audio encoder) | 68.7 | 63.0 | 2.92 | 7.20 | 3.11 |
| Switch to SenseVoice encoder | 68.4 | 62.2 | 2.73 | 6.54 | 3.49 |
| Switch to Qwen-ASR audio encoder | 65.9 | 59.8 | 2.08 | 4.42 | 2.94 |
| Switch to Qwen2.5-Omni Thinker backbone | 67.0 | 61.6 | 2.27 | 5.33 | 3.11 |
| w/o input merging Transformer | 65.7 | 60.1 | 6.45 | 12.33 | 3.66 |
| Talker-to-Thinker in Stage 2 | 60.5 | 55.9 | 7.75 | 12.67 | 3.15 |
The Qwen-ASR encoder achieves the best ASR and TTS numbers but at a significant cost in spoken QA (65.9/59.8), consistent with ASR-specialized encoders sacrificing higher-level semantics. The default Qwen2.5-Omni audio encoder provides the best joint operating point. Switching LLM backbone to Qwen2.5-Omni Thinker mildly degrades spoken QA but improves ASR, with the text-pretrained backbone providing a stronger reasoning prior. Removing the input merging Transformer causes ASR to collapse (clean: 2.92 → 6.45, other: 7.20 → 12.33), confirming it is essential for re-aligning dynamically merged features for the LLM. Activating the Talker-to-Thinker connection in Stage 2 (under LoRA only) produces large performance drops, justifying its deferral to Stage 3's full-parameter fine-tuning.
Speech Generation Quality
| Model | FR (Hz) | TTS WER (%) | Dialog WER (%) |
|---|---|---|---|
| CosyVoice | 25 | 3.20 | — |
| Qwen3-Omni | 12.5 | 3.34 | 4.32 |
| Mimo-Audio | 25 | 14.72 | 20.16 |
| Qwen2.5-Omni | 25 | 3.18 | 6.33 |
| FlexiSLM | 12.5 | 2.14 | 4.52 |
| FlexiSLM | 8.0 | 2.47 | 4.41 |
| FlexiSLM | 6.25 | 2.87 | 5.83 |
| FlexiSLM | 5.0 | 4.16 | 9.03 |
FlexiSLM at 12.5 Hz achieves 2.14% TTS WER on LibriSpeech-PC, outperforming Qwen2.5-Omni (3.18%) and Qwen3-Omni (3.34%). Dialog response WER at 12.5 Hz is 4.52%, comparable to Qwen3-Omni (4.32%) and better than Qwen2.5-Omni (6.33%). At 6.25 Hz, TTS WER remains acceptable at 2.87% and dialog WER at 5.83%. The 5.0 Hz row shows higher intelligibility cost (4.16% TTS, 9.03% dialog), consistent with the spoken QA degradation pattern. Mimo-Audio's high WER is attributed to text-speech alignment failures and premature speech stopping.
Audio Understanding Performance
On the LLaSO-Eval benchmark covering emotion recognition, accent recognition, vocal sound, instrument/music source classification, and gender classification, FlexiSLM at 12.5 Hz achieves an average accuracy of 65.8%, outperforming Gemini 2.5-Pro (48.3%), Qwen2.5-Omni-7B (48.6%), Kimi-Audio-7B (46.8%), and LLaSO-3B (58.3%). Notably, audio understanding accuracy is remarkably stable under aggressive input compression: FlexiSLM retains 64.7%, 64.0%, 63.4%, and 64.1% at 8.0, 6.25, 5.0, and 4.0 Hz input respectively. This stability is attributed to audio understanding being a sequence-level classification task: aggressive frame merging preserves global acoustic statistics needed for classification decisions, unlike ASR or fine-grained instruction following which depend on local phonetic detail.
Visualization of Dynamic Frame Rate Outputs
The visualization confirms that frame rate controllability changes the temporal granularity of the speech-token sequence rather than simply truncating or uniformly dropping content. Tokens in low-information regions (pauses, steady vowels) are merged more aggressively, while phonetically complex segments retain higher token density.
Key Contributions and Novelty
- First dynamic frame rate SLM: FlexiSLM is the first spoken language model applying dynamic frame compression on both speech input and output within an end-to-end SLM framework.
- First controllable frame rate SLM: Direct frame-rate conditioning via sinusoidal encoding enables a single model to operate at any average frame rate from 4.0 to 12.5 Hz without retraining, making FlexiSLM the first SLM with accurate frame rate controllability.
- State-of-the-art among 7B SLMs: FlexiSLM-7B-Stage3 surpasses Qwen2.5-Omni-7B, Kimi-Audio-7B, and Mimo-Audio-7B on overall s2t and s2s scores at 12.5 Hz, and remains above all 7B baselines on s2s at 6.25 Hz.
- Practical inference speedup: Halving the output frame rate to 6.25 Hz halves inference time with only ~1 point s2s quality loss; a single model covers RTF operating points from 0.57 to 1.17.
- FlexiSLM-Data: A new 1.4M-sample, 9.9K-hour speech-to-speech dialogue corpus distilled from Qwen3-Omni and released for the research community.
- Three-stage training recipe: Talker pre-training → multi-task LoRA fine-tuning → full-parameter fine-tuning with Talker-to-Thinker connection, with clear ablation-backed justification for each design decision.
Limitations
- No post-training alignment: FlexiSLM has not been trained with RLHF or DPO, which could further improve response quality and alignment.
- Non-streaming model: The current system is not a streaming model. Adapting the audio decoder for causal operation is required for real-time conversation support.
- Limited training data coverage: FlexiSLM-Data is single-turn only and does not cover reasoning-intensive tasks, multi-turn dialogues, or multiple-choice questions, limiting generalization to these scenarios.
- Quality below 6.25 Hz needs improvement: While controllable to 4.0 Hz, robustness at very low frame rates (especially below 6.25 Hz) remains an open research challenge.
- Patching not combined: FlexiSLM does not combine dynamic frame merging with the fixed-ratio patching approach used in Fun-Audio-Chat and Mimo-Audio; this combination is left to future work.
Future Directions
The authors identify several promising research directions: (1) extending FlexiSLM to full-duplex interactive SLMs, leveraging the Talker-to-Thinker connection as a natural foundation; (2) adapting the Frame Merging Module and audio decoder to causal/chunk-based streaming for on-device deployment; (3) spoken-dialogue-specific post-training with prosody, naturalness, and turn-taking reward models; (4) expanding FlexiSLM-Data to multi-turn, chain-of-thought, and tool-augmented interactions; and (5) applying the controllable dynamic-rate recipe to general audio (music, environmental sound) for unified efficient audio language modeling.
Code & Implementation
This repository is a placeholder containing the paper's architecture diagram and abstract. The authors have announced that training and inference code for FlexiSLM will be released by August 1st, 2026, pending approval. A reproduced version of FlexiSLM-7B and associated data are planned for release before September 2026.
The paper describes a Thinker-Talker SLM architecture with three training stages: Talker pre-training on ~100K hours of TTS, multi-task LoRA fine-tuning with dynamic frame merging, and full fine-tuning with Talker-to-Thinker feedback. The method enables both dynamic frame-rate compression on speech input and controllable frame-rate generation on output, steering from 12.5 Hz down to 4.0 Hz without retraining.