O Metavoice-1b é um modelo de base de parâmetros de 1,2b treinado em 100 mil horas de fala para TTS (texto em fala). Foi construído com as seguintes prioridades:
Estamos lançando o metavoice-1b sob a licença Apache 2.0, ela pode ser usada sem restrições .
UI da web
docker-compose up -d ui && docker-compose ps && docker-compose logs -fServidor
# navigate to <URL>/docs for API definitions
docker-compose up -d server && docker-compose ps && docker-compose logs -fPré-requisitos:
Configuração do ambiente
# install ffmpeg
wget https://johnvansickle.com/ffmpeg/builds/ffmpeg-git-amd64-static.tar.xz
wget https://johnvansickle.com/ffmpeg/builds/ffmpeg-git-amd64-static.tar.xz.md5
md5sum -c ffmpeg-git-amd64-static.tar.xz.md5
tar xvf ffmpeg-git-amd64-static.tar.xz
sudo mv ffmpeg-git- * -static/ffprobe ffmpeg-git- * -static/ffmpeg /usr/local/bin/
rm -rf ffmpeg-git- *
# install rust if not installed (ensure you've restarted your terminal after installation)
curl --proto ' =https ' --tlsv1.2 -sSf https://sh.rustup.rs | sh # install poetry if not installed (ensure you've restarted your terminal after installation)
pipx install poetry
# disable any conda envs that might interfere with poetry's venv
conda deactivate
# if running from Linux, keyring backend can hang on `poetry install`. This prevents that.
export PYTHON_KEYRING_BACKEND=keyring.backends.fail.Keyring
# pip's dependency resolver will complain, this is temporary expected behaviour
# full inference & finetuning functionality will still be available
poetry install && poetry run pip install torch==2.2.1 torchaudio==2.2.1 Nota 1: Ao levantar problemas, pediremos que você tente primeiro com a poesia. Nota 2: Todos os comandos nesta leitura usam poetry por padrão, para que você possa remover qualquer poetry run .
pip install -r requirements.txt
pip install torch==2.2.1 torchaudio==2.2.1
pip install -e . # You can use `--quantisation_mode int4` or `--quantisation_mode int8` for experimental faster inference. This will degrade the quality of the audio.
# Note: int8 is slower than bf16/fp16 for undebugged reasons. If you want fast, try int4 which is roughly 2x faster than bf16/fp16.
poetry run python -i fam/llm/fast_inference.py
# Run e.g. of API usage within the interactive python session
tts.synthesise(text= " This is a demo of text to speech by MetaVoice-1B, an open-source foundational audio model. " , spk_ref_path= " assets/bria.mp3 " )NOTA: O script leva 30-90s para inicializar (dependendo do hardware). Isso ocorre porque nós tocamos.Compile o modelo para inferência rápida.
Em GPUs de arquitetura de ampere, Ada-Lovelace e Hopper, uma vez compiladas, a API Synthesise () funciona mais rápido que em tempo real, com um fator em tempo real (RTF) <1,0.
# You can use `--quantisation_mode int4` or `--quantisation_mode int8` for experimental faster inference. This will degrade the quality of the audio.
# Note: int8 is slower than bf16/fp16 for undebugged reasons. If you want fast, try int4 which is roughly 2x faster than bf16/fp16.
# navigate to <URL>/docs for API definitions
poetry run python serving.py
poetry run python app.pyApoiamos o Finetuning o primeiro estágio LLM (consulte a seção de arquitetura).
Para Finetune, esperamos um conjunto de dados CSV "|" |
audio_files|captions
./data/audio.wav|./data/caption.txt
Observe que não executamos nenhuma verificação sobre sobreposição do conjunto de dados, portanto, verifique se os conjuntos de dados de trem e Val estão desconexos.
Experimente usando nossos conjuntos de dados de amostra via:
poetry run finetune --train ./datasets/sample_dataset.csv --val ./datasets/sample_val_dataset.csvDepois de treinar seu modelo, você pode usá -lo para inferência via:
poetry run python -i fam/llm/fast_inference.py --first_stage_path ./my-finetuned_model.ptPara definir hiperparâmetros como a taxa de aprendizado, o que congelar, etc., você pode editar o arquivo Finetune_params.py.
Temos uma integração leve e opcional com a W&B que pode ser ativada através da configuração wandb_log = True e instalando as dependências apropriadas.
poetry install -E observablePrevemos os tokens do Codec do texto e informações sobre o alto -falante. Isso é difundido até o nível da forma de onda, com o pós-processamento aplicado para limpar o áudio.
O modelo suporta:
Somos gratos juntos. Agradecemos às equipes da AWS, GCP e Hugging Face pelo apoio às suas plataformas em nuvem.
Desculpas antecipadamente, se perdemos alguém. Por favor, informe -nos se tivermos.