Inference issues with Dia-1.6B: very short audio, extremely long noisy audio, or no audio output
Author: manhcuong17072002Created Jan 4, 2026Updated Jan 4, 2026
Hi, I’m encountering some issues during inference when experimenting with the official code from this repository: https://huggingface.co/nari-labs/Dia-1.6B-0626
I’m using the following minimal example:
import soundfile as sf
from dia.model import Dia
model = Dia.from_pretrained("nari-labs/Dia-1.6B-0626")
text = "[S1] Dia is an open weights text to dialogue model. [S2] You get full control over scripts and voices. [S1] Wow. Amazing. (laughs) [S2] Try it now on GitHub or Hugging Face."
output = model.generate(text)
sf.write("simple.mp3", output, 44100)However, I frequently observe the following problems:
Very short output audio
- The generated audio has an extremely short length (e.g. shape is only 1024, 2048, etc.), resulting in almost 0 seconds of audio.
Extremely long and noisy output audio
- For a very short input text, the model sometimes generates a very long audio output.
- Besides the spoken content, the output includes unrelated noise, music-like signals, or other artifacts that are not related to the input text.
No audio output at all
- In some cases, the model fails to generate any audio and instead raises an error.
---------------------------------------------------------------------------
RuntimeError Traceback (most recent call last)
Cell In[7], line 32
28 try:
29 # Generate audio
30 start_time = time.time()
---> 32 output_audio = model.generate(
33 text=text,
34 # max_tokens=MAX_TOKENS,
35 # cfg_scale=CFG_SCALE,
36 # temperature=TEMPERATURE,
37 # top_p=TOP_P,
38 )
40 print("✓ Audio generation complete!")
41 print(f"Audio shape: {output_audio.shape}")
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/utils/_contextlib.py:116, in context_decorator.<locals>.decorate_context(*args, **kwargs)
113 @functools.wraps(func)
114 def decorate_context(*args, **kwargs):
115 with ctx_factory():
--> 116 return func(*args, **kwargs)
File /workspace/dia-finetuning/dia/model.py:464, in Dia.generate(self, text, max_tokens, cfg_scale, temperature, top_p, use_cfg_filter, use_torch_compile, cfg_filter_top_k, audio_prompt_path)
460 output_codes = generated_BxTxC[:, prompt_len_inc_bos : step + 1, :]
462 generated_codes = output_codes[0]
--> 464 audio = codebook_to_audio(
465 generated_codes.transpose(1, 0), self.dac_model, delay_pattern, B=1, T=max_tokens, C=num_channels
466 )
467 return audio.squeeze().cpu().numpy()
File /workspace/dia-finetuning/dia/audio.py:281, in codebook_to_audio(generated_codes, model, delay_pattern, B, T, C)
279 # Set invalid values to 0 (modify the tensor in-place)
280 codebook[invalid_mask] = 0
--> 281 audio_array = decode(model, codebook)
283 return audio_array
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/utils/_contextlib.py:116, in context_decorator.<locals>.decorate_context(*args, **kwargs)
113 @functools.wraps(func)
114 def decorate_context(*args, **kwargs):
115 with ctx_factory():
--> 116 return func(*args, **kwargs)
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/utils/_contextlib.py:116, in context_decorator.<locals>.decorate_context(*args, **kwargs)
113 @functools.wraps(func)
114 def decorate_context(*args, **kwargs):
115 with ctx_factory():
--> 116 return func(*args, **kwargs)
File /workspace/dia-finetuning/dia/audio.py:236, in decode(model, audio_codes)
231 raise ValueError(f"Expected one frame, got {len(audio_codes)}")
233 try:
234 # print(audio_codes.shape)
235 # print(audio_codes)
--> 236 audio_values = model.quantizer.from_codes(audio_codes)
237 audio_values = model.decode(audio_values[0])
239 return audio_values
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/dac/nn/quantize.py:218, in ResidualVectorQuantize.from_codes(self, codes)
215 z_p_i = self.quantizers[i].decode_code(codes[:, i, :])
216 z_p.append(z_p_i)
--> 218 z_q_i = self.quantizers[i].out_proj(z_p_i)
219 z_q = z_q + z_q_i
220 return z_q, torch.cat(z_p, dim=1), codes
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/nn/modules/module.py:1739, in Module._wrapped_call_impl(self, *args, **kwargs)
1737 return self._compiled_call_impl(*args, **kwargs) # type: ignore[misc]
1738 else:
-> 1739 return self._call_impl(*args, **kwargs)
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/nn/modules/module.py:1845, in Module._call_impl(self, *args, **kwargs)
1842 return inner()
1844 try:
-> 1845 return inner()
1846 except Exception:
1847 # run always called hooks if they have not already been run
1848 # For now only forward hooks have the always_call option but perhaps
1849 # this functionality should be added to full backward hooks as well.
1850 for hook_id, hook in _global_forward_hooks.items():
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/nn/modules/module.py:1793, in Module._call_impl.<locals>.inner()
1790 bw_hook = BackwardHook(self, full_backward_hooks, backward_pre_hooks)
1791 args = bw_hook.setup_input_hook(args)
-> 1793 result = forward_call(*args, **kwargs)
1794 if _global_forward_hooks or self._forward_hooks:
1795 for hook_id, hook in (
1796 *_global_forward_hooks.items(),
1797 *self._forward_hooks.items(),
1798 ):
1799 # mark that always called hook is run
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/nn/modules/conv.py:375, in Conv1d.forward(self, input)
374 def forward(self, input: Tensor) -> Tensor:
--> 375 return self._conv_forward(input, self.weight, self.bias)
File ~/miniconda3/envs/dia-tts/lib/python3.12/site-packages/torch/nn/modules/conv.py:370, in Conv1d._conv_forward(self, input, weight, bias)
358 if self.padding_mode != "zeros":
359 return F.conv1d(
360 F.pad(
361 input, self._reversed_padding_repeated_twice, mode=self.padding_mode
(...) 368 self.groups,
369 )
--> 370 return F.conv1d(
371 input, weight, bias, self.stride, self.padding, self.dilation, self.groups
372 )
RuntimeError: Calculated padded input size per channel: (0). Kernel size: (1). Kernel size can't be greater than actual input sizeThese issues happen quite frequently in my experiments. I’m wondering if anyone else has encountered similar behavior, and whether there are any known causes or recommended workarounds to mitigate these issues.
Thank you very much for your help.
Source: nari-labs/dia