image
Я делал внутреннего Telegram-бота для сотрудников: вопрос по возврату, договору, инструкции — ответ из актуальных файлов компании, со ссылкой на источник. Не публичный чат на сайте и не квалификация лидов: только свои люди, только проверенные документы. Я собрал индекс: PDF, регламенты, страницы Notion/Confluence, внутренние FAQ. При обновлении файла индекс пересобирался; устаревшая версия в ответ не попадала. Чанки с заголовками и датой документа, поиск по смыслу, затем ответ модели строго по найденным фрагментам. Я написал бота: авторизация по списку сотрудников, история диалога, кнопка «не то» — тогда эскалация ответственному с цитатой вопроса. Если в базе нет ответа — бот так и пишет, не выдумывает политику и цифры. Я закрыл доступ: гости из Telegram не входят, в логах маскируются ФИО клиентов из документов, запросы пишутся в журнал для разбора. Админка: какие файлы в индексе, последние вопросы, промахи. Стек: Python, aiogram, FastAPI, PostgreSQL, поиск по эмбеддингам, OpenAI/Claude API, Docker. Приёмка: набор эталонных вопросов сверен с регламентами. NDA: компания и файлы не публикуются.