--- title: Seamless Streaming emoji: 📞 colorFrom: blue colorTo: yellow sdk: docker pinned: false suggested_hardware: t4-medium --- # Seamless Streaming demo ## Running on HF spaces You can simply duplicate the space to run it. Make sure to unset the environment variable `LOCK_SERVER_COMPLETELY`. ## Running locally ### Install backend seamless_server dependencies > [!NOTE] > Please note: we *do not* recommend running the model on CPU. CPU inference will be slow and introduce noticable delays in the simultaneous translation. > [!NOTE] > The example below is for PyTorch stable (2.1.1) and variant cu118. > Check [here](https://pytorch.org/get-started/locally/) to find the torch/torchaudio command for your variant. > Check [here](https://github.com/facebookresearch/fairseq2#variants) to find the fairseq2 command for your variant. If running for the first time, create conda environment and install the desired torch version. Then install the rest of the requirements: ``` cd seamless_server conda create --yes --name smlss_server python=3.8 libsndfile==1.0.31 conda activate smlss_server conda install --yes pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia pip install fairseq2 --pre --extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/nightly/pt2.1.1/cu118 pip install -r requirements.txt ``` ### Install frontend streaming-react-app dependencies ``` conda install -c conda-forge nodejs cd streaming-react-app npm install --global yarn yarn yarn build # this will create the dist/ folder ``` ### Running the server The server can be run locally with uvicorn below. Run the server in dev mode: ``` cd seamless_server uvicorn app_pubsub:app --reload --host localhost ``` Run the server in prod mode: ``` cd seamless_server uvicorn app_pubsub:app --host 0.0.0.0 ``` To enable additional logging from uvicorn pass `--log-level debug` or `--log-level trace`. ### Debuging If you enable "Server Debug Flag" when starting streaming from the client, this enables extensive debug logging and it saves audio files in /debug folder.