Seamless adalah keluarga model AI yang memungkinkan komunikasi yang lebih alami dan otentik lintas bahasa. SeamlessM4T adalah model terjemahan mesin multimodal multibahasa multibahasa yang sangat besar yang mendukung sekitar 100 bahasa. SeamlessM4T berfungsi sebagai fondasi untuk SeamlessExpressive, sebuah model yang menjaga elemen -elemen gaya prosodi dan suara di seluruh bahasa dan streamlessstreaming, sebuah model yang mendukung terjemahan simultan dan streaming ASR untuk sekitar 100 bahasa. SeamlessExpressive dan Seamlessstreaming digabungkan menjadi mulus, model terpadu yang menampilkan terjemahan multibahasa, real-time dan ekspresif.
Seamlessm4t v2 | SeamlessExpressive | Seamlessstreaming | |
---|---|---|---|
Demo | Demo V2 SeamlessM4T | Demo ekspresif Seamless Expressive | |
Demo Space Huggingface | ? Space V2 SeamlessM4T | ? Ruang ekspresif Seamless | ? Ruang streaming -leam |
Mulus
Emma
SONAR
AI di blog meta
Tutorial lengkap yang diberikan di Neurips 2023 - Seamless Expo, yang merupakan toko serba ada untuk mempelajari cara menggunakan seluruh rangkaian model mulus. Silakan bermain dengan buku catatan.
Seamlessm4t adalah all-in-one foundasional kami secara ungkapkan M dan Model ranslasi yang menyampaikan terjemahan berkualitas tinggi untuk ucapan dan teks dalam hampir 100 bahasa.
Model SeamlessM4T mendukung tugas:
? Kami merilis SeamlessM4T V2, versi yang diperbarui dengan arsitektur Unity2 novel kami. Model baru ini meningkat lebih dari SeamlessM4T V1 dalam kualitas serta latensi inferensi dalam tugas pembuatan bicara.
Untuk mempelajari lebih lanjut tentang koleksi model SeamlessM4T, pendekatan yang digunakan di masing -masing, liputan bahasa mereka dan kinerja mereka, kunjungi ReadMe SeamlessM4T atau? Kartu model.
Catatan
M4T yang mulus juga tersedia di? Perpustakaan Transformers. Kunjungi bagian ini untuk lebih jelasnya.
SeamlessExpressive adalah model terjemahan pidato-ke-pidato yang menangkap aspek-aspek prosodi yang kurang dieksplorasi seperti laju bicara dan jeda, sambil menjaga gaya suara seseorang dan kualitas terjemahan konten tinggi.
Untuk mempelajari lebih lanjut tentang model ekspresif Seamless, kunjungi readme ekspresif yang mulus atau? Kartu model
Seamlessstreaming adalah model terjemahan streaming. Model ini mendukung ucapan sebagai modalitas input dan ucapan/teks sebagai modalitas output.
Model Seamlessstreaming mendukung tugas -tugas berikut:
Untuk mempelajari lebih lanjut tentang model streamlessstreaming, kunjungi readme yang sangat mudah atau? Kartu model
Model mulus adalah model terpadu untuk terjemahan ucapan-ke-speech ekspresif.
Catatan
Salah satu prasyarat adalah Fairseq2 yang memiliki paket pra-built yang tersedia hanya untuk Linux x86-64 dan komputer Mac Apple-Silicon. Selain itu memiliki ketergantungan pada libsndfile yang mungkin tidak diinstal pada mesin Anda. Jika Anda mengalami masalah instalasi apa pun, silakan merujuk ke ReadMe untuk instruksi lebih lanjut.
pip install .
Catatan
Transcribing Inference Audio untuk Komputasi Metrik Penggunaan Whisper, yang secara otomatis diinstal. Whisper pada gilirannya mensyaratkan alat baris perintah ffmpeg
untuk diinstal pada sistem Anda, yang tersedia dari sebagian besar manajer paket.
Berikut adalah contoh menggunakan CLI dari direktori root untuk menjalankan inferensi.
Tugas S2:
m4t_predict < path_to_input_audio > --task s2st --tgt_lang < tgt_lang > --output_path < path_to_save_audio >
Tugas T2TT:
m4t_predict < input_text > --task t2tt --tgt_lang < tgt_lang > --src_lang < src_lang >
Silakan merujuk ke Inference Readme untuk instruksi terperinci tentang cara menjalankan inferensi dan daftar bahasa yang didukung pada sumber, sisi target untuk bicara, modalitas teks.
Untuk menjalankan S2TT/ASR secara asli (tanpa Python) menggunakan GGML, silakan merujuk ke bagian Unity.cpp.
Catatan
Silakan periksa bagian tentang cara mengunduh model.
Berikut adalah contoh menggunakan CLI dari direktori root untuk menjalankan inferensi.
expressivity_predict < path_to_input_audio > --tgt_lang < tgt_lang > --model_name seamless_expressivity --vocoder_name vocoder_pretssel --output_path < path_to_save_audio >
Evaluasi streaming ReadME memiliki instruksi terperinci untuk menjalankan evaluasi untuk model yang lancar dan mulus. CLI memiliki opsi --no-scoring
yang dapat digunakan untuk melewatkan bagian penilaian dan hanya menjalankan inferensi.
Silakan periksa readme inferensi untuk detail lebih lanjut.
Anda dapat menduplikasi ruang HF seamlessstreaming untuk menjalankan demo streaming.
Anda juga dapat menjalankan demo secara lokal, dengan mengkloning ruang dari sini. Lihat Readme dari Repo HF Seamlessstreaming untuk detail lebih lanjut tentang instalasi.
Untuk meluncurkan ruang demo yang sama yang kami host di Face Hugging secara lokal:
cd demo
pip install -r requirements.txt
python app.py
Nama model | #params | pos pemeriksaan | metrik |
---|---|---|---|
Seamlessm4t-Large v2 | 2.3b | ? Kartu Model - Pos Pemeriksaan | metrik |
Seamlessm4t-Large (V1) | 2.3b | ? Kartu Model - Pos Pemeriksaan | metrik |
SeamlessM4t-Medium (V1) | 1.2b | ? Kartu Model - Pos Pemeriksaan | metrik |
? Kartu model
Untuk mengakses dan mengunduh SeamlessExpression, silakan minta model artefak melalui formulir permintaan ini. Setelah disetujui, Anda kemudian akan menerima email dengan tautan unduhan ke setiap artefak model.
Harap dicatat bahwa SeamlessExpression tersedia di bawah lisensi sendiri dan kebijakan penggunaan yang dapat diterima.
Nama model | #params | pos pemeriksaan | metrik |
---|---|---|---|
Seamlessstreaming | 2.5b | ? Kartu Model - Pemeriksaan Monotonik Decoder - Streaming Unity2 Checkpoint | metrik |
Model yang mulus hanyalah model yang sangat halus dengan vocoder_v2
yang tidak ekspresif bertukar dengan vocoder_pretssel
yang ekspresif. Silakan periksa bagian di atas tentang cara memperoleh pos pemeriksaan vocoder_pretssel
.
Nama model | #params | pos pemeriksaan |
---|---|---|
W2V-Bert 2.0 | 600m | ? Kartu Model - Pos Pemeriksaan |
Begini cara Anda harus melakukan foward melewati enkoder pidato:
import torch
from fairseq2 . data . audio import AudioDecoder , WaveformToFbankConverter
from fairseq2 . memory import MemoryBlock
from fairseq2 . nn . padding import get_seqs_and_padding_mask
from fairseq2 . data import Collater
from pathlib import Path
from seamless_communication . models . conformer_shaw import load_conformer_shaw_model
audio_wav_path , device , dtype = ...
audio_decoder = AudioDecoder ( dtype = torch . float32 , device = device )
fbank_converter = WaveformToFbankConverter (
num_mel_bins = 80 ,
waveform_scale = 2 ** 15 ,
channel_last = True ,
standardize = True ,
device = device ,
dtype = dtype ,
)
collater = Collater ( pad_value = 1 )
model = load_conformer_shaw_model ( "conformer_shaw" , device = device , dtype = dtype )
model . eval ()
with Path ( audio_wav_path ). open ( "rb" ) as fb :
block = MemoryBlock ( fb . read ())
decoded_audio = audio_decoder ( block )
src = collater ( fbank_converter ( decoded_audio ))[ "fbank" ]
seqs , padding_mask = get_seqs_and_padding_mask ( src )
with torch . inference_mode ():
seqs , padding_mask = model . encoder_frontend ( seqs , padding_mask )
seqs , padding_mask = model . encoder ( seqs , padding_mask )
Untuk mereproduksi hasil kami, atau untuk mengevaluasi penggunaan metrik yang sama dengan set tes Anda sendiri, silakan periksa readme di sini.
Di bawah ini adalah skrip untuk evaluasi batch yang efisien.
export MODEL_DIR= " /path/to/SeamlessExpressive/model "
export TEST_SET_TSV= " input.tsv " # Your dataset in a TSV file, with headers "id", "audio"
export TGT_LANG= " spa " # Target language to translate into, options including "fra", "deu", "eng" ("cmn" and "ita" are experimental)
export OUTPUT_DIR= " tmp/ " # Output directory for generated text/unit/waveform
export TGT_TEXT_COL= " tgt_text " # The column in your ${TEST_SET_TSV} for reference target text to calcuate BLEU score. You can skip this argument.
export DFACTOR= " 1.0 " # Duration factor for model inference to tune predicted duration (preddur=DFACTOR*preddur) per each position which affects output speech rate. Greater value means slower speech rate (default to 1.0). See expressive evaluation README for details on duration factor we used.
expressivity_evaluate ${TEST_SET_TSV}
--gated-model-dir ${MODEL_DIR} --task s2st --tgt_lang ${TGT_LANG}
--audio_root_dir " " --output_path ${OUTPUT_DIR} --ref_field ${TGT_TEXT_COL}
--model_name seamless_expressivity --vocoder_name vocoder_pretssel
--text_unk_blocking True --duration_factor ${DFACTOR}
Silakan periksa bagian ReadMe ini
Evaluasi streaming ReadME memiliki instruksi terperinci untuk menjalankan evaluasi pada model yang lancar dan mulus.
Untuk mengaktifkan komunikasi yang mulus di mana -mana, kami menerapkan Unity.cpp sehingga pengguna dapat menjalankan model SeamlessM4T di GGML - perpustakaan tensor C yang memungkinkan integrasi yang lebih mudah pada platform verbose.
Untuk menyalin/menerjemahkan audio yang diberikan,
./ggml/bin/unity --model seamlessM4T_medium.ggml input.wav
Untuk detail build dan lebih banyak penggunaan, silakan periksa Unity.cpp
Kami menciptakan dua dataset terjemahan ucapan-ke-ucapan-ucapan, mexpresso dan mdral, antara bahasa Inggris dan lima bahasa lainnya-bahasa Prancis, Jerman, Italia, Mandarin dan Spanyol. Kami saat ini membuka sumber-ke-teks MEXPRESSO untuk arah yang tidak terlalu bahasa Inggris, dan kami akan segera membuka bagian yang tersisa dari dataset. Untuk detailnya, silakan lihat ReadMe
Kami memperkenalkan prosedur penyelarasan pidato ekspresif pertama. Dimulai dengan data mentah, prosedur penyelarasan ekspresif secara otomatis menemukan pasangan segmen audio yang berbagi tidak hanya makna yang sama, tetapi ekspresivitas keseluruhan yang sama. Untuk menampilkan prosedur ini, kami membuat metadata tersedia untuk membuat dataset benchmarking yang disebut SeamlessAlignExpression, yang dapat digunakan untuk memvalidasi kualitas metode perataan kami. SeamlessAnlignExpression adalah koleksi perataan audio multibahasa skala besar (11k+ jam) pertama untuk terjemahan ekspresif. Rincian lebih lanjut dapat ditemukan di readme yang mulus.
Silakan periksa readme di sini. Perhatikan bahwa model V1 SeamlessM4T menggunakan unit yang dikurangi dan model lain menggunakan unit yang tidak direduksi.
Komunikasi yang mulus tergantung pada 4 perpustakaan yang dikembangkan oleh Meta.
Fairseq2 adalah perpustakaan open-source generasi berikutnya dari komponen pemodelan urutan yang memberi para peneliti dan pengembang blok bangunan untuk terjemahan mesin, pemodelan bahasa, dan tugas pembuatan urutan lainnya. Semua model SeamlessM4T dalam repositori ini ditenagai oleh Fairseq2.
Sonar, representasi multimodal-level-level dan bahasa agnostik adalah ruang embedding kalimat multibahasa dan kalimat baru yang mengungguli embeddings kalimat yang ada seperti laser3 dan labse pada tugas pencarian kesamaan XSIM dan XSIM ++ multibahasa. Sonar menyediakan encoder teks dan ucapan untuk banyak bahasa. Seamlessalign ditambang berdasarkan embeddings sonar.
Blaser 2.0 adalah metrik evaluasi berbasis model terbaru kami untuk terjemahan multimodal. Ini adalah perpanjangan dari blaser, mendukung ucapan dan teks. Ini beroperasi langsung pada sinyal sumber, dan dengan demikian, tidak memerlukan sistem ASR menengah seperti ASR-BEU. Seperti pada versi pertama, Blaser 2.0 memanfaatkan kesamaan antara input dan output kalimat embeddings. Sonar adalah ruang embedding yang mendasarinya untuk Blaser 2.0. Skrip untuk menjalankan evaluasi dengan Blaser 2.0 dapat ditemukan di Sonar Repo.
Sebagai bagian dari proyek komunikasi yang mulus, kami telah memperluas perpustakaan Stopes. Versi 1 menyediakan alat penambangan teks-ke-teks untuk membangun dataset pelatihan untuk model terjemahan. Versi 2 telah diperpanjang berkat Sonar, untuk mendukung tugas -tugas seputar melatih model terjemahan pidato besar. Secara khusus, kami menyediakan alat untuk membaca/menulis set data audiozip fairseq dan pipa penambangan baru yang dapat melakukan penambangan ucapan-ke-speech, teks-ke-speech, ucapan-ke-teks dan teks-ke-teks, semuanya berdasarkan pada semua berdasarkan ruang embedding sonar yang baru.
Simuleval adalah perpustakaan yang digunakan untuk mengevaluasi model terjemahan simulan. Simuleval juga menyediakan backend untuk generasi menggunakan input parsial/tambahan dengan keadaan fleksibel/diperluas, yang digunakan untuk mengimplementasikan inferensi streaming. Pengguna mendefinisikan agen yang menerapkan antarmuka Simuleval, yang dapat dihubungkan bersama dalam pipa. Anda dapat menemukan agen yang diimplementasikan untuk streamlessstreaming di sini.
Silakan periksa readme di sini.
Terlepas dari model mulus-M4T besar (2.3b) dan menengah (1.2b), kami juga merilis model kecil (281m) yang ditargetkan untuk inferensi on-perangkat. Untuk mempelajari lebih lanjut tentang detail penggunaan dan model, periksa readme di sini.
Kami open-source metadata ke SeamlessAlign, dataset terbuka terbesar untuk terjemahan multimodal, dengan total 270k+ jam data pidato dan teks yang selaras. Dataset dapat dibangun kembali oleh komunitas berdasarkan ReadMe Seamlessalign.
Jika Anda menggunakan mulus dalam karya Anda atau model/kumpulan data/artefak yang diterbitkan secara mulus, silakan kutip:
@inproceedings { seamless2023 ,
title = " Seamless: Multilingual Expressive and Streaming Speech Translation " ,
author="{Seamless Communication}, Lo{"i}c Barrault, Yu-An Chung, Mariano Coria Meglioli, David Dale, Ning Dong, Mark Duppenthaler, Paul-Ambroise Duquenne, Brian Ellis, Hady Elsahar, Justin Haaheim, John Hoffman, Min-Jae Hwang, Hirofumi Inaguma, Christopher Klaiber, Ilia Kulikov, Pengwei Li, Daniel Licht, Jean Maillard, Ruslan Mavlyutov, Alice Rakotoarison, Kaushik Ram Sadagopan, Abinesh Ramakrishnan, Tuan Tran, Guillaume Wenzek, Yilin Yang, Ethan Ye, Ivan Evtimov, Pierre Fernandez, Cynthia Gao, Prangthip Hansanti, Elahe Kalbassi, Amanda Kallet, Artyom Kozhevnikov, Gabriel Mejia, Robin San Roman, Christophe Touret, Corinne Wong, Carleigh Wood, Bokai Yu, Pierre Andrews, Can Balioglu, Peng-Jen Chen, Marta R. Costa-juss{`a}, Maha Elbayad, Hongyu Gong, Francisco Guzm{'a}n, Kevin Heffernan, Somya Jain, Justine Kao, Ann Lee, Xutai Ma, Alex Mourachko, Benjamin Peloquin, Juan Pino, Sravya Popuri, Christophe Ropers, Safiyyah Saleem, Holger Schwenk, Anna Sun, Paden Tomasello, Changhan Wang, Jeff Wang, Skyler Wang, Mary Williamson",
journal = { ArXiv } ,
year = { 2023 }
}
Kami memiliki tiga kategori lisensi.
Komponen non-generatif berikut dilisensikan MIT seperti yang ditemukan di MIT_LICENSE:
Model-model berikut adalah CC-by-NC 4.0 berlisensi seperti yang ditemukan dalam lisensi:
Model -model berikut dilisensikan mulus seperti yang ditemukan di Seamless_license: