Metavoice-1B هو نموذج قاعدة المعلمات 1.2B المدربين على 100 ألف ساعة من الكلام لـ TTS (نص إلى كلام). لقد تم بناؤه مع الأولويات التالية:
سنطلق سراح Metavoice-1B بموجب ترخيص Apache 2.0 ، يمكن استخدامه دون قيود .
ويب واجهة المستخدم
docker-compose up -d ui && docker-compose ps && docker-compose logs -fالخادم
# navigate to <URL>/docs for API definitions
docker-compose up -d server && docker-compose ps && docker-compose logs -fالمتطلبات المسبقة:
إعداد البيئة
# 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 الملاحظة 1: عند إثارة المشكلات ، سنطلب منك تجربتك بالشعر أولاً. ملاحظة 2: جميع الأوامر في هذا ReadMe استخدم poetry افتراضيًا ، بحيث يمكنك فقط إزالة أي 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 " )ملاحظة: يستغرق البرنامج النصي 30-90s لبدء التشغيل (اعتمادًا على الأجهزة). وذلك لأننا نحرف.
على Ampere و Ada-Lovelace و Hopper Architecture GPU ، بمجرد تجميعها ، تعمل API Synthesise () بشكل أسرع من الوقت الفعلي ، مع عامل في الوقت الفعلي (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.pyنحن ندعم Finetuning في المرحلة الأولى LLM (انظر قسم الهندسة المعمارية).
من أجل Finetune ، نتوقع "|"-مجموعة بيانات CSV من التنسيق التالي:
audio_files|captions
./data/audio.wav|./data/caption.txt
لاحظ أننا لا نقوم بأي اختبارات تداخل مجموعة بيانات ، لذا تأكد من أن مجموعات بيانات القطار والقطار و VAL مفككة.
جربه باستخدام مجموعات بيانات العينات الخاصة بنا عبر:
poetry run finetune --train ./datasets/sample_dataset.csv --val ./datasets/sample_val_dataset.csvبمجرد تدريب النموذج الخاص بك ، يمكنك استخدامه للاستدلال عبر:
poetry run python -i fam/llm/fast_inference.py --first_stage_path ./my-finetuned_model.ptمن أجل ضبط أجهزة التمييز الفائقة مثل معدل التعلم ، وما الذي يجب تجميده ، وما إلى ذلك ، يمكنك تحرير ملف Finetune_Params.py.
لدينا تكامل الضوء والاختياري مع W&B يمكن تمكينه من خلال إعداد wandb_log = True ومن خلال تثبيت التبعيات المناسبة.
poetry install -E observableنتوقع أن تكون رموز Encodec من النص ومعلومات السماعة. ثم يتم نشر هذا حتى مستوى الشكل الموجي ، مع تطبيق ما بعد المعالجة لتنظيف الصوت.
يدعم النموذج:
نحن ممتنون معًا. نشكر فرق AWS و GCP و Hugging Face على الدعم مع منصاتها السحابية.
الاعتذار مقدمًا إذا فاتنا أي شخص. يرجى إعلامنا إذا كان لدينا.