В 100 раз более надежные голосовые агенты
AAIF Live
0:00 / 0:00
В 100 раз более надежные голосовые агенты
497 просмотров · 2 дня назад
AAIF Live
40,8 тыс. подписчиков
497 просмотров · 2 дня назад
Люк и Нико работают в SLNG.ai. Сегодня они запускают Unmute, открытый декларативный стандарт для голосовых агентов, распространяемый под лицензией MIT.
Проблема, которую они решают: каждая платформа голосовых агентов имеет собственное определение того, что такое агент. Если вы используете ElevenLabs, VAPI, Retell или Bolna, ваш агент останется на той же платформе. Даже в рамках открытых фреймворков агент Pipecat не всегда корректно переносится в LiveKit. Вы выбираете стек, строите внутри него, и ваш голосовой IP-адрес в итоге оказывается в собственности того, с которого вы начали.
Три предположения, которые, по мнению Unmute, неверны: что голосовые агенты представляют собой последовательный конвейер обработки вызовов, что LLM должен быть основой принятия решений в звонке, и что вы должны выбирать между жестким IVR и длинным запросом с последующим надеждой.
Объявленное выполнение: вызовы инструментов, потоки данных, переходы между шагами и обработка ошибок объявляются и обеспечиваются скомпилированным пакетом, а LLM становится необязательным ресурсом, который должен заслужить свое место.
Детерминизм как циферблат, устанавливаемый пошагово. Заблокируйте нормативное уведомление, оставьте открытый запрос на возражение в одном звонке.
Почему агенты с одним запросом дают сбой: модель читает каждое правило на каждом шаге, отклоняется от темы, выбирает одни правила и игнорирует другие, и никто не может сказать, какая часть привела к сбою.
Пример салона, построенный дважды. Слева: один агент, один запрос, десять описаний инструментов, читаемых на каждом шаге, и раздел, единственная задача которого — сообщить модели, на каком из четырех шагов она находится. Справа: консьерж с одним инструментом и отдельный специалист по жалобам.
Измеренный результат в Langfuse: тот же разговор, то же количество шагов, но более чем вдвое большее использование токенов в версии с одним запросом, плюс меньшее количество шагов и меньшая задержка в версии с разделенными запросами.
Нелогичная часть: четыре разделенных запроса содержат почти вдвое больше общего текста, но вы платите только за то, что находится перед моделью прямо сейчас. Человек, спрашивающий о времени открытия, не должен платить за политику возврата средств.
Структурные гарантии важнее инструкций: этап бронирования не передается модели до тех пор, пока не будет подтвержденного номера, поэтому бронирование без подтверждения невозможно, а не просто маловероятно.
Предварительная загрузка перед приветствием. Большинство агентов тратят первые тридцать секунд на вопросы, которые они могли бы знать. Инструмент, который не принимает аргументов, не является настоящим инструментом.
Типизированные переменные с объявленной областью видимости. Значение может появиться ровно в одном запросе, его вставка в другое место приведет к ошибке сборки, и инструменты получают внедренные значения, а не запрашивают у модели их повторный ввод.
Сборка в реальном времени: один абзац, описывающий проблему, недавно установленный навык, Claude Code, пишущий пакет, затем включение компиляции и включение разработки для работающего агента, которому вы можете позвонить.
Если вы создаете голосовых агентов и наблюдали, как отличная демонстрация разваливается в продакшене, аргумент здесь заключается в том, что запрос никогда не был спецификацией, и исправление носит структурный характер, а не связано с улучшением формулировки.
Ссылки и ресурсы
Unmute: https://unmute.ai/
Unmute на GitHub: https://github.com/slng-ai/unmute
Pipecat: https://www.pipecat.ai/
LiveKit Agents: https://livekit.io/agents
Langfuse: https://langfuse.com/
Agentic AI Foundation: https://agenticaifoundation.org/
#VoiceAI