colab code can not work correctly
when i step by step run the code on colab, facing some dependencies problem.
Adding to this to be more specific. Just tried the notebook.
When running
!echo -e "Grab a cup a coffee and a slice of pizza...\n\n"
!conda install -y -c conda-forge montreal-forced-aligner=2.2.17 openfst=1.8.2 kaldi=5.5.1068 && \
pip install torch==2.1.0 && \
pip install tensorboard==2.16.2 && \
pip install phonemizer==3.2.1 && \
pip install torchaudio==2.1.0 && \
pip install datasets==2.16.0 && \
pip install torchmetrics==0.11.1 && \
pip install torchvision==0.16.0
!pip install -U git+https://[email protected]/facebookresearch/audiocraft#egg=audiocraft
!git clone https://github.com/jasonppy/VoiceCraft.git
This is the output:
Grab a cup a coffee and a slice of pizza...
Channels:
- conda-forge
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: failed
LibMambaUnsatisfiableError: Encountered problems while solving:
- package pin-1obus87iuw-1 has constraint python 3.12.* conflicting with python-3.11.0-h10a6764_1_cpython
- package biopython-1.79-py311hd4cff14_3 requires python_abi 3.11.* *_cp311, but none of the providers can be installed
Could not solve for environment specs
The following packages are incompatible
├─ montreal-forced-aligner =2.2.17 * is installable and it requires
│ └─ biopython =1.79 * with the potential options
│ ├─ biopython 1.79 would require
│ │ └─ python_abi =3.10 *_cp310, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi =3.11 *_cp311, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi ==3.6 *_pypy36_pp73, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi =3.6 *_cp36m, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi =3.7 *_cp37m, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi ==3.7 *_pypy37_pp73, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi =3.8 *_cp38, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi ==3.8 *_pypy38_pp73, which can be installed;
│ ├─ biopython 1.79 would require
│ │ └─ python_abi =3.9 *_cp39, which can be installed;
│ └─ biopython 1.79 would require
│ └─ python_abi ==3.9 *_pypy39_pp73, which can be installed;
├─ pin on python 3.12.* =* * is installable and it requires
│ └─ python =3.12 *, which can be installed;
├─ pin on python_abi 3.12.* *cp312* =* * is not installable because it requires
│ └─ python_abi =3.12 *cp312*, which conflicts with any installable versions previously reported;
└─ python =3.11 * is not installable because it conflicts with any installable versions previously reported.
Pins seem to be involved in the conflict. Currently pinned specs:
- python_abi=3.12[build=*cp312*]
- python=3.12
- cuda-version=12
I'm not entirely sure what these libraries do, but it seems python_abi 3.12 is not installed.
Further down, running the next block:
!mfa model download dictionary english_us_arpa && \
mfa model download acoustic english_us_arpa
outputs:
Traceback (most recent call last):
File "/usr/local/bin/mfa", line 6, in <module>
from montreal_forced_aligner.command_line.mfa import mfa_cli
File "/usr/local/lib/python3.11/site-packages/montreal_forced_aligner/__init__.py", line 4, in <module>
import montreal_forced_aligner.acoustic_modeling as acoustic_modeling
File "/usr/local/lib/python3.11/site-packages/montreal_forced_aligner/acoustic_modeling/__init__.py", line 7, in <module>
from montreal_forced_aligner.acoustic_modeling.base import AcousticModelTrainingMixin # noqa
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/montreal_forced_aligner/acoustic_modeling/base.py", line 19, in <module>
from montreal_forced_aligner.abc import MfaWorker, ModelExporterMixin, TrainerMixin
File "/usr/local/lib/python3.11/site-packages/montreal_forced_aligner/abc.py", line 33, in <module>
from montreal_forced_aligner.config import GLOBAL_CONFIG
File "/usr/local/lib/python3.11/site-packages/montreal_forced_aligner/config.py", line 259, in <module>
MEMORY = joblib.Memory(
^^^^^^^^^^^^^^
TypeError: Memory.__init__() got an unexpected keyword argument 'bytes_limit'
And I think this is where breakage happens because of dependencies: something isn't expecting bytes_limit but it's passed into the call to joblib.Memory()
I would love to try out the docker container but I don't have an Nvidia GPU, so I'm a bit stuck unless I pay money to rent a box myself.
As an aside:
Could we change the
pip install -U git+https://[email protected]/facebookresearch/audiocraft#egg=audiocraft
calls and pin to a specific version via a commit hash? If dependencies change in the main branch, the notebook will also not run well.