Web Analytics

ThinkSound

⭐ 1043 stars French by FunAudioLLM

ThinkSound

🌐 English | 简体中文 | 繁體中文 | Español | Français | 日本語

NeurIPS 2025

arXiv   Online Demo   Hugging Face   ModelScope

Si vous trouvez ce projet utile,
une étoile ⭐ sur GitHub serait très appréciée !


ThinkSound est un cadre unifié de génération Any2Audio avec un appariement de flux guidé par le raisonnement Chain-of-Thought (CoT).

Implémentation PyTorch pour la génération et l’édition audio multimodales : générez ou modifiez de l’audio à partir de vidéo, de texte et d’audio, propulsé par un raisonnement étape par étape issu des grands modèles de langage multimodaux (MLLM).

Teaser


📰 Actualités

---

🚀 Fonctionnalités

---

✨ Aperçu de la méthode

ThinkSound décompose la génération et l’édition audio en trois étapes interactives, toutes guidées par le raisonnement Chain-of-Thought (CoT) basé sur MLLM :

Aperçu ThinkSound


⚡ Démarrage rapide

Préparation de l'environnement :

git clone https://github.com/liuhuadai/ThinkSound.git
cd ThinkSound
conda create -n thinksound python=3.10
conda activate thinksound
pip install thinksound
conda install -y -c conda-forge 'ffmpeg<7'

Download pretrained weights https://huggingface.co/liuhuadai/ThinkSound to Directory ckpts/

model weights can be also downloaded from https://www.modelscope.cn/models/iic/ThinkSound

git lfs install git clone https://huggingface.co/liuhuadai/ThinkSound ckpts

To improve inference and training speed, you may optionally install a FlashAttention backend compatible with your system and PyTorch version.

Astuce Windows :
Les utilisateurs de Windows peuvent simplement exécuter setup_windows.bat (ou double-cliquer dessus) pour créer automatiquement l'environnement conda, installer toutes les dépendances (y compris FFmpeg) et télécharger le modèle pré-entraîné — aucune configuration manuelle n'est requise.
Assurez-vous que conda et git sont installés et disponibles dans le PATH de votre système avant d'exécuter le script.

▶️ Exécuter la démo

#### Linux/macOS

chmod +x scripts/demo.sh
./scripts/demo.sh   <CoT description> [use-half]</code></pre>
#### <strong>Windows</strong></p><p>Vous pouvez utiliser le script <code>.bat</code> fourni à la place :</p><pre><code class="language-bash">.\scripts\demo.bat <path-to-your-demo-video> <title> <CoT description> [use-half]</code></pre>
<strong>Remarque :</strong></p><ul><li><code><chemin-vers-votre-vidéo-démo></code> : Le chemin vers une seule vidéo</li>
<li><code>[utiliser-half]</code> (optionnel) : Ajoutez utiliser-half à la fin pour activer l’extraction de caractéristiques en demi-précision.</li></p><p></ul>---</p><h3>📦 Inférence par lot</h3></p><p>#### <strong>Linux/macOS</strong></p><pre><code class="language-bash">chmod +x scripts/eval_batch.sh
./scripts/eval_batch.sh <video_path> <csv_path> <save_path (optional)> [use-half]</code></pre>
#### <strong>Windows</strong></p><p>Utilisez le script <code>.bat</code> équivalent :</p><pre><code class="language-bash">.\scripts\eval_batch.bat <video_path> <csv_path> <save_path (optional)> [use-half]</code></pre>
<strong>Remarque :</strong></p><ul><li><code><video_path></code> : Chemin vers le répertoire racine contenant toutes les vidéos .mp4 à traiter (toutes les vidéos doivent avoir la même durée).</li>
<li><code><csv_path></code> : Un fichier CSV avec les invites textuelles pour chaque vidéo (voir <code>demo_test.csv</code> pour le format).</li>
<li><code><save_path></code> (optionnel) : Emplacement où enregistrer l'audio généré. Par défaut <code>results/features</code>.</li>
<li><code>[use-half]</code> (optionnel) : Ajoutez use-half à la fin pour activer l'extraction de caractéristiques en demi-précision.</li></p><p></ul>---</p><h3>Utilisation de l’interface Web</h3></p><p>Pour une expérience interactive, lancez l’interface web Gradio :</p><pre><code class="language-bash">python app.py</code></pre></p><h2>🏋️ Entraînez le modèle</h2></p><p>Voir <a href="https://raw.githubusercontent.com/FunAudioLLM/ThinkSound/master/docs/Training.md" target="_blank" rel="noopener noreferrer"><code>Training.md</code></a></p><hr></p><h2>📝 À faire & Plans futurs</h2>
<ul><li>- [ ] Publier un modèle de base plus puissant couvrant plusieurs domaines pour offrir une création de foley plus engageante et immersive</li>
<li>- [ ] Ajouter la prise en charge de modalités supplémentaires et de tâches aval</li>
<li>- [ ] Publier des modèles à différentes échelles</li>
<li>- [x] Open source du jeu de données AudioCoT et du pipeline automatisé</li>
<li>- [x] Publication des scripts d'entraînement pour les modèles ThinkSound</li>
<li>- [x] Un README de démarrage rapide convivial pour Windows</li>
</ul>---</p><h2>📄 Licence</h2></p><p>Ce projet est publié sous la licence Apache 2.0.</p><blockquote><strong>Remarque :</strong></blockquote>
<blockquote>Le code, les modèles et le jeu de données sont <strong>uniquement destinés à la recherche et à l'éducation</strong>.</blockquote>
<blockquote><strong>L'utilisation commerciale n'est PAS autorisée.</strong></blockquote>
<blockquote>Pour une licence commerciale, veuillez contacter les auteurs.</blockquote></p><p><strong>📦 Composants tiers</strong></p><ul><li><strong>Stable Audio Open VAE</strong> (par Stability AI) :</li>
  </ul>Ce dépôt inclut un VAE affiné issu de <a href="https://huggingface.co/stabilityai/stable-audio-open-1.0/" target="_blank" rel="noopener noreferrer">Stable Audio Open</a>, sous licence <a href="https://raw.githubusercontent.com/FunAudioLLM/ThinkSound/master/./third_party/LICENSE_StabilityAI.md" target="_blank" rel="noopener noreferrer">Stability AI Community License</a>.
  <strong>L'utilisation commerciale et la redistribution nécessitent l'autorisation préalable de Stability AI.</strong></p><ul><li>📘 <strong>Tout le reste du code et des modèles</strong> est publié sous la licence Apache 2.0.</li></p><p></ul>---</p><h2>Remerciements</h2></p><p>Un grand merci à :</p><ul><li><strong>stable-audio-tools</strong> (par Stability AI) :</li>
</ul>Pour avoir fourni un cadre facile à utiliser pour la génération audio, ainsi que le module VAE et les poids.
<ul><li><strong>MMAudio</strong> :</li>
  </ul>Pour l’implémentation de l’architecture MM-DiT dans le domaine audio.</p><hr></p><h2>📖 Citation</h2></p><p>Si ThinkSound vous est utile dans vos recherches ou travaux, veuillez citer notre article :</p><pre><code class="language-bibtex">@misc{liu2025thinksoundchainofthoughtreasoningmultimodal,
      title={ThinkSound: Chain-of-Thought Reasoning in Multimodal Large Language Models for Audio Generation and Editing}, 
      author={Huadai Liu and Jialei Wang and Kaicheng Luo and Wen Wang and Qian Chen and Zhou Zhao and Wei Xue},
      year={2025},
      eprint={2506.21448},
      archivePrefix={arXiv},
      primaryClass={eess.AS},
      url={https://arxiv.org/abs/2506.21448}, 
}</code></pre></p><hr></p><h2>📬 Contact</h2></p><p>
✨ Feel free to <a href="https://github.com/liuhuadai/ThinkSound/issues" target="_blank" rel="noopener noreferrer">open an issue</a> or contact us via email (<a href="https://raw.githubusercontent.com/FunAudioLLM/ThinkSound/master/mailto:liuhuadai@zju.edu.cn" target="_blank" rel="noopener noreferrer">liuhuadai@zju.edu.cn</a>) if you have any questions or suggestions!</p><p>


---


Tranlated By <a href="https://github.com/OpenAiTx/OpenAiTx" target="_blank" rel="noopener noreferrer">Open Ai Tx</a> | Last indexed: 2025-10-04


---</p>
        </div>
        
        <div class="original-link">
            <strong>Original README:</strong> <a href="https://raw.githubusercontent.com/FunAudioLLM/ThinkSound/master/README.md" target="_blank" rel="noopener noreferrer">View on GitHub</a>
        </div>
    </div>
    
    <div class="footer">
        <p>Translated by <a href="https://github.com/OpenAiTx/OpenAiTx" target="_blank" rel="noopener noreferrer">OpenAiTx</a> | 
        Last updated: 2025-10-04 
    </div>
    
</body>
</html>