Если расшифровка звонков ломается на ваших артикулах, названиях услуг и фамилиях сотрудников — менять движок распознавания не нужно. Нужен список собственных слов, который передаётся движку до распознавания или применяется к тексту после него. В модельном замере ниже такой список из 488 записей собирается за 22 часа, стоит 26 565 ₽ и снижает долю ошибок на целевых словах с 31 % до 9 %.

Важно сразу зафиксировать, чего словарь не делает. Общий процент ошибок по словам он почти не двигает: свои термины занимают около 9 % речи в разговоре, поэтому сдвиг получается с 18 % до 16 %. Если подрядчик обещает «поднять точность с 82 % до 95 % за счёт словаря» — он либо не считал, либо считает не то. Что именно скрывается за паспортными процентами и какие ещё шесть факторов роняют точность, мы разбирали в материале о том, что портит распознавание русской речи на практике.

Ниже — процедура: откуда берутся слова, как записывать варианты произношения, чем подсказка движку отличается от постобработки текста, как замерить эффект на одной и той же выборке и кто дополняет словарь после запуска. Все цифры — модельные, посчитаны на потоке 6 000 звонков в месяц и проверяются на своих данных за три дня.

Что такое словарь и чем он не является

Что это значитСловарь терминов для распознавания

Список слов и словосочетаний, специфичных для конкретной компании, с вариантами произношения и сокращений. Передаётся движку распознавания как подсказка либо применяется к готовому тексту как таблица замен. Это не обучение модели: веса движка не меняются, речь не размечается, никакой выборки в тысячи часов не требуется.

Словарь путают с дообучением модели, и из-за этой путаницы задачу откладывают: кажется, что нужен проект на месяцы. На деле у двух подходов разные механики и разная цена — и словарь надо пробовать первым, до разговора про дообучение и тем более до смены вендора.

Технически словарь применяется двумя способами, и они не взаимоисключающие. Подсказка на распознавании повышает вероятность ваших слов в момент, когда движок ещё выбирает между вариантами. Постобработка чинит уже готовый текст по таблице замен с нечётким сопоставлением. Разница принципиальная, и от неё зависит, кто и как будет словарь поддерживать.

СвойствоПодсказка на распознаванииПостобработка текста
Когда срабатываетВ момент распознавания, до появления текстаПосле, поверх готовой расшифровки
Что чинитСлова, которые движок «почти услышал»Устойчиво повторяющиеся искажения
Чего не чинитСлова, которых нет в переданном спискеФрагмент, распознанный до неузнаваемости
Размер спискаОбычно сотни позиций, лимит задаёт вендорТысячи, ограничение только в скорости прогона
Можно применить к архиву задним числомНет, нужен повторный прогон аудио и повторная оплата минутДа, прогон текста стоит копейки
Главный рискДвижок «слышит» термин там, где его не былоЗамена правильного слова на похожее из словаря
Кто поддерживаетНастройка на стороне вендора или параметр в запросеСвоя таблица, правится без участия вендора
Цена одного измененияПерезапуск распознавания на контрольной выборкеПравка строки в таблице и прогон текста

Практический вывод: подсказку берут для того, что произносится часто и предсказуемо — номенклатуры, услуг, фамилий сотрудников. Постобработку держат для всего остального и для архива, потому что переприслать движку 200 000 минут прошлых записей никто не будет. Дешевле в поддержке постобработка: её правит ваш же аналитик, а не тикет в поддержку вендора.

Откуда берутся 488 слов

Словарь не пишут с нуля и не выдумывают. Все нужные списки уже лежат в системах компании — их надо выгрузить, отфильтровать по реальной частоте употребления в разговорах и привести к одному виду. Полный перебор номенклатуры бесполезен: если в справочнике 40 000 позиций, в телефонных разговорах звучат от силы триста.

  1. 1
    Номенклатура из учётной системы — 300 записей

    Выгружаем из 1С (УТ, УНФ или Розница — конфигурация неважна) позиции, дающие 80 % оборота за последние 12 месяцев. Берём не полное наименование карточки, а то, как товар называют голосом: «эр пятьсот», а не «Комплект уплотнительный R-500 в сборе, арт. 114-R500». Если справочник в порядке, выгрузка занимает минуты.

  2. 2
    Справочник услуг, тарифов и акций — 40 записей

    Названия услуг звучат в каждом втором разговоре и почти всегда состоят из слов, которых нет в обычной речи: «диагностика подвески», «пакет расширенный», «выезд за КАД». Сюда же — действующие акции: они живут квартал, но за квартал успевают испортить сотни карточек.

  3. 3
    Фамилии сотрудников и названия площадок — 28 записей

    Своих людей мало, произношение известно, а в разговоре они звучат постоянно: «переключите на Ковалёва», «мне обещал Игнатьев». Это самая ошибкоёмкая категория до словаря и самая благодарная после. Названия складов, филиалов и точек добавляем туда же.

  4. 4
    Топонимы обслуживаемого региона — 120 записей

    Районы, посёлки, промзоны, крупные улицы и объекты-ориентиры, куда вы реально ездите. Полный адресный классификатор в словарь не помещается и не нужен: работает короткий список того, что называют по телефону чаще раза в неделю.

  5. 5
    Журнал ошибок из уже накопленных расшифровок

    Пятый источник — не справочник, а собственные данные. Берём 200 расшифровок, выписываем повторяющиеся искажения и смотрим, во что именно превращаются ваши слова. Этот список даёт варианты, которые невозможно придумать за столом.

схема процессаslovar-terminov-dlya-raspoznavaniya-rechi--01
Схема сбора словаря: пять источников сходятся в список из 488 записей и расходятся в два применения

Схема слева направо. Пять блоков-источников с подписями: «Учётная система — 300 позиций номенклатуры», «Справочник услуг — 40», «Кадровый список — 28 фамилий и площадок», «Карта региона — 120 топонимов», «Журнал ошибок из 200 расшифровок». Стрелки сходятся в центральный блок «Словарь: 488 записей». Из него две стрелки вправо: «Подсказка движку — до распознавания» и «Таблица замен — после распознавания». Под схемой подпись: «22 часа работы, 26 565 ₽». Чертёжный стиль, подписи по-русски.

Слова не пишутся с нуля — они выгружаются из систем, которые у компании уже есть

На всю выгрузку и отбор уходит 10 часов. Дальше начинается работа, которую пропускают чаще всего, — и именно из-за неё словарь у половины компаний не срабатывает.

Варианты произношения: без них словарь мёртв

Слово в словаре записывают не так, как оно пишется в справочнике, а так, как оно звучит в трубке. Аббревиатуры произносят по буквам, буквенно-цифровые артикулы разбивают на части, длинные названия сокращают. Если внести только каноническое написание, движок не свяжет его с тем, что услышал, и словарь не даст ничего.

  • УПД — «у-пэ-дэ», «упэдэ», «универсальный передаточный», «упэдэшка».
  • КС-2 — «ка-эс два», «кээс два», «форма ка эс два», «кээска».
  • R-500 — «эр пятьсот», «эрка пятьсот», «пятисотый», «эр пятисотый».
  • ТОРГ-12 — «торг двенадцать», «торг двенадцатая», «двенадцатая форма».
  • 1С:УНФ — «один эс унэф», «унэф», «управление нашей фирмой».
  • Ковалёв — оба написания, через «ё» и через «е»: движок и оператор пишут по-разному, а сверка с базой ломается на одной букве.
  • б/у — «бэ у», «бэушный», «бывший в употреблении».

На 488 записей приходится в среднем два-три варианта — это ещё 6 часов работы. Их пишет не программист, а человек, который сам принимал эти звонки: он единственный знает, что «пакет расширенный» клиенты называют «полным», а склад на Софийской — «южным».

Словарь не резиновый: после 800–1 000 записей он начинает вредить

Чем длиннее список подсказок, тем выше вероятность ложной подстановки: движок начинает «слышать» ваш термин там, где прозвучало похожее обычное слово. На коротком списке до 500 записей ложные подстановки в модельном замере не превышают 1–2 % от срабатываний, на списке в 3 000 позиций они начинают съедать выигрыш целиком. Если тянет внести всю номенклатуру — это сигнал, что задачу надо решать не словарём, а подстановкой из базы по известному номеру звонящего.

разбор экранаslovar-terminov-dlya-raspoznavaniya-rechi--02
Разбор строки словаря: каноническое написание, четыре варианта произношения и место применения

Нарисованный абстрактный экран редактора словаря, одна строка развёрнута. Колонки подписаны: «Каноническое написание» (значение «УПД»), «Варианты произношения» (четыре чипа: «у-пэ-дэ», «упэдэ», «универсальный передаточный», «упэдэшка»), «Где применять» (два переключателя: «подсказка движку» включён, «таблица замен» включён), «Источник» («справочник документов»). Внизу счётчик «488 записей, среднее число вариантов — 2,4». Чертёжный стиль без реальных логотипов, подписи по-русски.

Одна запись словаря — это не слово, а слово плюс два-три варианта, как его произносят

Где выигрыш втрое, а где его нет

Словарь работает там, где список слов закрытый и конечный, и не работает там, где он открытый. Это единственное правило, по которому можно заранее предсказать эффект, не проводя замер. Ниже — результат прогона одной и той же выборки из 50 звонков до и после подключения словаря.

Категория словЗаписей в словареОшибок доОшибок послеПочему так
Артикулы и коды номенклатуры30034 %9 %Список закрытый, произношение предсказуемо
Названия услуг, тарифов и акций4026 %7 %Одни и те же слова в каждом втором разговоре
Фамилии сотрудников и названия площадок2841 %6 %Своих людей мало, все варианты известны
Топонимы обслуживаемого региона12029 %11 %Помогает, но улиц больше, чем помещается в список
Фамилии клиентовне вносятся44 %40 %Список открытый: чинится подстановкой из базы, а не словарём
Спонтанные сокращения клиентане вносятся38 %35 %Их нельзя перечислить заранее
Обычная разговорная речь12 %12 %Словарь на неё не влияет никак
графикslovar-terminov-dlya-raspoznavaniya-rechi--03
Парные столбики доли ошибок до и после словаря по семи категориям слов

Парная столбиковая диаграмма, семь пар. Категории и значения «до / после»: артикулы 34 % / 9 %, услуги и тарифы 26 % / 7 %, фамилии сотрудников 41 % / 6 %, топонимы региона 29 % / 11 %, фамилии клиентов 44 % / 40 %, спонтанные сокращения 38 % / 35 %, обычная речь 12 % / 12 %. Первые четыре пары выделены заливкой, последние три — контуром и подписью «словарь не помогает». Ось Y — доля ошибок в процентах. Чертёжный стиль, подписи по-русски.

Первые четыре категории — то, ради чего собирают словарь; последние три он не трогает

Сложим это в одну цифру. На четырёх «своих» категориях доля ошибок падает с 31 % до 9 %, но эти категории дают всего 9 % слов разговора. Значит, общий процент ошибок по словам сдвигается на два пункта — с 18 % до 16 %. Втрое улучшилось ровно то, ради чего словарь и собирали, а общая метрика этого почти не показала. Поэтому приёмку словаря нельзя вешать на общий процент: подрядчик покажет два пункта, и формально будет прав.

Мерить надо карточки, а не проценты

На той же выборке из 50 звонков доля карточек хотя бы с одной испорченной позицией упала с 29 % до 9 %. Вот эта цифра и есть результат: она напрямую переводится в число ручных правок в месяц и в рубли. Как из повреждённых полей складывается работа менеджера — разобрано в материале о том, что попадает в карточку сделки из расшифровки звонка.

Отдельно про фамилии клиентов. Это самая ошибкоёмкая категория из всех — 44 % до словаря, — и словарём она не лечится в принципе: список открытый и пополняется каждый день. Правильное решение другое: имя, фамилия и компания подставляются в карточку из базы контактов по номеру звонящего, а распознавание для них не используется вовсе. Для новых номеров фамилия помечается как неуверенная и уточняется у человека.

Замер до и после: как доказать эффект

Единственный честный способ показать, что словарь работает, — прогнать одну и ту же выборку дважды. Не «мы сравнили с прошлым месяцем», не «менеджеры говорят, что стало лучше», а один и тот же набор записей, один и тот же бланк полей, один и тот же человек на сверке.

  1. 1Взять ту же выборку из 50 звонков, на которой мерили исходную точность. Новая выборка обнуляет сравнение: разброс между двумя случайными наборами по 50 звонков сопоставим с эффектом словаря.
  2. 2Прогнать её через распознавание без словаря и сохранить результат — если исходный прогон уже есть, этот шаг пропускается.
  3. 3Подключить словарь и прогнать ту же выборку второй раз. Прогон 150 минут аудио стоит 165 ₽ по тарифу российского облака.
  4. 4Сверить обе расшифровки с ручным эталоном по одним и тем же полям и разложить ошибки по семи категориям из таблицы выше.
  5. 5Посчитать две цифры: долю ошибок по «своим» категориям и долю карточек хотя бы с одной испорченной позицией. Первая объясняет механику, вторая переводится в деньги.
Сбор словаря на 488 записей
Выгрузка номенклатуры из учётной системы и отбор 300 позиций по 80 % оборота5 часов
Справочник услуг, тарифов и акций — 40 записей1 час
Фамилии 28 сотрудников, названия площадок и подразделений1 час
Топонимы обслуживаемого региона — 120 записей3 часа
Разбор 200 накопленных расшифровок на повторяющиеся искажения1 час
Варианты произношения и сокращения ко всем записям, в среднем по 2,4 на слово6 часов
Загрузка словаря и прогон контрольных 150 минут аудио1 час и 165 ₽
Сверка «до и после» по готовому эталону из 50 звонков4 часа
Итого22 часа и 26 565 ₽ при ставке 1 200 ₽/час — три рабочих дня одного человека, без участия вендора и без остановки линии

Сколько это стоит и когда возвращается

Эффект словаря считается через число ручных правок. Менеджер, который видит в карточке испорченный артикул, лезет в запись, находит нужный фрагмент и правит вручную — по замеру это 40 секунд на позицию. Дальше арифметика простая.

Что снимает словарь на потоке 6 000 звонков в месяц
Карточек хотя бы с одной испорченной позицией до словаря: 29 % от 6 0001 740 в месяц
То же после словаря: 9 % от 6 000540 в месяц
Разница — карточки, которые больше не надо править1 200 в месяц
Поиск фрагмента в записи и правка одной позиции40 секунд
Сэкономлено времени: 1 200 × 40 секунд = 48 000 секунд13,3 часа в месяц
В деньгах по ставке менеджера 730 ₽/час с налогами9 730 ₽ в месяц
Итого9 730 ₽ в месяц против 26 565 ₽ разово — вложение возвращается на третий месяц, дальше словарь стоит 2–3 часа в квартал на обновление

Ставка 730 ₽/час — это оклад 90 000 ₽ плюс 30 % страховых, делённые на 160 рабочих часов. Подставьте свою: у отдела из трёх человек и потока 1 500 звонков экономия выйдет около 2 400 ₽ в месяц, и словарь окупится к концу года. Это всё ещё имеет смысл, потому что 22 часа — разовые, а вот проект на полмиллиона при таком потоке смысла уже не имеет.

Есть и вторая часть выигрыша, которую в рублях считать честно не получится. Испорченный артикул в карточке — это не только 40 секунд правки: часть таких карточек никто не правит, и товар уходит в отгрузку не тот. Цена одной такой ошибки в опте измеряется не минутами, а возвратом. Мы не закладываем это в расчёт, но при выборе между словарём и «оставим как есть» помнить об этом стоит.

Кто дополняет словарь после запуска

Словарь стареет быстрее, чем кажется. Новая товарная группа, смена линейки тарифов, ушедший и пришедший менеджер, открытая площадка в соседнем районе — каждое такое событие добавляет слова, которых в списке нет. Без регламента через полгода словарь описывает компанию, которой уже не существует.

СобытиеЧто добавляетсяКто отвечаетСрок
Новая товарная группа или линейка10–40 позиций с вариантами произношенияТот, кто заводит номенклатуру в учётной системеВ тот же день, что и карточки товаров
Смена тарифов или запуск акции3–8 названий, старые помечаются как устаревшие, но не удаляютсяМаркетинг вместе с руководителем отдела продажДо первой рекламной публикации
Приём или увольнение сотрудникаФамилия в двух написаниях, через «е» и через «ё»Кадровая служба в общем чек-листе выходаВ неделю выхода или ухода
Новая площадка, филиал или зона обслуживания5–15 топонимов и внутреннее название объектаРуководитель площадкиДо приёма первого звонка на новый адрес
Плановая ревизияРазбор 100 свежих расшифровок на новые искаженияАналитик или руководитель отделаРаз в квартал, 2–3 часа
этапыslovar-terminov-dlya-raspoznavaniya-rechi--04
Лента обновления словаря: разовый сбор за три дня и квартальные ревизии по 2–3 часа

Горизонтальная лента времени на 12 месяцев. В начале крупный блок «Сбор: 22 часа, 26 565 ₽». Далее четыре одинаковые метки «Квартальная ревизия — 2–3 часа» на третьем, шестом, девятом и двенадцатом месяце. Между ними мелкие треугольные метки-события с подписями: «новая товарная группа», «смена тарифов», «новый сотрудник», «новая площадка». Под лентой отбивка «Экономия 9 730 ₽/мес» и вертикальная линия на третьем месяце с подписью «окупаемость». Чертёжный стиль, подписи по-русски.

После запуска словарь стоит 2–3 часа в квартал — но только если у него есть владелец

Ключевое в этой таблице — не сроки, а колонка «кто». Словарь без владельца перестаёт обновляться на втором месяце: это работа на 20 минут, но она никому не поручена. Мы обычно вписываем обновление словаря в тот же чек-лист, что и заведение номенклатуры, чтобы оно шло вместе с уже существующим действием, а не отдельной задачей. Как такие регламенты выживают после запуска проекта, разбирали в материале о сопровождении автоматизации после сдачи.

Когда словарь собирать не надо

Есть четыре ситуации, в которых 22 часа лучше потратить на что-то другое. Проверьте себя по ним до того, как выгружать номенклатуру.

  • Ошибки не на ваших словах, а везде. Если расшифровка рассыпается на обычной речи, ограничение в тракте записи: моно-микс вместо двух каналов, перекодированный mp3, линия вместо гарнитуры. Словарь тут не поможет — сначала чинится запись, и это бесплатно.
  • Поток меньше 500 звонков в месяц. 22 часа работы против экономии в 800–900 ₽ в месяц — окупаемость за пределами двух лет. При таком потоке дешевле править карточки руками.
  • Номенклатура меняется сотнями позиций в неделю. Словарь не догонит: к моменту загрузки он уже устарел. Здесь работает подстановка из базы по коду в CRM и автозаполнение карточки готовыми значениями, а не распознавание названий на слух.
  • Ключевая сущность — чужие фамилии. Кадровые агентства, нотариат, страховые: главное слово в разговоре — фамилия клиента, а её в закрытый список не внести. Задача решается идентификацией по номеру и подтверждением у человека, и словарь тут даст 3–4 пункта из 44 %.

Во всех остальных случаях порядок действий один и тот же: сначала проверить тракт записи, потом собрать словарь, замерить эффект на той же выборке — и только после этого обсуждать смену движка или свой сервер. Между приличными облачными движками на русской телефонии разница обычно 1–3 пункта, а тракт и словарь вместе дают 8–12. Если разговор с подрядчиком начинается с выбора вендора, а не с замера, счёт будет больше, а результат — меньше. Что ещё можно поднять на своей стороне и бесплатно, мы собрали в разборе речевой аналитики звонков.