Bir sesi 48 kHz’de klonlamak
VoxCPM2 ile.
Soniqo’ya az önce yeni bir TTS modeli düştü. Dizüstünde çalışır, stüdyo kalitesinde 48 kHz ses üretir ve tek bir kısa klipten bir sesi klonlar. Bu yazı, onunla ne kurabileceğinizi, bir sesi klonlamanın üç yolunu ve modelin içeride nasıl çalıştığına dostça bir bakışı gezer.
Klonlama yerelde çalışınca değişen dört şey.
Klonlamayı cihazda çalıştırmak dört özelliği birden açar — gizlilik, çevrimdışı kullanım, çağrı başına sıfır maliyet ve sesin tam sahipliği. Her biri başka türlü kurulması zahmetli bir ürün sınıfını açar.
Bir ebeveynin okuduğu 30 saniyeyi kaydedin. Sesli kitap uygulaması ardından her bölümü onun sesiyle anlatır — aynı sıcaklık, aynı aksan, her oturumda yerel üretilir.
YouTuber’lar ve podcaster’lar 30 dilde tutarlı tek bir ses tutar. İngilizce bir kez kaydedin, aynı bölümü Japonca, İspanyolca ve Hintçe olarak bir seslendirme kadrosu olmadan yayınlayın.
Ses kaybıyla karşılaşanlar seslerini kısa bir klipte bankalayıp, genel bir TTS motoru gibi değil kendileri gibi duyulan yardımcı teknolojiyle konuşmaya devam edebilir.
İstediğiniz sesi tarif edin — "genç kadın, yumuşak ve sıcak ses" — model onu referans kaydı olmadan tasarlar. Oyun NPC’leri, kiosk uyarıları ya da marka seslerinin A/B testi için yararlı.
VoxCPM2, ElevenLabs’e kıyasla nasıl.
ElevenLabs bariz bulut-API alternatifi. Ödünleşme neyin nerede çalıştığı — ve sonrasında sesin kime ait olduğu.
Gizlilik garantileri, çevrimdışı çalışma ya da çağrı başına sıfır maliyet isteyen ürünler için cihazda klonlama tek seçenektir — her ElevenLabs çağrısı sesi onların sunucularına yükler.
| VoxCPM2 (Soniqo) | ElevenLabs | |
|---|---|---|
| Nerede çalışır | Kullanıcının cihazında | Barındırılan API |
| Ses cihazdan çıkıyor mu | Hayır | Evet (ElevenLabs’e yüklenir) |
| Çevrimdışı kullanım | Evet | Hayır (internet gerekir) |
| Çağrı başına maliyet | Yok | Karakter başına faturalama |
| Model lisansı | Apache 2.0, açık ağırlıklar | Özel, yalnızca SaaS |
| Maks. çıkış örnekleme oranı | 48 kHz doğal | 48 kHz (Pro katman ve üzeri) |
| Diller | 30 | 29 (Multilingual v2) · 70+ (Eleven v3) |
| Gereken referans klip | 5–30 s | 1 dk (Instant) · 30 dk (Professional) |
| Metinden ses tasarımı | Evet | Evet |
İki motor da 48 kHz’e ulaşır; ikisi de günlük klonlama için benzer bir dil yelpazesini destekler; ikisi de metin açıklamasından ses tasarımı sunar. Gerçek fark, sesin cihazı hiç terk edip etmediğidir.
Tek model, üç giriş.
Model her çağrıda aynıdır. Değişen, hangi argümanları geçtiğinizdir — bu, bir sesi açıklamadan mı tasarladığınızı, kayıtlı bir sesi mi kopyaladığınızı yoksa bir aksanı mı koruduğunuzu belirler.
Sesi doğal dille tarif edin. Model uyan bir ses seçer ve çağrılar boyunca tutarlı kalır.
let audio = try await tts.generateVoxCPM2(
text: "Welcome to the show.",
instruct: "A young woman, gentle and warm voice."
)Temiz konuşmadan 5–30 sn geçirin. Model tını ve ritmi kopyalar ve o sesle yeni metni sentezler.
let ref = try AudioFileLoader.load(
url: URL(fileURLWithPath: "speaker.wav"),
targetSampleRate: 16000
)
let audio = try await tts.generateVoxCPM2(
text: "This is a cloned voice.",
refAudio: ref
)Klibi VE dökümünü geçirin. Model artık akustik özellikleri fonemlerle hizalayabilir — aksan ve ünlü seçimleri aktarılır.
let audio = try await tts.generateVoxCPM2(
text: "Hello from the cloned voice.",
refAudio: ref,
promptText: "this is what the reference clip actually said",
promptAudio: ref
)Aynı girdi yuvası, farklı parçalarla doldurulur. Model asla bir bayrak görmez — diziyi okur.
VoxCPM2 sesi nasıl üretir.
İşbirliği yapan dört modül. Modeli kullanmak için bunların hiçbirini bilmeniz gerekmez, ama 48 kHz’in nereden geldiğini merak ediyorsanız — işte burada.
Pipeline, metin tokenlerini ve (isteğe bağlı) referans sesini tek bir vektör akışında kaynaştıran bir yerel kodlayıcı (LocEnc) ile başlar. O akış TSLM’i besler — bir sonraki ses "yamasının" ne olacağına, bir metin LM’inin bir sonraki tokeni seçtiği gibi karar veren 28 katmanlı bir MiniCPM-4 dil modeli. RALM üzerinden ikinci bir geçiş her yamayı inceltir.
Buraya kadar her şey bir transformer. İlginç kıvrım LocDiT: ayrık ses tokenlerinden oluşan sabit bir sözlükten seçmek yerine, her yuvada ses gizilini "boyamak" için küçük bir difüzyon süreci çalıştırır. Ayrık codec yokluğu, nicemleme darboğazı yokluğu demektir — bu da son aşama olan AudioVAE V2’nin doğrudan 48 kHz’e çözmesini sağlar. Bu yığındaki diğer her cihaz üstü motor 24 kHz’de tavan yapar.
Bu ayrım kayda değer: özbağlanımlı LM, sırada ne gelmesi gerektiğine (içerik, ritim, uzunluk) karar vermede harikadır; difüzyon başı akustik ayrıntıyı (faz, spektrum) boyamada harikadır. VoxCPM2 her birine iyi olduğu işi yaptırır. Model yalnızca 2B parametreyle bu yüzden ayakta kalır — algısal kaliteyi boyut değil mimari kazanır.
Özgün araştırmayı okuyun.
Üç boyut. Disk bütçenize göre seçin.
Üç paket de aynı mimariyi çalıştırır; yalnızca dil modelinin ne kadar agresif nicemlendiğinde farklılaşır. int8 paketi önerilen varsayılandır — 8 cümlelik gidiş-dönüş karşılaştırmasında üst kaynak Python pipeline’ıyla eşleşir, üstelik bf16’dan daha hızlı ve %40 daha küçüktür.
| Paket | Boyut | En uygunu |
|---|---|---|
| bf16 | ~5.0 GB | Referans / hata ayıklama. |
| int8 varsayılan | ~3.0 GB | Günlük klonlama, sesli kitaplar, podcast’ler. |
| int4 | ~1.9 GB | Disk kısıtlı dağıtımlar. |
CLI’den.
# Voice design — no reference clip
speech speak "Welcome to the show." \
--engine voxcpm2 \
--voxcpm2-instruct "A young woman, gentle and warm voice." \
--output design.wav
# Reference cloning — 5–30 s clean clip
speech speak "This is a cloned voice." \
--engine voxcpm2 \
--voxcpm2-variant int8 \
--voice-sample speaker.wav \
--output clone.wavOkumaya devam.
Her CLI bayrağı, her üretim modu, sorumlu kullanım notları.
Motorlar arası karşılaştırma: VoxCPM2, CosyVoice3, Qwen3-TTS ICL.
Apple Silicon’a Soniqo’yu kurun ve ilk sentezinizi çalıştırın.
Cihaz üstü konuşmayla ilgili daha fazla yazı yayınlandıkça.
