# Evaluating SeamlessStreaming and Seamless models SeamlessStreaming is the streaming only model and Seamless is the expressive streaming model. ## Quick start: Evaluation can be run with the `streaming_evaluate` CLI. We use the `seamless_streaming_unity` for loading the speech encoder and T2U models, and `seamless_streaming_monotonic_decoder` for loading the text decoder for streaming evaluation. This is already set as defaults for the `streaming_evaluate` CLI, but can be overridden using the `--unity-model-name` and `--monotonic-decoder-model-name` args if required. Note that the numbers in our paper use single precision floating point format (fp32) for evaluation by setting `--dtype fp32`. Also note that the results from running these evaluations might be slightly different from the results reported in our paper (which will be updated soon with the new results). ### S2TT: Set the task to `s2tt` for evaluating the speech-to-text translation part of the SeamlessStreaming model. ```bash streaming_evaluate --task s2tt --data-file --audio-root-dir --output --tgt-lang <3_letter_lang_code> ``` Note: The `--ref-field` can be used to specify the name of the reference column in the dataset. ### ASR: Set the task to `asr` for evaluating the automatic speech recognition part of the SeamlessStreaming model. Make sure to pass the source language as the `--tgt-lang` arg. ```bash streaming_evaluate --task asr --data-file --audio-root-dir --output --tgt-lang <3_letter_source_lang_code> ``` ### S2ST: #### SeamlessStreaming: Set the task to `s2st` for evaluating the speech-to-speech translation part of the SeamlessStreaming model. ```bash streaming_evaluate --task s2st --data-file --audio-root-dir --output --tgt-lang <3_letter_lang_code> ``` #### Seamless: The Seamless model is an unified model for streaming expressive speech-to-speech tranlsation. Use the `--expressive` arg for running evaluation of this unified model. ```bash streaming_evaluate --task s2st --data-file --audio-root-dir --output --tgt-lang <3_letter_lang_code> --expressive ``` The Seamless model uses `vocoder_pretssel` which is a 24KHz version (`vocoder_pretssel`) by default. In the current version of our paper, we use 16KHz version (`vocoder_pretssel_16khz`) for the evaluation , so in order to reproduce those results please add this arg to the above command: `--vocoder-name vocoder_pretssel_16khz`. `vocoder_pretssel` or `vocoder_pretssel_16khz` checkpoints are gated, please check out [this section](/README.md#seamlessexpressive-models) to acquire these checkpoints. Also, make sure to add `--gated-model-dir `