Аналитика в реальном времени на ClickHouse с агентским ИИ

агентский ИИ, машинное обучение с ClickHouse, искусственный интеллект Agent AI ClickHouse

Зачем использовать ClickHouse для аналитики в реальном времени с агентами ИИ и как это сделать: современные вызовы внедрения LLM.

Как реализовать ML-систему агентского ИИ с ClickHouse

Продолжим разговор про агентский ИИ на основе LLM, когда ML-система не просто реагирует на запросы пользователя, а работает автономно, интеллектуально решая задачи без прямого вмешательства человека, самостоятельно обогащая свои знания данными из внешних источников. При этом выполняются конвейеры расширенной аналитики данных, Retrieval-Augmented Generation (RAG), помогая ML-модели извлекать соответствующую информацию, прежде чем формулировать ответ. Например, в OpenAI внедрен deep research — агент, который может автономно выполнять сложные многоэтапные исследовательские задачи в режиме онлайн. Он обрабатывает и синтезирует информацию из различных источников, включая текст, изображения и PDF-файлы, для создания комплексных отчетов в течение 5–30 минут, что занимает у человека несколько часов.

Разумеется, чтобы агрегировать результаты, полученные из разных источников, их следует свети воедино. Для этого можно использовать аналитические хранилища реального времени, которые могут обрабатывать и предоставлять информацию практически немедленно по мере поступления новых данных.

Классическая аналитика в реальном времени
Классическая аналитика в реальном времени

В отличие от OLTP-хранилищ, ориентированных на хранение или извлечение необработанных данных, OLAP-системы оптимизированы для анализа огромных объемов информации. Это делает их особенно подходящими для агентов ИИ, которым необходимо выявлять тенденции, обнаруживать аномалии и генерировать результаты. Кроме того, аналитические базы данных в реальном времени имеют высокую производительность для интерактивных запросов, чтобы обеспечить взаимодействие в диалоге с пользователем и высокочастотные рабочие нагрузки. Они обеспечивают постоянную производительность даже при больших объемах данных и высокой степени параллелизма запросов, обеспечивая взаимодействие. Все эти возможности есть в колоночной аналитической базе данных ClickHouse, которая отлично подходит для хранения ML-фичей, о чем мы писали здесь.

Аналитика в реальном времени с агентами ИИ
Аналитика в реальном времени с агентами ИИ

Однако, при этом возникает проблема резкого роста количества запросов на чтение к базе данных, если множество агентов ИИ будут одновременно обращаться к ней. Чтобы это не превратилось в проблему, можно применить следующие меры:

  • Оптимизация SQL-запросов для агентов ИИ. Современные LLM умеют генерировать SQL-запросы к различным источникам данных. Однако, при этом надо задать показатели качества этих сгенерированных запросов, определив правила и ограничения. Например, запросы должны избегать ресурсоемких операций, таких как полные сканирования таблиц. Кроме корректности с технической точки зрения, важно гарантировать правильность определений ключевых бизнес-метрик, например, при расчете сезонных финансовых показателей на соответствующем диапазоне. Реализовать это можно, определив и внедрив специальные расширения SQL для LLM: новые правила, операторы и форматы. При этом следует улучшить обнаружение данных. Задачи агента ИИ начинаются с описания доступных наборов данных с помощью DESCRIBE и SHOW запросов, за которыми часто следует выбор образцов данных и описательных агрегатов. Эти запросы помогают понять структуру и свойства данных. Можно разработать специальные операторы, адаптированные для LLM, подобно describe().
  • Разработка специализированной документации для агентов ИИ, чтобы повысить ее доступность для LLM. Например, можно ввести и использовать стандартизированные формы и форматы представления документации в машиночитаемой форме. Это упрощает понимание и использование документации агентами ИИ, обеспечивая более эффективное взаимодействие с данными.
  • повышение быстродействия, поскольку агенты ИИ требуют быстрого отклика для параллельных задач. Однако, в отличии от пользователей-людей каждый запрос ИИ может инициировать несколько исследовательских и агрегационных запросов за короткие промежутки времени. Здесь есть опасность столкнуться с проблемами масштабируемости. Избежать этого поможет постоянный мониторинг нагрузки и оптимизация структуры хранения данных и запросов к ним, чтобы поддерживать высокопроизводительные операции.
  • Кэширование и материализованные представления для сохранения состояний ИИ-агентов. Современные аналитические базы данных поддерживают эти методы оптимизации производительности. О том, как это реализовано в Clickhouse мы писали здесь и здесь.
  • Управление доступом к данным. Обычно базы данных используют RBAC-политику авторизации на основе ролей пользователей для управления разрешениями на операции с данными. Можно дополнить эту модель, добавив для агентов ИИ, взаимодействующих с БД через уровень приложения, краткосрочные токены, которые соответствуют продолжительности задачи агента ИИ. Как это может выглядеть, посмотрим далее.

Для Clickhouse это можно реализовать RBAC-управление доступом с токенизацией по веб-API, разработав сторонний сервис аутентификации, который будет генерировать токены для агентов ИИ с ограниченным временем действия, соответствующим продолжительности их задач. Также нужно создать еще один прикладной слой – приложение, которое будет выступать посредником между агентами ИИ и ClickHouse, отвечая за проверку токенов и управление доступом. В ClickHouse надо создать роли и учетные записи, соответствующие различным уровням доступа для выполнения задач агентами ИИ. Далее следует убедиться, что все соединения между приложением и ClickHouse защищены с помощью SSL/TLS и настроить ограничения доступа по сети так, чтобы только промежуточный слой приложения мог обращаться к ClickHouse, исключая прямой доступ от агентов ИИ. Для автоматизации управления токенами и сессиями придется реализовать механизмы для автоматического истечения токенов по окончании сроков выполнения задач и возможность их отзыва при необходимости. Также полезно внедрить мониторинг и логирование для отслеживания использования токенов и выявления подозрительной активности.

UML-диаграмма последовательности работы ИИ-агентов с ClickHouse
UML-диаграмма последовательности работы ИИ-агентов с ClickHouse

Альтернативой собственной разработке могут быть готовые решения для управления токенами и авторизацией, такие как OAuth 2.0 или IAM-сервисы (Identity and Access Management), которые могут интегрироваться с ИИ-приложением и ClickHouse.

Освойте ClickHouse на специализированных курсах в нашем лицензированном учебном центре обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:

Источники

  1. https://clickhouse.com/blog/agent-facing-analytics
  2. https://www.infoworld.com/article/3631197/agentic-ai-the-top-challenges-and-how-to-overcome-them.html
Я даю свое согласие на обработку персональных данных и соглашаюсь с политикой конфиденциальности.