ThinkSound
🌐 English | 简体中文 | 繁體中文 | Español | Français | 日本語
Si vous trouvez ce projet utile,
une étoile ⭐ sur GitHub serait grandement appréciée !
Structure du dépôt
Ce dépôt GitHub ThinkSound héberge deux projets liés sur des branches séparées :
| Branche | Projet | Documentation |
|---------|--------|----------------|
| master | ThinkSound (NeurIPS 2025) — génération Any2Audio unifiée avec appariement de flux guidé par CoT | Ce fichier : README.md |
| prismaudio | PrismAudio — suite des travaux (ICLR 2026) sur la conversion vidéo-vers-audio avec CoT-RL multi-dimensionnel | README.md sur la branche prismaudio |
Pour ThinkSound, utilisez la branche master (ce README). Pour PrismAudio, consultez prismaudio et suivez le README.md associé.
ThinkSound est un cadre unifié de génération Any2Audio avec appariement de flux guidé par un raisonnement de type Chain-of-Thought (CoT).
Implémentation PyTorch pour la génération et l’édition audio multimodales : générez ou éditez de l’audio à partir de vidéo, texte et audio, grâce au raisonnement pas à pas des grands modèles de langage multimodal (MLLM).
📰 Actualités
- 2026.03.24 🔥 PrismAudio est publié dans le même dépôt sur la branche
prismaudio— voirREADME.mdpour la configuration et les modèles. - 2026.01.26 🎉 PrismAudio accepté à la Conférence Principale ICLR 2026 (code/docs sur
prismaudio). - 2025.11.25 🔥 Démo PrismAudio en ligne disponible.
- 2025.11.25 🔥 Article PrismAudio sur arXiv — CoT-RL multi-dimensionnel pour la vidéo-vers-audio.
- 2025.09.19 🎉 ThinkSound accepté à la Conférence Principale NeurIPS 2025 !
- 2025.09.01 Notre jeu de données AudioCoT est désormais open source et disponible sur Hugging Face !
- 2025.07.17 🧠 Finetuning activé : code d’entraînement et d’ajustement fin désormais public, avec instructions claires pour personnaliser et étendre ThinkSound avec vos propres données.
- 2025.07.15 📦 Installation et utilisation simplifiées : dépendances sur PyPI pour une configuration multiplateforme facile ; scripts Windows
.batpour automatiser la création d’environnement et l’exécution des scripts. - 2025.07.08 🔧 Mise à jour majeure : modèle allégé et optimisation de la mémoire et de l’utilisation GPU, supporte désormais la génération audio à haut débit à grande échelle !
- 2025.07.01 Démo en ligne sur Hugging Face Spaces et ModelScope pour une expérience interactive !
- 2025.07.01 Scripts d’inférence et interface web publiés ;
- 2025.06 Article ThinkSound publié sur arXiv !
- 2025.06 Démo en ligne disponible - essayez-la dès maintenant !
Suite : PrismAudio (même dépôt, branche prismaudio)
PrismAudio est le successeur de ThinkSound (ICLR 2026), développé sous un nouveau nom mais conservé dans ce dépôt sur la branche prismaudio. L'installation, les checkpoints et la citation sont dans le README.md de cette branche.
👉 git checkout prismaudio ou ouvrez la branche sur GitHub.
🚀 Fonctionnalités
- Any2Audio : Génération audio à partir de n'importe quelle modalité — vidéo, texte, audio ou leurs combinaisons.
- Video-to-Audio SOTA : Atteint des résultats à l'état de l'art sur plusieurs benchmarks V2A.
- Raisonnement CoT : Raisonnement Chain-of-Thought pour une génération audio compositionnelle et contrôlable via MLLMs.
- Édition interactive centrée sur les objets : Affinez ou éditez des événements sonores spécifiques en cliquant sur des objets visuels ou en utilisant des instructions textuelles.
- Cadre unifié : Un modèle fondationnel unique prend en charge la génération, l'édition et le workflow interactif.
✨ 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 un raisonnement Chain-of-Thought (CoT) basé sur MLLM :
- Génération Foley : Génération de paysages sonores fondamentaux, sémantiquement et temporellement alignés à partir de la vidéo.
- Affinement centré sur les objets : Affinez ou ajoutez des sons pour des objets spécifiés par l'utilisateur via des clics ou des régions dans la vidéo.
- Édition audio ciblée : Modifiez l'audio généré à l'aide d'instructions en langage naturel de haut niveau.
⚡ Démarrage rapide
Préparation de l'environnement :
# ThinkSound code: branch master. PrismAudio: clone with -b prismaudio (see README.md on that branch).
git clone -b master 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 quecondaetgitsont 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 [use-half]
#### WindowsVous pouvez utiliser le script .bat fourni à la place :
.\scripts\demo.bat [use-half]
Remarque :: Le chemin vers une seule vidéo[utiliser-half](optionnel) : Ajoutez utiliser-half à la fin pour activer l’extraction de caractéristiques en demi-précision.
📦 Inférence par lot
#### Linux/macOS
chmod +x scripts/eval_batch.sh
./scripts/eval_batch.sh [use-half]
#### WindowsUtilisez le script .bat équivalent :
.\scripts\eval_batch.bat [use-half]
Remarque :: Chemin vers le répertoire racine contenant toutes les vidéos .mp4 à traiter (toutes les vidéos doivent avoir la même durée).: Un fichier CSV avec les invites textuelles pour chaque vidéo (voirdemo_test.csvpour le format).(optionnel) : Emplacement où enregistrer l'audio généré. Par défautresults/features.[use-half](optionnel) : Ajoutez use-half à la fin pour activer l'extraction de caractéristiques en demi-précision.
Utilisation de l’interface Web
Pour une expérience interactive, lancez l’interface web Gradio :
python app.py
🏋️ Entraîner le modèle
Voir Training.md
📄 Licence
Ce projet est publié sous la licence Apache 2.0.
Remarque :
Le code, les modèles et le jeu de données sont uniquement destinés à la recherche et à l'éducation.
L'utilisation commerciale N'EST PAS autorisée.
Pour une licence commerciale, veuillez contacter les auteurs.
📦 Composants tiers
- Stable Audio Open VAE (par Stability AI) :
- 📘 Tout le reste du code et des modèles est publié sous licence Apache 2.0.
Remerciements
Un grand merci à :
- stable-audio-tools (par Stability AI) :
- MMAudio :
📖 Citation
Si vous trouvez notre projet utile dans vos recherches ou votre travail, veuillez citer notre article :
@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},
}
@misc{liu2025prismaudiodecomposedchainofthoughtsmultidimensional,
title={PrismAudio: Decomposed Chain-of-Thoughts and Multi-dimensional Rewards for Video-to-Audio Generation},
author={Huadai Liu and Kaicheng Luo and Wen Wang and Qian Chen and Peiwen Sun and Rongjie Huang and Xiangang Li and Jieping Ye and Wei Xue},
year={2025},
eprint={2511.18833},
archivePrefix={arXiv},
primaryClass={cs.SD},
url={https://arxiv.org/abs/2511.18833},
}📬 Contact
✨ Feel free to open an issue or contact us via email (liuhuadai@zju.edu.cn) if you have any questions or suggestions!
--- Tranlated By Open Ai Tx | Last indexed: 2026-04-20 ---