دستیار صوتی فارسی · نصب روی سرور خودتان

تلفن را هوش مصنوعی جواب می‌دهد. داده‌ها پیش خودتان می‌ماند.

یک همکار صوتی که فارسی را واقعاً بلد است: جواب مشتری را می‌دهد، نوبت می‌گیرد، هویتش را احراز می‌کند و هر جا کار از دستش برنیامد، تماس را با خلاصهٔ کامل تحویل همکار انسانی می‌دهد. تماس‌ها، ضبط‌ها و اطلاعات مشتری هم از سرور شما بیرون نمی‌رود.

یا همین حالا زنگ بزنید: 021 9130 4064 و بعد از پاسخ، داخلی ۱۰۸۰ را بگیرید.
اگر هم روزی سیستم به مشکل بخورد، تماس‌ها خودکار به اپراتورهای خودتان برمی‌گردد؛ هیچ مشتری‌ای پشت خط نمی‌ماند.
تماس زنده
SIP · 00:41
سلام، می‌خوام برای فردا یه وقت کارشناسی رزرو کنم.
حتماً! فردا ساعت ده صبح آزاده. براتون نگهش دارم؟
find_appointment_slots · 412 msپاسخ در ۰٫۹ ثانیه
آره، به اسم خودم ثبتش کن.
ثبت شد. کد رزروتون رو حرف‌به‌حرف می‌خونم: R 4 K 7 M 2
hold_slot · confirmed
STT ← LLM ← TTS · جمله‌به‌جمله، همان لحظه
کمپین تماس خروجی

از زنگ‌زدن تا فروش، بدون اپراتور.

مثلاً کمپین تمدید بیمه‌نامه: سیستم خودش زنگ می‌زند، خودش را معرفی می‌کند و می‌گوید تماس ضبط می‌شود، هویت مشتری را می‌پرسد و اگر مشتری راضی بود، تمدید را همان‌جا قطعی می‌کند. اگر هم کسی گفت «با اپراتور کار دارم»، همان لحظه وصلش می‌کند.

کمپین تمدید بیمه‌نامهدادهٔ نمایشی
۱۲۴ مخاطبساعت تماس ۹ تا ۲۰تشخیص پیغام‌گیر روشن
مخاطبوضعیتنتیجهمدتاپراتور انسانی
0912***4567پاسخ دادتمدید ثبت شد — پرداخت قسطی۲:۴۱—
0935***8812پاسخ دادتمدید ثبت شد۱:۵۸—
0910***3364پاسخ دادنوبت کارشناسی رزرو شد۳:۰۵—
0919***2230پیغام‌گیرقطع خودکار، بدون مصرف منابع۰:۰۶—
0905***7741پاسخ دادانصراف — رفت در فهرست عدم‌تماس۰:۳۸—
0918***0093بی‌پاسختلاش دوباره، نیم ساعت بعد——
۲ تمدید + ۱ رزرو۰ انتقال به اپراتور
اگر هم لازم می‌شد، انتقال با خلاصهٔ گفت‌وگو یک جمله فاصله داشت.
۸۴ میلی‌ثانیه
تا اولین صدای موتور صوتی خودمان؛ روی مسیر واقعی تماس اندازه گرفته‌ایم
~۳۸۰ میلی‌ثانیه
تا اولین کلمهٔ مدل زبانی؛ بعد از محک‌زدن ده مدل روی سناریوهای واقعی
۰ تا ۱۰۰٪
سهم هوش مصنوعی از تماس‌ها را خودتان با یک اسلایدر تعیین می‌کنید
۷۴۷ سند
پایگاه دانش یکی از مشتری‌ها؛ ۷٬۷۰۶ قطعه، بدون یک خطا
استقرار درون‌سازمانی

داده‌های شما از شرکت بیرون نمی‌رود.

خیلی از سازمان‌ها اجازه ندارند صدای مشتری را به سرویس خارجی بفرستند. ما پلتفرم را طوری ساخته‌ایم که همه‌چیز بتواند داخل شبکهٔ خودتان اجرا شود.

کل زیرساخت پیش خودتان
از پایگاه‌داده تا سرور رسانه و مانیتورینگ، همه متن‌باز و نسخه‌ثابت است و امروز روی یک سرور بالا می‌آید. خبری از هزینهٔ دقیقه‌ای سرویس‌های ابری تماس هم نیست.
مدل‌های خودمان، روی سرور شما
تشخیص گفتار و صدای فارسی را خودمان آموزش داده‌ایم و برای هر مشتری جدا انتخاب می‌شود. موتور داخلی نه هزینه‌ای به‌ازای تماس دارد، نه صدا را جایی می‌فرستد.
پایگاه دانش هم محلی است
بردار اسناد روی پردازندهٔ خودمان ساخته می‌شود و در پایگاه‌دادهٔ شما می‌ماند. هیچ متنی برای هیچ سرویس بیرونی نمی‌رود.
پیش‌فرض: بسته
سرویس‌ها فقط روی شبکهٔ داخلی گوش می‌دهند، ضبط‌ها فقط با لینک امضاشدهٔ ده‌دقیقه‌ای باز می‌شوند و اگر رمزی ضعیف باشد، سیستم اصلاً بالا نمی‌آید.
تخصص VoIP

تلفن واقعی با API فرق دارد.

جیتر، کدک، مخابرات، پیغام‌گیر… این‌ها را از نزدیک دیده‌ایم. لایهٔ سانترال و مسیر صدا دست خودمان است و برای ادعاهایمان لاگ و شمارهٔ پکت داریم.

INBOUND
به سانترال فعلی‌تان وصل می‌شویم
  • مثل یک خط داخلی روی PBX خودتان ثبت می‌شویم؛ شماره، منشی گویا و قرارداد مخابرات سر جایش می‌ماند
  • کدک پهن‌باند در اولویت است تا سیستم صدای شفاف بشنود، نه صدای خفهٔ ۸ کیلوهرتز
  • بافر جیتر تطبیقی روی هر پایهٔ تماس
  • شماره‌گیری با دکمه‌های تلفن (DTMF) همه‌جا کار می‌کند، چه تلفن چه وب
OUTBOUND
شماره‌گیری با حساب‌وکتاب
  • قبل از وصل‌کردن، پیغام‌گیر را تشخیص می‌دهد؛ بوق پیغام‌گیر منابع خرج نمی‌کند
  • اگر مطمئن نباشد آدم است یا دستگاه، آدم فرض می‌کند و قطع نمی‌کند
  • مأمور قبل از اولین کلمه می‌داند به چه کسی و برای چه زنگ زده
  • برای مخابرات‌هایی که فقط از داخل ایران SIP قبول می‌کنند، دروازهٔ داخل کشور داریم؛ با تماس واقعی دوطرفه تستش کرده‌ایم
8 KHZ
برای خط ۸ کیلوهرتز ایران ساخته شده
  • مدل تشخیص گفتار را روی ده‌ها ساعت مکالمهٔ تلفنی واقعی فارسی تنظیم کرده‌ایم، نه صدای استودیویی
  • قبل از تشخیص، نویز خط گرفته می‌شود
  • در آموزش مدل، کدک مخابراتی (G.711) شبیه‌سازی می‌شود تا خطِ واقعی را یاد بگیرد
  • داخل پلتفرم صدا ۱۶ کیلوهرتز می‌ماند تا از همان خط باریک هم بیشترین کیفیت دربیاید
RELIABILITY
اندازه می‌گیریم، حدس نمی‌زنیم
  • جیتر، گم‌شدن پکت و تأخیر رفت‌وبرگشت هر تماس، آخر تماس ثبت می‌شود
  • افت پکت یک مسیر بین‌المللی را از حدود ۱۳٪ به ۱٫۵٪ رساندیم؛ با لاگ، نه با شانس
  • صدای بریده‌بریدهٔ موبایل؟ صفر پکت گم‌شده بود ولی صدها وقفهٔ جیتری؛ با بافر و کدک درستش کردیم
کمپین خروجی، با ملاحظاتی که باید باشد
یادآوری تمدید · تأیید رزرو · پیگیری پرداخت · سناریوی خودتان
شماره‌گیری تدریجی، ۱ تا ۵۰ هم‌زمانتلاش دوباره با فاصلهٔ دلخواهساعت مجاز تماس، به وقت شماانتخاب روزهای هفتهفهرست عدم‌تماسانصراف صوتی وسط تماساعلام ضبط در هر تماس خروجیتشخیص پیغام‌گیر

شماره‌گیر با قفل پایگاه‌داده مخاطب برمی‌دارد؛ حتی چند نسخهٔ موازی هم یک نفر را دو بار نمی‌گیرند. ساعت مجاز و فهرست عدم‌تماس هم قبل از شماره‌گیری اعمال می‌شود، نه بعدش.

سرعت پاسخ

مکث طولانی، مکالمه را می‌کُشد.

بالای یک ثانیه سکوت، مشتری فکر می‌کند قطع شده. برای همین بودجهٔ تأخیر هر مرحله را توی قرارداد سرویس‌ها نوشته‌ایم و هر نوبتِ هر تماس با همان سنجیده می‌شود.

مشتری ساکت می‌شود ← اولین صدای پاسخ
کل بودجه ≈ ۷۰۰ تا ۱۰۰۰ میلی‌ثانیه
تشخیص پایان صحبت
۱۵۰ تا ۳۰۰ ms
گفتار ← متن
≤ ۱۵۰ ms
اولین کلمهٔ مدل
≤ ۲۵۰ ms
اولین بایت صدا
≤ ۱۵۰ ms · با کش ~۵ ms

همه‌چیز جریانی است: متن همان حین حرف‌زدن ساخته می‌شود، جواب کلمه‌به‌کلمه می‌آید و صدا جمله‌به‌جمله پخش می‌شود. روی مسیر صدا هیچ‌چیز منتظر پایگاه‌داده نمی‌ماند.

مکث ابزار شنیده نمی‌شود
تا جست‌وجویی شروع شود، یک عبارت کوتاه از کش پخش می‌شود؛ مشتری متوجه هیچ وقفه‌ای نمی‌شود.
گرم‌کردن توی بوق
مدل‌ها وقتی گرم می‌شوند که تلفن هنوز زنگ می‌خورد؛ استارت سرد پشت صدای بوق قایم می‌شود.
وسط حرفش بپرید، اشکالی ندارد
مثل مکالمهٔ عادی می‌شود وسط حرفش پرید. ولی سرفه و صدای خیابان جواب را قطع نمی‌کند؛ فقط کلمهٔ واقعی.
جمله‌های ثابت مدل نمی‌خواهند
سلام و خداحافظی و جملهٔ انتقال از قبل ساخته شده‌اند؛ تأخیرشان عملاً صفر است.
خط پرنویز هم مدیریت می‌شود
تشخیص پایان صحبت روی خط نویزی مهار شده و محافظ پژواک نمی‌گذارد سیستم صدای خودش را بشنود.
هر نوبت اندازه‌گیری می‌شود
زمان هر مرحله در هر نوبت ثبت می‌شود. قانون تیم: تغییری که آنجا قابل اندازه‌گیری نباشد، منتشر نمی‌شود.
ردیس؛ جایی که میلی‌ثانیه‌ها جبران می‌شوند
کش صدا
هر جمله‌ای که یک بار گفته شده تا ۱۴ روز نگه داشته می‌شود. دفعهٔ بعد به‌جای ساختن دوباره، حدود ۵ میلی‌ثانیه طول می‌کشد. سلام و احوال‌پرسی عملاً همیشه از کش می‌آید.
کش پاسخ
سؤال‌های تکراری دو لایه کش دارند: تطبیق دقیق و تطبیق معنایی. جست‌وجوی معنایی با خود مدل مسابقه می‌دهد؛ اگر پیدا نکند، هیچ تأخیری اضافه نشده. نوبت‌هایی که رقم دارند اصلاً کش نمی‌شوند.
خرابی کش، خرابی تماس نیست
هر خطای کش به مسیر زنده می‌افتد و اگر ردیس در دسترس نباشد، تماس‌ها سمت اپراتور انسانی می‌روند. عمداً این‌طور طراحی شده.
ابزارها

فقط حرف نمی‌زند؛ کار انجام می‌دهد.

وسط مکالمه در اسناد شما جست‌وجو می‌کند، هویت می‌پرسد، نوبت می‌گیرد یا جابه‌جا می‌کند و لازم شد به همکارتان وصل می‌کند. هر کدام یک ابزار تعریف‌شده است که برای هر مشتری جدا روشن یا خاموش می‌شود.

kb_searchverify_identityget_customer_profilefind_appointment_slotshold_slotconfirm_reservationextend_reservationcancel_reservationtransfer_to_humanopt_out
موتور رزروی که تقویم را به‌هم نمی‌ریزد
  • رزرو تکراری در سطح پایگاه‌داده غیرممکن است؛ قید سخت دیتابیس، نه شرط و شانس در کد
  • اسلات پنج دقیقه نگه داشته می‌شود؛ تماس رها شد، خودش آزاد می‌شود
  • کد پیگیری از حروفی است که پشت تلفن با هم اشتباه نمی‌شوند و حرف‌به‌حرف خوانده می‌شود
  • «سه‌شنبه ساعت ده» و تاریخ شمسی با رقم فارسی را همان‌طور که مردم می‌گویند می‌فهمد
  • تقویم را آن‌قدر می‌شناسد که بگوید «تا ۲۱:۳۰ می‌تونید بمونید»
جوابش از اسناد خودتان است
  • فایل متن یا PDF را در پرتال آپلود کنید؛ چند دقیقه بعد قابل جست‌وجوست
  • جست‌وجوی معنایی و متنی با هم ترکیب می‌شوند، در یک کوئری
  • اگر جواب در اسناد نباشد، رک می‌گوید نمی‌داند و اپراتور را پیشنهاد می‌دهد؛ از خودش چیزی نمی‌بافد
  • هر جست‌وجو با امتیازش ثبت می‌شود؛ می‌شود رد هر جواب را گرفت
  • تا امروز: ۷۴۷ سند و ۷٬۷۰۶ قطعه برای یک مشتری، بدون خطا

حدود اختیاراتش را شما تعیین می‌کنید.

هر مأمور فقط کارهایی را می‌تواند بکند که برایش روشن کرده‌اید. چند کار را هم هیچ‌وقت نمی‌تواند بکند:

  • قول تخفیف و استرداد و تغییر قیمت نمی‌دهد؛ این تصمیم‌ها با آدم‌هاست
  • چیزی که در اسناد و ابزارها نیست را نمی‌گوید؛ «نمی‌دانم» بلد است
  • وقت خالی از خودش اختراع نمی‌کند؛ فقط اسلات واقعی تقویم را پیشنهاد می‌دهد
  • «احراز شد» را مدل اعلام نمی‌کند؛ سرور اعلام می‌کند
  • ابزار خاموش یا ناشناخته اجرا نمی‌شود، مدل هر چه بخواهد
اختیارات این مأموربرای هر مشتری جداگانه
جست‌وجوی پایگاه دانشkb_search
احراز هویت مشتری (KYC)verify_identity
رزرو و تأیید نوبتhold_slot · confirm_reservation
لغو رزروcancel_reservation
انتقال به اپراتورtransfer_to_human
انصراف از تماس‌های بعدیopt_out · فقط تماس خروجی
هر جای تماس، انتقال به انسان
سه راه مستقل
مشتری بگوید «اپراتور»، قبل از اینکه اصلاً به مدل برسد تشخیص داده می‌شود. خود مأمور هم می‌تواند با ابزارش وصل کند. و اگر فقط بگوید «وصل می‌کنم» و کاری نکند، پلتفرم خودش انتقال را انجام می‌دهد؛ قول بی‌عمل نداریم.
اول اطلاعات، بعد صدا
قبل از اینکه صدا جابه‌جا شود، خلاصهٔ گفت‌وگو، هویت احرازشده و علت انتقال روی مانیتور اپراتور می‌نشیند. اپراتور قبل از «الو» می‌داند قصه چیست.
بن‌بست ندارد
انتقال گرم استاندارد SIP است و اگر اپراتور مقصد جواب ندهد، صف انسانی پشتیبان است. نرخ مهار — تماس‌هایی که بدون انتقال حل شدند — هم همیشه در داشبورد جلوی چشمتان است.
احراز هویت مشتری · KYC

احراز هویت را سرور انجام می‌دهد، نه حدسِ مدل.

هوش مصنوعی فقط اطلاعات را می‌پرسد؛ تصمیم با یک ماشین حالت قطعی سمت سرور است. تا سرور نگوید «احراز شد»، اطلاعات شخصی قفل است — حتی اگر کسی مدل را فریب بدهد.

۱
کد ملی — قبل از اینکه فرصتی خرج شود، رقم کنترلش همان‌جا چک می‌شود. مشتری می‌تواند بگوید، با دکمه‌های تلفن بزند، یا اگر بد شنیده شد، سیستم صدای همان چند ثانیه را دوباره و دقیق می‌خواند. در تست، ۴ مورد از ۵ موردی که رونویسی زنده از دست داده بود همین‌طوری برگشت.
۲
سیاست شما — تاریخ تولد، نام پدر؛ سخت‌گیری هر فیلد قابل تنظیم است. یک رقم بدشنیده را می‌بخشد، تاریخ متفاوت را نه.
۳
احراز شد — تازه حالا اطلاعات حساب و رزروها باز می‌شود؛ آن هم در هر درخواست سمت سرور چک می‌شود.
چند خطای پشت‌سرهم؟ آن کد ملی مدتی قفل می‌شود، حتی در تماس بعدی. در گزارش‌ها فقط دو رقم آخر می‌ماند و مأمور هم لو نمی‌دهد کدام فیلد غلط بود.
راه‌اندازی تدریجی

آرام‌آرام زنده شوید.

اول ده درصد تماس‌ها را بدهید دست هوش مصنوعی و آمار را ببینید. راضی بودید، اسلایدر را ببرید بالا: هفتهٔ اول جای سه اپراتور، هفتهٔ دوم ده تا. هر لحظه هم یک کلید تا برگشت کامل فاصله دارید.

سهم هوش مصنوعی از تماس‌های ورودی۳۰٪
۰٪ — همه با اپراتور۱۰۰٪ — همه با هوش مصنوعی
کلید قطع اضطراری — همهٔ تماس‌ها فوراً به تیم شماآماده
  • تقسیم دقیق است: ۳۰٪ یعنی از هر ۱۰۰ تماس دقیقاً ۳۰ تا. تست خودکار دارد
  • هر مسیر خطا به صف اپراتورها می‌رسد؛ مشتری هیچ‌وقت بلاتکلیف پشت خط نمی‌ماند
  • نرخ مهار را همان حین بالابردن اسلایدر، زنده در داشبورد می‌بینید
گزارش تماس‌ها

حساب هر تماس روشن است.

  • رونوشت کامل با زمان‌بندی هر مرحله؛ هر جا کندتر از بودجه باشد، رنگ عوض می‌کند
  • ضبط تماس با متن همگام است؛ روی جمله کلیک کنید، همان لحظه پخش می‌شود
  • برای هر تماس خلاصه، نیت مشتری و حس‌وحال گفت‌وگو ثبت می‌شود
  • موقع انتقال، اپراتور قبل از جواب‌دادن همهٔ ماجرا را روی صفحه دارد
  • داشبورد: حجم تماس، نتیجه‌ها، تأخیر p50/p95، نرخ کش، موفقیت احراز و نرخ مهار
آموزش و بازتنظیم مدل

مدل با تماس‌های خود شما بهتر می‌شود.

۰۱
برداشت — ضبط‌های واقعی از آرشیو سانترال شما؛ در اولین همکاری حدود ۵۸ ساعت مکالمهٔ تلفنی
۰۲
برچسب بدون انسان — هیچ‌کس دستی رونویسی نمی‌کند؛ دو مدل مستقل باید سر هر قطعه هم‌نظر باشند تا وارد آموزش شود
۰۳
بازتنظیم — آموزش LoRA با جداسازی درست داده و شبیه‌سازی کدک تلفنی، تا مدل خط تلفن را یاد بگیرد نه ایرادهایش را
۰۴
ارزیابی بی‌تعارف — خطای واژه، قبل و بعد، روی مرجع مستقل. اگر بهتر نشده باشد، همین را می‌گوییم
تجربهٔ مشتری شما با تنظیمات و پایگاه دانش عوض می‌شود، نه با بازآموزی: دانش و دادهٔ زنده عمداً بیرون از وزن‌های مدل می‌ماند و در هر تماس تازه خوانده می‌شود.
امنیت و چندمستأجری

جداسازی مشتری‌ها کار خودِ پایگاه‌داده است.

تفکیک داده‌ها وعدهٔ کد ما نیست؛ Row-Level Security پستگرس است، روی هر ۲۵ جدول، و با تست خودکارِ بین‌مستأجری چک می‌شود.

امنیت سطح سطر
هر کوئری با نقشی محدود و چسبیده به یک مشتری اجرا می‌شود؛ خود کوئری هر چه بگوید.
احراز مستحکم
شش سطح نقش، گذرواژهٔ argon2id، توکن یک‌بارمصرف چرخشی، کلید API هش‌شده و قابل ابطال.
ملاحظهٔ دادهٔ شخصی
کد ملی و شماره همه‌جا پوشیده است، برای قفل‌ها هش می‌شود و در لاگ‌ها پاک‌سازی.
مقاوم به تزریق دستور
اسناد و خروجی ابزارها داده‌اند، نه دستور. مدل هم نمی‌تواند به خودش دسترسی بدهد؛ وضعیت احراز ستونی سمت سرور است.
Asterisk · LiveKit · gRPC streaming · PostgreSQL + pgvector · Redis · MinIO · OpenTelemetry · Prometheus · Grafana · Whisper + LoRA · Piper TTS · multilingual-e5 · Next.js

خودتان بشنوید.

ده دقیقه وقت بگذارید: زنگ بزنید، به فارسی هر سؤالی خواستید بپرسید و همان حین، پنل تأخیر را نگاه کنید. بعد تصمیم بگیرید با چه سرعتی جلو بروید.

دموی زندهٔ تلفنی — همین حالا شماره بگیرید021 9130 4064بعد از پاسخ، داخلی ۱۰۸۰ را بگیرید