78f8aa98ad
torch.inference_mode is thread-local, but the inference flag lives on the tensor object. Operations on inference tensors always propagate it, even in a clean thread. The only escape is .clone() called outside inference_mode. At thread entry (inference_mode disabled): clone clips and mel_converter buffers to get clean normal tensors before any training computation. Vocoder parameter clone() also now works correctly in this thread context. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>