Amazon Quick Sight, облачный сервис бизнес-аналитики, опубликовал подробные рекомендации по настройке многомерных Topics с использованием генеративного ИИ. В основе новой функциональности лежит способность модели автоматически строить SQL-запросы на основе вопросов на естественном языке, опираясь на заранее подготовленный семантический слой.

Традиционный подход к объединению нескольких наборов данных в Quick Sight требует явного определения отношений между ними. Такой режим использует направленный ациклический граф (DAG) и поддерживает только inner-соединения, что подходит для регламентированной отчётности. В режиме ИИ-генерации SQL модель сама решает, какие таблицы соединять, какой тип соединения использовать и как агрегировать данные, без ограничений на структуру графа. Этот метод поддерживает outer-соединения, объединения (union), подзапросы и сравнения между разными уровнями детализации.

ПараметрЯвные отношенияAI-генерация SQL
Определение связейПредопределены в TopicВыводятся ИИ во время запроса
Поддерживаемые типы соединенийТолько inner для дашбордовInner, left, right, full outer, union, подзапросы
Ограничение на графТолько DAGБез ограничений
Подход к многомерным фактамТребуются ключи-измеренияСоединение через инструкции
Лучший сценарийРегламентированные дашборды, регулируемые средыИсследовательская аналитика, ad-hoc-вопросы

Для настройки ИИ-генерации SQL необходимо создать семантический слой, включающий инструкции на уровне набора данных и Topic, синонимы полей и описания. Авторы предлагают фреймворк Semantic Guidance Stack и приводят восемь конкретных практик с примерами и антипаттернами. Кроме того, даны рекомендации для сложных сценариев: внешние соединения, отношения «многие-ко-многим», рекурсивные иерархии и ролевые измерения.

ИИ-генерация SQL использует семантический слой из инструкций, синонимов и описаний для создания контекстных запросов.

Выбор между режимами зависит от сценария использования. Для управляемых дашбордов с жёсткими требованиями к корректности данных лучше подходят явные отношения. Для исследовательской аналитики и ad-hoc-вопросов — ИИ-генерация SQL. Возможно и гибридное применение, когда для ядра данных заданы связи, а для нестандартных запросов используется семантический слой. Полное руководство с пошаговым примером для розничной аналитики из пяти наборов данных доступно в блоге AWS.