
Средний агент по недвижимости делает 20–40 звонков в день. После каждого нужно открыть CRM, создать контакт, вписать имя, телефон, тип объекта, район, бюджет, записать детали разговора, создать задачу на перезвон. На практике это занимает 3–5 минут на звонок. При 30 звонках — полтора-два часа чистого времени на рутинный ввод данных.
В реальности большинство агентов записывают данные выборочно, теряют детали, забывают создать задачу. По разным оценкам, до 30% лидов из входящих звонков никогда не попадают в CRM. Проблема не в лени — человек физически не может одновременно вести продающий разговор и структурированно фиксировать данные.
В этой статье разберём, как мы решили эту задачу с помощью ИИ: от захвата аудиопотока до готового лида в CRM за несколько секунд.
Два сценария: автоматический и ручной
У задачи «превратить звонок в лида» есть два принципиально разных сценария, и мы реализовали оба.
Сценарий 1 — автоматический (интеграция с площадками)
Если агент подключил интеграцию с Авито или ЦИАН, система получает записи входящих звонков автоматически через API этих площадок. Клиент позвонил по объявлению на Авито → система забрала запись → обработала → создала лида с данными из разговора. Агент даже не нажимал ни одной кнопки.
Это самый «магический» сценарий: звонок заканчивается, и через несколько секунд в CRM уже лежит карточка с именем, типом объекта, бюджетом и задачей «перезвонить».
Сценарий 2 — ручной (голосовой ввод)
Агент нажимает кнопку микрофона при создании лида и просто рассказывает голосом, о чём был разговор:
«Звонил Николай, телефон 78883334433, интересуется двухкомнатной квартирой на Арбатской, бюджет до 15 миллионов, нужно до конца апреля»
ИИ расшифровывает речь, извлекает данные и заполняет все поля формы. Агенту остаётся проверить и нажать «Сохранить». Работает в браузере и в мобильном приложении (Android).
Этот сценарий универсален — не зависит от источника звонка. Клиент мог позвонить по рекомендации, с расклейки, с сайта — неважно. Главное, что агент не тратит 5 минут на ручной ввод.
Архитектура: от аудиопотока до лида
Разберём, как устроен пайплайн обработки звонка — на примере автоматического сценария, где цепочка длиннее и интереснее.
Шаг 1. Получение аудиозаписи
Система регулярно опрашивает API площадок (Авито, ЦИАН) через фоновые задачи. Для каждого пользователя, у которого настроена интеграция, запрашиваются новые звонки. Звонки из API маппятся в единый формат и сохраняются в базу. Если запись доступна — аудиофайл скачивается и сохраняется локально.
Интересная деталь: если звонок совсем свежий (менее 30 минут), а запись ещё не доступна — система не ставит статус «не найдено», а оставляет «по умолчанию» и попробует скачать позже. Площадки иногда отдают записи с задержкой.
Шаг 2. Speech-to-Text
Аудиозапись отправляется на распознавание через SmartAssistant API — отдельный микросервис для ИИ-задач. Поддерживаются форматы mp3, wav, ogg, m4a, aac, flac, webm — практически всё, что может прийти от площадок или записаться через браузер.
Ключевые вызовы на этом этапе:
- Телефонное качество — сжатие кодеком, шум, наложение голосов
- Два спикера — нужна диаризация, чтобы отделить агента от клиента
- Доменная лексика — «двушка на Ленинском», «студия без отделки», «ДКП», «эскроу» — модель должна знать сленг недвижимости
- Числа и адреса — «восемнадцать миллионов» должно превратиться в 18 000 000, «Ленинский сто двадцать» — в адрес
Шаг 3. Извлечение сущностей (LLM)
Транскрипт попадает в LLM-модуль — Action Extraction. Задача — извлечь структурированные данные из неструктурированного разговора.
Что извлекается:
- ФИО клиента (если назвал)
- Телефон (если отличается от входящего)
- Тип сделки: покупка, продажа, аренда
- Тип объекта: квартира, дом, коммерция, участок
- Район или адрес
- Бюджет или ценовые ожидания
- Ключевые требования (этаж, площадь, ремонт)
- Следующий шаг: перезвон, показ, отправка подборки
- Краткое резюме разговора
На выходе — структурированный результат, готовый к записи в CRM.
Шаг 4. Сопоставление с существующими лидами
Прежде чем создать нового лида, система проверяет: может, этот клиент уже есть в базе? Звонок сопоставляется с существующими лидами по номеру телефона. Если совпадение найдено — данные обогащают существующую карточку, а не создают дубль.
Шаг 5. Создание лида и задачи
Результат обработки превращается в CRM-объекты:
- Лид — карточка клиента с заполненными полями
- Задача — «Перезвонить Ивану Петрову в 14:00» с привязкой к лиду
- Заметка — резюме разговора
Агент получает push-уведомление и может сразу отправить клиенту сообщение в WhatsApp или Telegram — подтвердить встречу, прислать подборку объектов.
Технические грабли, на которые мы наступили
Проблема: «Гена сказал что трёшку на Кутузе за тридцатку»
Разговорная речь полна сокращений и сленга. «Трёшка» — это 3-комнатная квартира. «Кутуза» — Кутузовский проспект. «Тридцатка» — 30 миллионов рублей. Стандартные NER-модели этого не понимают.
Решение: сленг-словарь недвижимости как часть системного промпта. Модель обучена на реальных риэлторских диалогах и понимает контекст: «двушка» в разговоре о продаже — это тип объекта, а не что-то ещё.
Проблема: один звонок — несколько объектов
Клиент звонит и обсуждает сначала квартиру для себя, потом коммерческую недвижимость для бизнеса. Наивная реализация создаст один лид с кашей из параметров.
Решение: LLM определяет количество «контекстов сделки» в разговоре и создаёт отдельный лид на каждый.
Проблема: галлюцинации LLM
Модель может «додумать» информацию, которой не было в разговоре. Клиент не называл бюджет — а модель вписала 15 млн на основе района и типа объекта.
Решение: строгая валидация — поля с низкой уверенностью помечаются как «требуют уточнения» и не заполняются автоматически. Агент всегда может проверить и поправить перед сохранением.
Проблема: площадки отдают записи с задержкой
Авито и ЦИАН не всегда отдают аудиозапись сразу после звонка. Иногда проходит 10–30 минут. Если считать «нет записи» финальным статусом — потеряем данные.
Решение: двухфазная обработка. Свежие звонки (< 30 мин) остаются в очереди на повторную попытку. Только после 30 минут без результата ставится статус «запись недоступна».
Что ещё можно достать из звонка
Анализ качества разговора
Тот же пайплайн позволяет оценить качество звонка по чек-листу: представился ли агент, выявил ли потребность, предложил ли конкретные объекты, назначил ли следующий шаг. Руководитель агентства видит сводку: кто из агентов закрывает, а кто теряет клиентов на первом контакте.
Автоподбор объектов
Извлечённые параметры (район, бюджет, тип, площадь) автоматически запускают поиск по базе 665 000+ объектов. Клиент ещё не положил трубку, а система уже нашла подходящие варианты.
Что дальше
Следующий этап — суфлёр в реальном времени. Пока агент разговаривает, ИИ анализирует контекст и подсказывает: «Клиент упомянул ипотеку — спросите про одобренную сумму», «Похожий объект: 3К, Ленинский 118, 17.5 млн — предложите». Это ещё сложнее технически (задержка < 2 секунды), но первые прототипы уже работают.
Итог
ИИ в недвижимости — это не про «робот заменит риэлтора». Это про то, что агент перестаёт быть оператором по вводу данных и занимается тем, в чём он действительно хорош: переговорами, показами и закрытием сделок. Технология распознавания и анализа звонков уже зрелая. Главная сложность — доменная адаптация: риэлторский сленг, мультисделочные звонки, валидация галлюцинаций.
Часто задаваемые вопросы
Откуда берутся записи звонков?
Из интеграций с площадками — Авито и ЦИАН передают записи через API. Также можно просто нажать микрофон и надиктовать детали голосом — ИИ распознает и заполнит карточку.
На каких устройствах работает?
В браузере на компьютере и в мобильном приложении SmartAgent для Android.
Можно ли редактировать данные после распознавания?
Да. После обработки ИИ все поля доступны для редактирования. Вы можете исправить имя, добавить детали, изменить комментарий перед сохранением.
Какая максимальная длительность голосового ввода?
3 минуты. Обычно достаточно 30–60 секунд, чтобы пересказать суть звонка.
3 дня бесплатно, без привязки карты
3 дня полного доступа — без карты и без звонков от менеджеров