Почему нашим числам можно верить
Главный вопрос к любой «ИИ-аналитике»: откуда цифра и не выдумана ли она. Здесь - прямой ответ: как устроен наш анализ и почему ИИ у нас не придумывает числа.
Задача
Мы не раз видели ИИ-отчёты с убедительными, но придуманными числами. Модель уверенно называет цифру, которой в данных нет. На вопрос «откуда это?» отвечает «извините, не знаю», а отвечать за ошибку приходится вам. После пары таких случаев доверие к «ИИ-аналитике» пропадает.
Второй барьер - данные. Логи грязные, из разных систем, не готовы к загрузке. Чистить их вручную, только чтобы «посмотреть, есть ли смысл», никто не хочет.
Как это устроено у нас
- 1. ИИ - всерьёз и на переднем крае. Несколько языковых моделей, каждая под свою задачу: одна пишет разбор находок понятным языком, другая независимо его проверяет. Под каждый шаг подобран свой инструмент.
- 2. Мы знаем предел ИИ. Языковые модели, даже самые сильные, склонны уверенно выдумывать числа там, где не знают точного ответа. Это известное свойство их устройства («галлюцинации»), а не редкий сбой конкретной модели.
- 3. Поэтому расчёты ИИ мы не доверяем. Все числа считает программный статистический движок на Python (numpy / scipy / statsmodels - библиотеки для расчётов и статистических тестов). ИИ только описывает уже посчитанный факт текстом и не меняет результат вычисления.
- 4. Перекрёстная проверка. В платном разборе вторая независимая модель сверяет текст с посчитанными фактами и ловит расхождения до того, как отчёт попадёт к вам. Вы получаете выверенный результат, без кухни сверки.
Как редактор и журналист: читатель ценит, что текст прошёл редактуру, но читает готовую статью, а не правки на полях. Мы показываем, что редактор есть, а отдаём статью.
Пример результата
Честность проще всего проверить там, где «удобного» ответа нет. На реальных данных (банковский процессинг) движок попробовал сгруппировать инциденты и не выдал кластеры: структуры в данных не оказалось (silhouette = 0.169, ниже порога значимости), и он прямо об этом сообщил. ИИ-помощник, который «хочет» найти хоть что-то, в такой ситуации обычно придумывает правдоподобные группы. Наш движок говорит: структуры нет.
На другом реальном наборе данных движок ещё до анализа оценил качество выгрузки и поставил оценку B: 1047 из 1057 строк валидны. Вы видите, насколько данным можно доверять, до того как читать выводы.
Что нужно от ваших данных
Обычно готовить ничего не нужно: данные у вас уже есть. Подойдёт экспорт из Jira, ServiceNow, Zabbix или простой список инцидентов в CSV / Excel: время начала и конца события (или готовая длительность) и, желательно, название сервиса. Перед разбором движок сам оценивает полноту и пропуски и показывает оценку качества данных.
Иногда встречаются нестандартные выгрузки: новый формат, редкая ошибка экспорта, смешанные источники. Тогда мы не отбрасываем данные и не подгоняем их вслепую, а разбираем и дочищаем вручную под вашу ситуацию.