LLaMA-Omni - LLM ile sorunsuz sesli etkileşim
(github.com/ictnlp)- LLaMA-Omni, Llama-3.1-8B-Instruct tabanlı bir ses-dil modelidir; sesli komutları girdi olarak alıp metin ve ses yanıtlarını aynı anda üretir
- Temel hedefi düşük gecikmeli, yüksek kaliteli sesli etkileşimdir; README’ye göre gecikme süresi en düşük 226 ms’ye kadar inebilir
- Model yalnızca 4 GPU ile 3 günden kısa sürede eğitildi ve
Llama-3.1-8B-Omni,Whisper-large-v3, unit-based HiFi-GAN vocoder kullanılarak çalıştırılır - Gradio demosu controller, web server ve model worker’ın ayrı ayrı çalıştırıldığı bir yapıya sahiptir; Gradio’nun streaming audio oynatımındaki kararsızlık nedeniyle otomatik oynatma etkinleştirilmemiştir
- Kod Apache-2.0 lisanslıdır, ancak model yalnızca akademik araştırma amaçlıdır; ticari kullanım yasaktır ve ayrı bir ticari lisans için iletişime geçilmesi gerekir
LLaMA-Omni ne yapar
- LLaMA-Omni, Llama-3.1-8B-Instruct tabanlı bir ses-dil modelidir
- Sesli komutları girdi olarak alır ve metin yanıtı ile ses yanıtını aynı anda üretir
- Düşük gecikmeli sesli etkileşimi ve yüksek kaliteli yanıtları hedefler; README’deki öne çıkan bilgilere göre gecikme süresi en düşük 226 ms’dir
- İlgili makale arXiv:2409.06666 üzerinde yayımlanmıştır
Yayımlanan modeller ve veri kümesi
- Model Hugging Face, ModelScope, Wisemodel ve Replicate üzerinde yayımlanmıştır
- Veri kümesi Multiturn-Speech-Conversations olarak yayımlanmıştır
- Mayıs 2025 güncellemesinde geliştirilmiş
InstructS2S-200Kyayımlandı; çok turlu konuşmalara genişletildi ve giriş seslerinin tonları da çeşitlendirildi
Son güncellemeler
- Mayıs 2025’te LLaMA-Omni 2, ACL 2025 ana konferansına kabul edildi
- Nisan 2025’te LLaMA-Omni2 yayımlandı
- 0.5B’den 32B parametreye kadar uzanan bir ses-dil modeli serisidir
- Yanıt kalitesi ve ses üretim kalitesi iyileştirildi
- Ocak 2025’te LLaMA-Omni, ICLR 2025’e kabul edildi
Kurulum ve çalıştırma akışı
- Kurulum, depoyu klonladıktan sonra Python 3.10 conda ortamında paketlerin kurulmasıyla yapılır
pip==24.0kurulduktan sonrapip install -e .çalıştırılır
- Ek bağımlılıklar olarak fairseq ve flash-attn kurulmalıdır
- Hızlı başlangıç için üç hazırlık gerekir
Llama-3.1-8B-Omnimodelini indirmeWhisper-large-v3modelini indirme- unit-based HiFi-GAN vocoder ve
config.jsonindirme
Gradio demosu ve yerel çıkarım
- Gradio demosu üç süreçten oluşur
- controller:
omni_speech.serve.controller - Gradio web server:
omni_speech.serve.gradio_web_server - model worker:
omni_speech.serve.model_worker
- controller:
- Demo çalıştırıldıktan sonra
localhost:8000üzerindenLLaMA-3.1-8B-Omniile etkileşime geçilebilir - Gradio’nun streaming audio oynatımı kararsız olduğundan yalnızca streaming audio sentezi uygulanmıştır ve otomatik oynatma etkinleştirilmemiştir
- Yerel çıkarım, sesli komut dosyalarını
omni_speech/infer/examplesbiçimine uygun şekilde düzenledikten sonrabash omni_speech/infer/run.sh omni_speech/infer/examplesile çalıştırılır
Lisans ve kullanım kısıtları
- Kod Apache-2.0 License ile yayımlanmıştır
- Model yalnızca akademik araştırma amacıyla kullanılabilir; ticari kullanım yasaktır
- Akademik ortamlarda kullanım, değiştirme ve dağıtım mümkündür, ancak özgün makaleye atıf yapılması gerekir
- Ticari kullanım soruları veya ticari lisans edinimi için
fengyang@ict.ac.cnadresiyle iletişime geçilmelidir
Temel projeler ve atıf
- Kod tabanı LLaVA üzerine kuruludur
- Ses kodlayıcı ve ses adaptörüyle ilgili bazı kodlar SLAM-LLM üzerinden alınmıştır
- Araştırma için faydalı olması durumunda
LLaMA-Omni: Seamless Speech Interaction with Large Language Modelsmakalesine atıf yapılmalıdır - Sorular GitHub issue üzerinden veya
fangqingkai21b@ict.ac.cnadresinden iletilebilir
1 yorum
Hacker News yorumları
Bu model metinle ifade edilemeyen sesler de çıkarabiliyor mu? Örneğin “bir tavuğun çıkardığı sesi çıkar” gibi bir istek
Ama hem “gıdak gıdak” sözcüğünü söyleyip hem de gerçekten tıkırtılı/gıdaklayan sesi çıkarabilir mi?
Böyle bir modelin, salt metin modeline konuşma tanıma/konuşma sentezi eklenmiş bir yaklaşıma göre ne gibi avantajları ya da potansiyeli olduğunu pek anlayamıyorum
Model daha sofistike hale gelirse, konuşma sentezinde kaybolan tonlama, ritim, duygu gibi şeyleri doğru yorumlayabilmek veya üretebilmek mi asıl mesele?
Konuşma tanıma modeli sözcükleri yanlış duyabilir, ama ses LLM’i geniş bağlam sayesinde gerçek sözcükleri anlayabilir. Konuşma sentezi modeli tonlamayı tahmin etmek zorunda olduğundan tamamen yanılabilir, ama ses LLM’i doğal olarak hangi tonla konuşması gerektiğini öğrenebilir. Örneğin araya giren bir sözse daha yüksek bir ton kullanabilir
Sadece araya girmek bile, konuşma tanıma/sentez sistemleri genellikle ne zaman konuşacağını belirlemek için ses etkinliği algılama ve sezgisel kurallara dayandığından, çoğu zaman kullanıcı konuşmayı bıraktıktan sonra konuşma kuralına bağlı kalır. Ses LLM’i doğal sohbeti, konuşma süresini fazla kaplamamayı ve birden fazla kişiyle birlikte konuşmayı da öğrenebilir
Ses LLM’i müzik ya da sesler üretebilir, mırıldandığın şarkının ne olduğunu söyleyebilir. Çok sayıda yeni olasılık var
Ancak “öğrenebilir” dememin nedeni iyi eğitim verisi gerektirmesi. Bildiğim kadarıyla bu modellerin çoğu şu anda genel metin veri kümelerini konuşma sentezine dönüştürerek eğitiliyor; dolayısıyla pratikte sıradan konuşma tanıma/sentez sistemlerinden daha iyi değiller. Mimarinin kanıtlanması için iyi, ama tam kapasiteyi göstermiyor
Hızlı ya da yavaş konuşma özelliği bile, geleneksel konuşma sentezi sistemlerinin yapamadığı bir şeydi. Teorik olarak telaffuzumun doğru olup olmadığını da söyleyebilir; yanlış telaffuz ettiğim şeyi tekrarlayıp ardından doğru telaffuzu dinleterek düzeltebilir
OpenAI’nin advanced voice mode’unun bunu gerçekte ne kadar iyi yaptığını henüz düzgünce test eden bir şey görmediğim için bilmiyorum, ama kendim denemek isterim. Diğer ses modelleri de bu seviyeye gelirse dil öğrenme aracı olarak inanılmaz olur
Büyük etkenlerden biri batching yüzünden oluşan gecikme. Ajanın sözünü düzgünce kesip araya girmek zorlaştığı için gerçek konuşma daha garip hale geliyor. Ve evet, multimodal daha iyi anlıyor. Ancak duygu tanıma konusunda bir analiz görmedim; GPT-O’nun bu yeteneği üzerine bir analiz gören var mı merak ediyorum
Bunun dışında yanıt gecikmesini azaltma, konuşmacı ayrımını iyileştirme, konuşma sırasındaki duraklamalara daha iyi tepki verme gibi ikincil avantajlar olabilir
“Really?” ya da “Really!” yazsan bile hâlâ yorum payı kalır. Ses arayüzlerinin gerçekten başarılı olması için, Google’dan önce aramanın berbat olup Google’la değişmesi gibi bir ana ihtiyaç var; bunun özü tonlama, ritim ve duyguyu yorumlayıp üretmekse, böyle modeller yapmak oldukça mantıklı
Ollama, LM Studio, llama.cpp gibi model çalıştırma araçları arasında bunu destekleyen var mı?
Yani bu, konuşma tanıma → LLM → konuşma sentezi yapısı değil mi? Girdi olarak Chewbacca sesiyle bağırırsam model bunu anlamsız girdi olarak mı algılar, yoksa kötü bir konuşma tanıma sistemi gibi rastgele sözcüklere mi yorar?
Tonlamalı dillerde özellikle daha iyi çalışıyor gibi gelirdi
Demo klibindeki konuşma sentezi sesi, Ellen McLain’e, yani Valve seslendirme sanatçısına şaşırtıcı derecede benziyor
https://en.m.wikipedia.org/wiki/Ellen_McLain
Hızı oldukça iyi görünüyor. Yakın zamanda LMStudio + AnythingLLM ile yerel sesli sohbet denedim; hâlâ istediğimden biraz yavaştı ve PiperTTS sesi bundan daha iyiydi
3 günlük eğitim için fena değil. Ses çıktısı kalitesinin daha fazla cilalanması gerekiyor, ama daha fazla eğitimle ne değişeceğini görmek ilginç
Eğitim ya da ince ayar kodu olsa iyi olurdu. Ticari kullanım için ses ince ayarı temel gereksinim gibi görünüyor
GitHub deposunun README’sinde o aptal yıldız trend grafiği varsa güvenim çok daha azalıyor; böyle hisseden sadece ben miyim?
Performansı gösteren bir demo var mı?