یکی از قابلیتهای شگفتانگیز در نسخه جدید هرمس ایجنت (Hermes Agent)، پشتیبانی کامل و چندحالته از صوت است. شما میتوانید با ارسال پیام صوتی (وویس) در تلگرام یا وبیوآی، مستقیماً با ایجنت خود تعامل داشته باشید و حتی پاسخها را به صورت وویس طبیعی با لحن استاندارد فارسی دریافت نمایید.
بخش اول: تبدیل وویس به متن فارسی (Speech-to-Text با Whisper.cpp)
برای پیادهسازی سیستم تبدیل گفتار به متن بر روی سرور یا رایانه شخصی، از موتور قدرتمند و بهینهسازیشده whisper.cpp به همراه پرامپتهای آکوستیک تخصصی زبان فارسی استفاده میشود.
۱. کامپایل و آمادهسازی موتور محلی
# دریافت و کامپایل نسخه بهینه با دستورات شتابدهنده سختافزاری
git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cpp
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j2 --target whisper-cli
۲. انتخاب مدل مناسب برای زبان فارسی
- مدل Base (حجم ۱۴۲ مگابایت): بسیار سبک، نیازمند کمتر از ۲۰۰ مگابایت رم، مناسب برای دستورات سریع سروری.
- مدل Small (حجم ۴۶۶ مگابایت): تعادل عالی میان سرعت و دقت واژگان فارسی.
- مدل Large-v3-turbo (کوانتایز ۵۴۸ مگابایت): بالاترین دقت تشخیص کلمات محاورهای و تلفظهای اصیل زبان فارسی.
۳. ترفند طلایی افزایش دقت تشخیص الفبای فارسی
مدل Whisper به صورت پیشفرض ممکن است حروفی مانند «ی» و «ک» را عربی تشخیص دهد یا تنوینها را به صورت عامیانه ثبت کند. با پاس دادن پرامپت اولیه فارسی، دقت تا ۳ برابر افزایش مییابد:
whisper-cli -m models/ggml-base.bin -f input.wav -l fa -nt -np
--prompt "درود، مکالمه به زبان فارسی با رسمالخط معیار و نیمفاصله."
بخش دوم: تبدیل متن به صوت طبیعی (Text-to-Speech با Edge-TTS)
برای تولید پاسخهای صوتی و ارسال به تلگرام، با استفاده از صداهای رسمی زبان فارسی (نظیر fa-IR-FaridNeural برای صدای گوینده مرد و fa-IR-DilaraNeural برای صدای زن)، بدون نیاز به APIهای گرانقیمت دلاری میتوان صدای باکیفیت استودیویی ساخت:
# تولید فایل صوتی و تبدیل خودکار به فرمت OGG Opus جهت ارسال به عنوان وویس حبابی در تلگرام
edge-tts --voice fa-IR-FaridNeural --text "سلام! وضعیت سرور شما کاملاً پایدار است." --write-media /tmp/voice.mp3
ffmpeg -y -i /tmp/voice.mp3 -c:a libopus /tmp/voice.ogg
بخش سوم: اتصال به ربات تلگرام اختصاصی در پنل مستر هرمس
در پنل کاربری مستر هرمس، مشترکین میتوانند با وارد کردن توکن ربات تلگرام اختصاصی خود (دریافتی از BotFather@)، ایجنت را در تلگرام فعال کنند. پس از اتصال، با ارسال وویس به ربات تلگرام:
- وویس مستقیماً در سرور به متن تبدیل شده و پردازش میگردد.
- پاسخ فنی و کدهای درخواستی فوراً در چت تلگرام برای شما ارسال میشود.
توجه به قانون پلنها: با توجه به نیاز بالای پردازش محاسباتی موتور Whisper، قابلیت تبدیل وویس به متن (STT) در پلنهای پایه (۱ میلیون تومان به بالا، Pro و Enterprise) فعال است و در پلنهای زیر یک میلیون تومان، کنترل ربات تلگرام به صورت متنی انجام میپذیرد.
Hermes Multimodal Audio & Voice Interaction Specs
سلام، ما در حال راهاندازی یک دستیار هوشمند پشتیبانی روی سرور اختصاصی هستیم؛ چطور میتوانیم ماژول تبدیل وویس صوتی به متن فارسی در هرمس را پیکربندی کنیم تا کاربران بتوانند پیام صوتی ارسال کرده و سریعترین پاسخ متنی را دریافت کنند؟
درود و احترام همراه گرامی مستر هرمس.
برای راهاندازی و بهینهسازی فرایند تبدیل وویس صوتی به متن فارسی در هرمس، سیستم هرمس ایجنت انعطاف بالایی برای استفاده از مدلهای محلی (Local) و سرویسهای ابری (Cloud API) در اختیار شما قرار میدهد.
اگر به دنبال حفظ حریم خصوصی، کاهش هزینهها و حداقل تاخیر در سرور خود هستید، بهترین رویکرد استفاده از انجین Faster-Whisper به صورت لوکال است. برای این منظور میتوانید فایل تنظیمات ایجنت (کانفیگ STT) را به شکل زیر مقداردهی نمایید:
“`yaml
stt:
engine: “faster-whisper”
model_size: “small” # برای دقت بالاتر در زبان فارسی مدل medium پیشنهاد میشود
language: “fa”
device: “cuda” # در صورت عدم وجود پردازنده گرافیکی از cpu استفاده کنید
compute_type: “float16” # روی پردازنده معمولی مقدار را روی int8 بگذارید
“`
نکات فنی مهم جهت ارتقای دقت خروجی:
۱. نرمالسازی صدا: ویسهای دریافتی از شبکههایی مانند تلگرام معمولاً با کدک OGG Opus فشرده شدهاند. توصیه میشود قبل از پردازش، صوت با ابزار FFmpeg به فرمت WAV با سمپلریت ۱۶ کیلوهرتز مونو (16000Hz, 1 Channel) تبدیل شود.
۲. ارسال پرامپت اولیه (Initial Prompt): برای جلوگیری از اشتباه مدل در نگارش نام برندها یا کلمات محاورهای فارسی، میتوانید فهرستی از کلمات کلیدی پرتکرار خود را در بخش initial_prompt تنظیم کنید.
۳. استفاده از API ابری: در صورتی که سرور شما منابع پردازشی محدودی دارد، میتوانید به جای پردازش لوکال، پارامتر engine را به openai یا ارائهدهندگان واسط متصل کرده و بار پردازشی را به API منتقل نمایید.
تیم پشتیبانی فنی مستر هرمس در تمامی مراحل پیادهسازی و یکپارچهسازی در کنار شما خواهد بود.