70 из 93 диалогов частной клиники семейной медицины в Петрозаводске закрылись без единого сообщения администратора. Одиннадцать закончились записью на приём. Разница между этими числами и есть ответ на вопрос, зачем клиника вообще ставит бота: не поговорить с пациентом, а записать его — и ничего не сломать по пути.
Что решает подрядчик, а не бот
3,9 секунды — медиана времени ответа бота в диалоге с пациентом. Администратору на ту же карточку требуется медианно 9,2 минуты. Разрыв в скорости почти не влияет на то, испортит бот запись или нет — сильнее влияет то, как построена архитектура: что именно видит нейросеть, кто ставит финальную галочку в системе записи и откуда бот вообще знает о свободных окнах у врача. Тот же принцип лежит в основе нашего AI-ассистента для бизнеса: все три места закрываются архитектурой, а не тем, что обещали на презентации. Спросить об этом стоит до подписания договора, а не после первого перепутанного времени приёма.
Модель не видит пациента
«Не знаю, кто именно имелся в виду» — так один раз ответил бот, хотя нужный врач был в списке клиники. Причина не в баге чат-бота, а в особенности защиты персональных данных. Имя пациента становится токеном {ФИО}. Дата рождения превращается в {ДР}, телефон — в {ТЕЛ}. Всё это происходит до того, как текст уходит в нейросеть; оригиналы живут в состоянии диалога около часа и потом стираются. Содержание обращения маска не трогает: жалобу на боль в спине или вопрос про анализ модель видит как есть, иначе ей не с чем работать. 29 июля 2026 года маска сработала не в ту сторону: пациент назвал врача по фамилии, имени и отчеству, и система приняла это за персональные данные того же типа. Бот честно ответил, что такого специалиста не знает. Починили белым списком имён персонала со сверкой по склонениям. Патч ушёл в ядро парка в тот же день. Как устроена защита в целом, детально разобрано в отдельном кейсе.
Подтверждает человек, а не бот
Спутать дату или неправильно понять, к какому врачу записывают, — самая частая причина, по которой финальный шаг записи не отдают модели целиком. Бот, который сам создаёт запись сразу после того, как собрал имя и телефон, звучит удобно. Но именно так мы не делаем: после сбора данных бот ставит внутренний маркер, а не пишет в систему клиники. Администратору в Telegram приходит карточка с кнопками «Подтвердить» и «Отменить» — там уже настоящие данные, не токены. Запись создаётся только после нажатия «Подтвердить»; на «Отменить» бот возвращается к диалогу с пациентом.
Из 93 диалогов карточка ушла администратору 57 раз.
Отмена и перенос уже существующей записи идут отдельным маршрутом. Бот находит запись по номеру телефона, называет её пациенту и ждёт явного «да, отменяйте» — систему записи он и тут не трогает сам, только передаёт администратору с пометкой, что тот подтвердит.
Переходник проверяет живые окна
tools: ['slots', 'doctors', 'services'] — три инструмента доступны боту в конфиге, и все три read-only. Свободные окна, имена врачей и список услуг бот получает из ответа медицинской информационной системы клиники через отдельный переходник и не сочиняет: имя врача или время приёма он обязан скопировать дословно из ответа инструмента, а не взять из памяти диалога. Про то, как этот переходник устроен во всём парке, есть отдельный разбор. Демо-стенд для показа директору и боевой бот с настоящими пациентами снаружи выглядят одинаково: тот же чат, те же кнопки «Подтвердить»/«Отменить». Разница — в том, подключён ли переходник к настоящей системе записи клиники прямо сейчас, и это ровно тот вопрос, который стоит задать подрядчику до подписания договора, а не после.
Где хостится модель — тоже часть ответа
Маска снимает идентификаторы — имя, дату рождения, телефон, а не смысл сообщения: жалобу на боль в спине модель видит как есть. Поэтому вопрос «какая модель отвечает и где она стоит» — не техническая мелочь, а пункт договора. Мы прогоняли наши боты на трёх моделях, включая модель в российском контуре с отключённым логированием запросов на стороне провайдера: 36 проверочных сценариев прошли на всех трёх, а ход диалога у российской модели обошёлся примерно в четверть рубля. Разница между моделями оказалась не в качестве ответов, а в том, где физически оказывается текст обращения.
Для клиники это не общая фраза «мы соответствуем закону» в договоре, а конкретные статьи 152-ФЗ. Согласие на обработку: статья 9. Трансграничная передача данных: статья 18. Меры защиты при передаче третьим лицам: статья 19. Какая модель стоит у бота сегодня и переключается ли она без переделки бота — два вопроса подрядчику, которые стоит задать письменно.