Пробвахме чатбот през 2019 г. и беше провал.
Вероятно е било така и причината е архитектурна, а не липса на усилие: класификатор на интенти с ръчно построени диалогови дървета се чупеше при всяка формулировка извън обучаващите данни. Промени се това, че сега работим с извличане от вашата реална база знания плюс tool calls към вашите реални системи, като пътят за ескалация се описва първи. Честният тест не е демо — а преиграване на хиляда ваши исторически разговора, което показва какво щеше да се реши, какво щеше да ескалира и какво щеше да се обърка.
Задържането мери бота, а не клиента.
Съгласни сме и суровото задържане се фалшифицира лесно — обадил се и отказал се клиент се брои за задържан. Определението, с което работим, изважда изоставените сесии и всяка сесия, последвана от повторен контакт до 72 часа, а одитът за фалшиво задържане го публикуваме, преди да го поискате, с цел под 5%. Ако задържането расте, а повторните контакти също растат, внедряването се проваля, каквото и да показва таблото. Процентът ескалации е числото, срещу което планирате смени, затова го отчитаме редом.
Ще си измисли политика и ще ни ангажира с нея.
Това е най-реалният риск в списъка и вече има съдебна практика: по делото Moffatt срещу Air Canada (Civil Resolution Tribunal на Британска Колумбия, февруари 2024 г.) авиокомпанията твърди, че ботът ѝ е отделно образувание, отговорно за собствените си изявления, губи и плаща разликата в цената, която ботът е измислил. Съвсем наскоро ботът за поддръжка на Cursor измисли ограничение за броя устройства и предизвика публични откази от абонамент. Мерките са механични, а не успокоителни — отговори, ограничени до извлечени пасажи, покритие с цитати, заключено в CI, така че промяна в промпта под прага да не може да влезе, явен път „отказвам и ескалирам“ за всичко извън корпуса и твърди спирки за човешко одобрение при възстановявания, анулирания и допустимост. Чл. 22 от GDPR води в същата посока: решенията с правен или подобно значим ефект остават препоръки, които човек одобрява.
Разпознаването на български говор не става за реални клиенти.
Отчасти е вярно и си заслужава да се каже точно, вместо да се подмине. Български се поддържа от Deepgram Nova-3 и от многоезичните модели и Flash v2.5 на ElevenLabs — но Flux, ASR моделът, направен специално за смяна на реплики при гласови агенти, покрива английски плюс девет езика и български не е сред тях. Не е и в многоезичния turn detector на LiveKit, нито в разпространените семантични модели за край на репликата. Затова BG агентът работи с настроен Silero VAD плюс `utterance_end_ms` на Deepgram вместо с endpointing вътре в ASR-а и плаща за това около 150–250 ms допълнително закъснение; където обемът го оправдава, дообучаваме модел върху вашите собствени транскрипти и ви показваме разпределението на EOU преди и след. Word error rate по телефон върху български имена, цифри от ЕГН и вмъкнати английски термини е осезаемо по-висок от английския, а keyterm prompting на Deepgram е функция за английски върху Nova-3, така че `bg` потокът минава през по-стария механизъм `keywords`. Затова идентификацията е първо по DTMF, затова мерим какво реално носи насочването на речника върху вашите записи и затова мерим WER върху тези записи, преди да назовем число за задържане.
GDPR — не можем да пращаме клиентски разговори към американски доставчик на модели.
Решава се в архитектурата, а не с DPA и свиване на рамене. Inference endpoints в ЕС, договорни клаузи за необучаване, срокове за съхранение по категория данни вместо един общ подразбиращ се, и документирано правно основание с вход за DPIA по чл. 35, писан в движение. Заличаването на лични данни върви още при постъпване, но с измерена пълнота: отчитаме постигнатия обхват на заличаването по тип данни върху вашите собствени транскрипти, защото разпознаването на ЕГН в българско аудио на 8 kHz с word error rate 12–25% не е 100% и който ви каже, че е, просто не го е мерил. Остатъчното изтичане се хваща от втора проверка и къс срок на съхранение на суровото аудио, а не от обещание. И честната част, която вашият DPO ще повдигне и която предпочитаме да повдигнем първи: регион в ЕС не изважда доставчик с американска компания майка изпод CLOUD Act, така че оценката на въздействието при трансфер по Глава V пак трябва да бъде написана — ние я пишем, а не ви махаме с региона. Гласовите записи, използвани за идентификация на човек, са биометрични данни по чл. 9 — отделен въпрос за съгласие, който ще повдигнем ние, преди вие да го направите.
Цената на решен случай ви стимулира да отчитате случаи като решени.
Честен прочит на пазара и точно затова ние не таксуваме така: фазите ни са на фиксирана цена, а поддръжката е фиксиран месечен абонамент, така че нито една наша фактура не мърда според това как е преброен един решен случай. Там, където все пак купувате на решен случай — от хелпдеск доставчик или от когото и да било — определете „решен“ в договора, а не в таблото: без намеса на човек, без повторен контакт до седем дни, без отрицателен CSAT. После го одитирайте на извадка и нека двете страни отчитат числото независимо. Ако определението живее само в таблото на доставчика, това не е показател, а фактура.
CRM-ът ни е локален от 2011 г. и няма истинско API.
Често срещано, обикновено решимо и си има честна цена — стълбицата по ред на предпочитание. Първо, каквато SOAP или REST повърхност вече съществува, колкото и грозна да е. Второ, реплика само за четене за справките плюс тънка услуга за запис пред една-две операции, които агентът наистина има нужда да прави. Трето, RPA като мост, с бюджет за чупливост, записан в договора: очаквани счупвания при всяка промяна на интерфейса, кой ги оправя и в какъв срок — RPA, за чиято поддръжка никой не е заделил пари, се чупи в четвъртия месец. Четвърто, схема „на опашка и изравняване“, при която агентът пише в хелпдеска, а пакетна задача синхронизира — честна за закъснението, вместо да се прави на реално време. Това, което няма да направим, е да ви назовем процент задържане, който зависи от записи в реално време, каквито системата ви не поддържа.
Синтезираният български звучи като робот, а тонът на марката ни е важен.
Изборът на глас е измеримо решение, а не въпрос на вкус: пускаме A/B на кандидат-гласовете по процент завършени разговори и CSAT, а не по това кой е харесал на екипа в демото. Нещата, които реално чупят българския синтез, са конкретни и проверими — звателната форма (Иване, а не Иван, когато агентът се обръща към човека), членуването, четенето на числа и суми (сметката е 42,60 лв. се чете като сума, а не като цифри) и фамилиите, вмъкнати в шаблони, където сгрешеното ударение прави цялото изречение изкуствено. Правим речник за произношение с имената на вашите продукти и тарифи и го тестваме върху шаблоните, които реално изпращате. Където синтезът не може да носи убедително даден момент — съболезнования, начало на разговор по оплакване, всичко с тежест — този момент остава при човек.