seamless_communication icon indicating copy to clipboard operation
seamless_communication copied to clipboard

One-stop shop Seamless Tutorial

Open kauterry opened this issue 2 years ago • 3 comments

We have just released our notebook which serves as an exhaustive tutorial to learn how to use the entire suite of Seamless models. This was presented as part of the NeurIPS 2023 - Seamless EXPO workshop. This serves to answer most of the questions the user might have while using the seamless_communication repository.

Please feel free to play with it, you can open it in Google Colab as well.

You can find it here: Seamless_Tutorial.ipynb

kauterry avatar Dec 14 '23 23:12 kauterry

@kauterry @avidale

I am using Google Colab & was unable to import seamless_communication package using the official notebook shared in the Github Repo : Seamless_Tutorial.ipynb

The error occurs in the below cell ----->

import io
import json
import matplotlib as mpl
import matplotlib.pyplot as plt
import mmap
import numpy
import soundfile
import torchaudio
import torch

from collections import defaultdict
from IPython.display import Audio, display
from pathlib import Path
from pydub import AudioSegment

from seamless_communication.inference import Translator
from seamless_communication.streaming.dataloaders.s2tt import SileroVADSilenceRemover

---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
[/tmp/ipython-input-1209157288.py](https://localhost:8080/#) in <cell line: 0>()
     14 from pydub import AudioSegment
     15 
---> 16 from seamless_communication.inference import Translator
     17 from seamless_communication.streaming.dataloaders.s2tt import SileroVADSilenceRemover

ModuleNotFoundError: No module named 'seamless_communication'

---------------------------------------------------------------------------
NOTE: If your import is failing due to a missing package, you can
manually install dependencies using either !pip or !apt.

To view examples of installing some common dependencies, click the
"Open Examples" button below.
---------------------------------------------------------------------------
Image

hackyotter avatar Sep 30 '25 12:09 hackyotter

@hackyotter the cell just above this one installs the seamless_communication package.

avidale avatar Oct 03 '25 08:10 avidale

@avidale

I ran the cell that install the packages & commented out the magic cmd: %%capture ...

I could see that the seamless_communication package fails to install due to package versions conflicts for the fairseq2 library. I have attached the output from the first cell for your ready reference

Since we haven't specified the version numbers for fairseq2 ... I am not sure how to circumvent the above issue

#%%capture
!pip install fairseq2
!pip install pydub sentencepiece
!pip install git+https://github.com/facebookresearch/seamless_communication.git
Requirement already satisfied: fairseq2 in /usr/local/lib/python3.12/dist-packages (0.5.2)
Requirement already satisfied: editdistance~=0.8 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (0.8.1)
Requirement already satisfied: fairseq2n==0.5.2 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (0.5.2)
Requirement already satisfied: huggingface_hub~=0.32 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (0.35.0)
Requirement already satisfied: importlib_metadata~=7.0 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (7.2.1)
Requirement already satisfied: importlib_resources~=6.4 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (6.5.2)
Requirement already satisfied: mypy-extensions~=1.0 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (1.1.0)
Requirement already satisfied: numpy~=1.23 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (1.26.4)
Requirement already satisfied: packaging~=24.1 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (24.2)
Requirement already satisfied: psutil~=5.9 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (5.9.5)
Requirement already satisfied: ruamel.yaml~=0.18 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (0.18.15)
Requirement already satisfied: rich~=13.7 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (13.9.4)
Requirement already satisfied: sacrebleu~=2.4 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (2.5.1)
Requirement already satisfied: safetensors~=0.6 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (0.6.2)
Requirement already satisfied: tiktoken~=0.7 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (0.11.0)
Requirement already satisfied: torcheval~=0.0.6 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (0.0.7)
Requirement already satisfied: tqdm~=4.62 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (4.67.1)
Requirement already satisfied: typing_extensions~=4.12 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (4.15.0)
Requirement already satisfied: blobfile~=3.0.0 in /usr/local/lib/python3.12/dist-packages (from fairseq2) (3.0.0)
Requirement already satisfied: tbb>=2021.8 in /usr/local/lib/python3.12/dist-packages (from fairseq2n==0.5.2->fairseq2) (2022.2.0)
Requirement already satisfied: torch==2.8.0 in /usr/local/lib/python3.12/dist-packages (from fairseq2n==0.5.2->fairseq2) (2.8.0+cu126)
Requirement already satisfied: filelock in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (3.19.1)
Requirement already satisfied: setuptools in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (75.2.0)
Requirement already satisfied: sympy>=1.13.3 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (1.13.3)
Requirement already satisfied: networkx in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (3.5)
Requirement already satisfied: jinja2 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (3.1.6)
Requirement already satisfied: fsspec in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (2025.3.0)
Requirement already satisfied: nvidia-cuda-nvrtc-cu12==12.6.77 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (12.6.77)
Requirement already satisfied: nvidia-cuda-runtime-cu12==12.6.77 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (12.6.77)
Requirement already satisfied: nvidia-cuda-cupti-cu12==12.6.80 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (12.6.80)
Requirement already satisfied: nvidia-cudnn-cu12==9.10.2.21 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (9.10.2.21)
Requirement already satisfied: nvidia-cublas-cu12==12.6.4.1 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (12.6.4.1)
Requirement already satisfied: nvidia-cufft-cu12==11.3.0.4 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (11.3.0.4)
Requirement already satisfied: nvidia-curand-cu12==10.3.7.77 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (10.3.7.77)
Requirement already satisfied: nvidia-cusolver-cu12==11.7.1.2 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (11.7.1.2)
Requirement already satisfied: nvidia-cusparse-cu12==12.5.4.2 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (12.5.4.2)
Requirement already satisfied: nvidia-cusparselt-cu12==0.7.1 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (0.7.1)
Requirement already satisfied: nvidia-nccl-cu12==2.27.3 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (2.27.3)
Requirement already satisfied: nvidia-nvtx-cu12==12.6.77 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (12.6.77)
Requirement already satisfied: nvidia-nvjitlink-cu12==12.6.85 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (12.6.85)
Requirement already satisfied: nvidia-cufile-cu12==1.11.1.6 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (1.11.1.6)
Requirement already satisfied: triton==3.4.0 in /usr/local/lib/python3.12/dist-packages (from torch==2.8.0->fairseq2n==0.5.2->fairseq2) (3.4.0)
Requirement already satisfied: pycryptodomex>=3.8 in /usr/local/lib/python3.12/dist-packages (from blobfile~=3.0.0->fairseq2) (3.23.0)
Requirement already satisfied: urllib3<3,>=1.25.3 in /usr/local/lib/python3.12/dist-packages (from blobfile~=3.0.0->fairseq2) (2.5.0)
Requirement already satisfied: lxml>=4.9 in /usr/local/lib/python3.12/dist-packages (from blobfile~=3.0.0->fairseq2) (5.4.0)
Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.12/dist-packages (from huggingface_hub~=0.32->fairseq2) (6.0.2)
Requirement already satisfied: requests in /usr/local/lib/python3.12/dist-packages (from huggingface_hub~=0.32->fairseq2) (2.32.4)
Requirement already satisfied: hf-xet<2.0.0,>=1.1.3 in /usr/local/lib/python3.12/dist-packages (from huggingface_hub~=0.32->fairseq2) (1.1.10)
Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.12/dist-packages (from importlib_metadata~=7.0->fairseq2) (3.23.0)
Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.12/dist-packages (from rich~=13.7->fairseq2) (4.0.0)
Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/local/lib/python3.12/dist-packages (from rich~=13.7->fairseq2) (2.19.2)
Requirement already satisfied: ruamel.yaml.clib>=0.2.7 in /usr/local/lib/python3.12/dist-packages (from ruamel.yaml~=0.18->fairseq2) (0.2.14)
Requirement already satisfied: portalocker in /usr/local/lib/python3.12/dist-packages (from sacrebleu~=2.4->fairseq2) (3.2.0)
Requirement already satisfied: regex in /usr/local/lib/python3.12/dist-packages (from sacrebleu~=2.4->fairseq2) (2024.11.6)
Requirement already satisfied: tabulate>=0.8.9 in /usr/local/lib/python3.12/dist-packages (from sacrebleu~=2.4->fairseq2) (0.9.0)
Requirement already satisfied: colorama in /usr/local/lib/python3.12/dist-packages (from sacrebleu~=2.4->fairseq2) (0.4.6)
Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.12/dist-packages (from markdown-it-py>=2.2.0->rich~=13.7->fairseq2) (0.1.2)
Requirement already satisfied: charset_normalizer<4,>=2 in /usr/local/lib/python3.12/dist-packages (from requests->huggingface_hub~=0.32->fairseq2) (3.4.3)
Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.12/dist-packages (from requests->huggingface_hub~=0.32->fairseq2) (3.10)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.12/dist-packages (from requests->huggingface_hub~=0.32->fairseq2) (2025.8.3)
Requirement already satisfied: tcmlib==1.* in /usr/local/lib/python3.12/dist-packages (from tbb>=2021.8->fairseq2n==0.5.2->fairseq2) (1.4.0)
Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.12/dist-packages (from sympy>=1.13.3->torch==2.8.0->fairseq2n==0.5.2->fairseq2) (1.3.0)
Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.12/dist-packages (from jinja2->torch==2.8.0->fairseq2n==0.5.2->fairseq2) (3.0.2)
Requirement already satisfied: pydub in /usr/local/lib/python3.12/dist-packages (0.25.1)
Requirement already satisfied: sentencepiece in /usr/local/lib/python3.12/dist-packages (0.2.1)
Collecting git+https://github.com/facebookresearch/seamless_communication.git
  Cloning https://github.com/facebookresearch/seamless_communication.git to /tmp/pip-req-build-l4nwhuvy
  Running command git clone --filter=blob:none --quiet https://github.com/facebookresearch/seamless_communication.git /tmp/pip-req-build-l4nwhuvy
  Resolved https://github.com/facebookresearch/seamless_communication.git to commit 90e2b57ac4d82fa2bfaa25caeffe39ceb8b2ebec
  Running command git submodule update --init --recursive -q
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting datasets==2.18.0 (from seamless-communication==1.0.0)
  Using cached datasets-2.18.0-py3-none-any.whl.metadata (20 kB)
Collecting fairseq2==0.2.* (from seamless-communication==1.0.0)
  Using cached fairseq2-0.2.1-py3-none-any.whl.metadata (1.2 kB)
Collecting fire (from seamless-communication==1.0.0)
  Using cached fire-0.7.1-py3-none-any.whl.metadata (5.8 kB)
Requirement already satisfied: librosa in /usr/local/lib/python3.12/dist-packages (from seamless-communication==1.0.0) (0.11.0)
Collecting openai-whisper (from seamless-communication==1.0.0)
  Using cached openai_whisper-20250625.tar.gz (803 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting simuleval~=1.1.3 (from seamless-communication==1.0.0)
  Using cached simuleval-1.1.4-py3-none-any.whl.metadata (2.2 kB)
Collecting sonar-space==0.2.* (from seamless-communication==1.0.0)
  Using cached sonar_space-0.2.1-py3-none-any.whl.metadata (16 kB)
Requirement already satisfied: soundfile in /usr/local/lib/python3.12/dist-packages (from seamless-communication==1.0.0) (0.13.1)
Requirement already satisfied: scipy in /usr/local/lib/python3.12/dist-packages (from seamless-communication==1.0.0) (1.16.2)
Requirement already satisfied: torchaudio in /usr/local/lib/python3.12/dist-packages (from seamless-communication==1.0.0) (2.8.0+cu126)
Requirement already satisfied: tqdm in /usr/local/lib/python3.12/dist-packages (from seamless-communication==1.0.0) (4.67.1)
Requirement already satisfied: filelock in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (3.19.1)
Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (1.26.4)
Requirement already satisfied: pyarrow>=12.0.0 in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (18.1.0)
Collecting pyarrow-hotfix (from datasets==2.18.0->seamless-communication==1.0.0)
  Using cached pyarrow_hotfix-0.7-py3-none-any.whl.metadata (3.6 kB)
Requirement already satisfied: dill<0.3.9,>=0.3.0 in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (0.3.8)
Requirement already satisfied: pandas in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (2.2.2)
Requirement already satisfied: requests>=2.19.0 in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (2.32.4)
Requirement already satisfied: xxhash in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (3.5.0)
Requirement already satisfied: multiprocess in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (0.70.16)
Collecting fsspec<=2024.2.0,>=2023.1.0 (from fsspec[http]<=2024.2.0,>=2023.1.0->datasets==2.18.0->seamless-communication==1.0.0)
  Using cached fsspec-2024.2.0-py3-none-any.whl.metadata (6.8 kB)
Requirement already satisfied: aiohttp in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (3.12.15)
Requirement already satisfied: huggingface-hub>=0.19.4 in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (0.35.0)
Requirement already satisfied: packaging in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (24.2)
Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.12/dist-packages (from datasets==2.18.0->seamless-communication==1.0.0) (6.0.2)
INFO: pip is looking at multiple versions of fairseq2 to determine which version is compatible with other requirements. This could take a while.
Collecting fairseq2==0.2.* (from seamless-communication==1.0.0)
  Using cached fairseq2-0.2.0-py3-none-any.whl.metadata (1.2 kB)
ERROR: Cannot install seamless-communication because these package versions have conflicting dependencies.

The conflict is caused by:
    fairseq2 0.2.1 depends on fairseq2n==0.2.1
    fairseq2 0.2.0 depends on fairseq2n==0.2.0

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip to attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts
Image

hackyotter avatar Oct 03 '25 13:10 hackyotter