مدل Moshi یه قدم خیلی بزرگ برای حل مشکل Latency در تعامل صوتی با هوش مصنوعیه. تا الان اکثر سولوشنهای موجود، یه پایپلاین Cascade بودن (یعنی اول ASR، بعد LLM، تهش TTS) که ذاتاً کند و غیرطبیعیه. تیم Kyutai (یه لابراتوار فرانسوی) اومده یه مدل End-to-End واقعی ساخته که همزمان میشنوه و حرف میزنه، اونم به صورت Full-Duplex.
معماری Moshi بر پایه یه مدل زبانی ۷ میلیاردی به اسم Helium بنا شده که از پایه توسط خودشون ترین شده. نکته کلیدی اینجاست که این مدل صرفاً یه LLM نیست که بهش مبدل صدا چسبونده باشن؛ بلکه یه معماری Multi-stream داره. یعنی دو تا استریم صوتی جدا (یکی کاربر، یکی خود مدل) رو همزمان پردازش میکنه. این یعنی دیگه مفهوم نوبتی حرف زدن (Turn-based) که تو سیستمهای قدیمی بود حذف شده و شما میتونید وسط حرفش بپرید (Interruption) یا همزمان باهاش صحبت کنید، دقیقاً مثل مکالمه انسانی.
قلب تپندهی این سیستم، یه Neural Audio Codec جدید به اسم Mimi هست. برخلاف کدکهای قبلی مثل EnCodec یا SemantiCodec که Latency بالایی داشتن یا Frame Rate شون با توکنهای متنی مچ نمیشد، Mimi تونسته با Frame Rate حدود 12.5Hz کار کنه. این یعنی هر ۸۰ میلیثانیه یه توکن صوتی میده که برای Streaming فوقالعادهست. برای مقایسه، اکثر کدکها ۵۰ هرتز هستن که بار پردازشی رو الکی زیاد میکنن. Mimi همزمان اطلاعات آکوستیک (کیفیت صدا) و سمنتیک (مفهوم) رو فشرده میکنه.
تکنیک "Inner Monologue" شاهکار مهندسی این پیپره. مدل قبل از اینکه توکن صوتی (Audio Token) رو تولید کنه، اول توکن متنی (Text Token) متناظرش رو به صورت داخلی جنریت میکنه. این کار باعث میشه مدل "فکر کنه" و بعد "حرف بزنه". این قضیه دو تا باگ بزرگ مدلهای Speech-to-Speech قبلی رو حل کرده: یکی اینکه کیفیت محتوا و استدلال به شدت میره بالا (چون از دیتای متنی LLM استفاده میکنه) و دوم اینکه عملاً مدل همزمان داره ASR و TTS رو به صورت Streaming انجام میده.
برای اجرا، تیم Kyutai سه تا بکاند مختلف داده: PyTorch برای ریسرچ، Rust برای پروداکشن (که پرفرمنسش عالیه) و MLX برای اجرا روی مکبوکهای اپل سیلیکون. روی یه GPU L4، تاخیر (Latency) عملی حدود ۲۰۰ میلیثانیه است که عملاً Real-time محسوب میشه. مدل در دو نسخه Moshiko (صدای مرد) و Moshika (صدای زن) و تحت لایسنس CC-BY 4.0 منتشر شده که یعنی برای استفادههای مختلف بازه.
به نظر من، Moshi نشون داد که دوران چسبوندن Whisper به Llama و VITS تموم شده. اگر میخواید روی Voice AI کار کنید، معماریهایی مثل GPT-4o و همین Moshi که Audio Token رو Native میفهمن، آینده هستن. دقت کنید که این مدل هنوز ۷ میلیاردیه و ممکنه توی Reasoning پیچیده کم بیاره، ولی معماریش برای ساخت Voice Assistant های لوکال بینظیره.
تجربه شخصی من اینه که برای تست لوکال حتما از نسخه Rust یا MLX استفاده کنید، نسخه پایتونی خام برای دمو کمی سنگینه. ضمناً برای فاینتیون روی زبانهای دیگه (مثل فارسی) چون توکنایزر Mimi روی دیتای زیادی ترین شده، احتمالاً نتیجه خوبی میده ولی نیاز به GPU قوی دارید.
صفحه اصلی پروژه و دمو:
https://moshi.chat/
کدها و پیادهسازیهای Rust و Python:
https://github.com/kyutai-labs/moshi
مقاله فنی و جزئیات معماری:
https://arxiv.org/abs/2410.00037
دانلود مدلها از هاگینگفیس:
https://huggingface.co/kyutai
🛠 Join @LLMEngineers Community
Post #266
1.21K