ИИ-бот с базой знаний на своём сервере
Режим для компаний, которые не отдают материалы стороннему сервису. Все материалы для обучения бота, их разметка и хранение остаются на вашем сервере; у нас не хранится ничего - ни документы, ни фрагменты, ни векторы, ни правки ответов. Мы только формируем ответы покупателям - во всех каналах сразу: виджет, страница-чат, Telegram, MAX, чаты и отзывы Wildberries, Ozon и Яндекс Маркета.
Бот не обучается на ваших данных
Ни в этом режиме, ни в обычном. Языковая модель не дообучается и ничего не запоминает между ответами. На каждый вопрос покупателя мы спрашиваем у вашего сервера подходящие фрагменты и передаём их модели вместе с вопросом и вашими правилами. Поэтому от вашей стороны нужно ровно одно: по вопросу вернуть несколько кусков текста.
Два адреса на вашей стороне
Каждый запрос подписан: заголовок X-CyberAI-Signature - это HMAC-SHA256 тела запроса на общем секрете, который вы задаёте в кабинете. Проверяйте подпись: адрес смотрит в интернет.
POST {ваш адрес}/knowledge/search - на каждый вопрос покупателя:
{ "query": "Есть скидка на три пачки?", "top_k": 6, "lang": "ru" }
200 OK
{ "chunks": [ { "id": "doc-12#3", "content": "При заказе от трёх упаковок...", "score": 0.87 } ] }Ответ ждём за 3 секунды (настраивается, максимум 10) и не длиннее 12 000 символов суммарно. Не успели - бот честно скажет покупателю, что не знает: ждать дольше нельзя, человек в чате через 3-4 секунды тишины решает, что бот сломался. Потолок символов бережёт ваш же счёт: фрагменты идут в модель и оплачиваются по общей цене ответа.
POST {ваш адрес}/knowledge/correction - сюда уезжают правки, которые вы делаете в «Диалогах»:
{ "question": "Есть скидка на 3 пачки?", "answer": "Да, 10% от трёх упаковок." }
200 OKПриняв правку, учитывайте её в поиске сами - мы её не храним и в следующий раз просто спросим вас снова. На практике: сохранить как обычный фрагмент с высоким приоритетом.
Что поставить у себя
Нужен поиск по вашим материалам. Простой путь - полнотекстовый поиск на PostgreSQL: ставится за час, но не свяжет «возьму сразу три» с «от трёх упаковок скидка». Точный путь - векторный поиск: PostgreSQL с расширением pgvector и модель BAAI/bge-m3 (размерность 1024, понимает русский). Видеокарта не нужна: 4 ГБ памяти и обычный процессор.
Пошаговая инструкция для администратора - с командами, ожидаемым выводом, готовым индексатором, сервисом на FastAPI, systemd, nginx и сертификатом.
Проверка настроек
Раздел «Настройки бота», вкладка «Для разработчиков», блок «Материалы на моём сервере»: кнопка «Проверить настройки» проходит по восьми пунктам - протокол, разрешение домена, доступность порта с нашего адреса, срок сертификата, ответ поиска, запас по времени до таймаута, закрыт ли эндпоинт без подписи, приём правок - и на каждый отказ показывает, что именно случилось и какой командой это проверить у себя.
157.228.138.231 - разрешите его, если у вас закрытый контур.Что остаётся у нас
Переписка с покупателями (на ней держатся «Диалоги» и разбор жалоб) и счётчики списаний - без них нет биллинга. Ваши материалы - нет. И отдельно: фрагменты, которые прислал ваш сервер, передаются языковой модели в момент ответа, иначе ответа не будет.
Честная формулировка режима: мы не храним ваши материалы. Не «ваши данные никуда не уходят».