ViTalk GPT: генератор DAX-запросов для Visiology 3
Привет, Хабр! Сегодня я хочу рассказать о нашем новом чат-боте ViTalk GPT. Он использует ИИ для генерации запросов на языке DAX, которые можно использовать в Visiology 3, причем учитывает не только особенности нашей платформы, но и контекст ваших запросов. О том как это работает, почему ViTalk GPT помогает переносить экспертизу не только из Power BI, в чем секрет создания «готовых» скриптов, которые можно просто вставлять в нужное поле в Visiology 3, и зачем вообще это нужно — читайте под катом.
Если вы читаете наш блог, то наверняка уже знаете, что на платформе Visiology 3 мы постепенно расширяем поддержку самого популярного в мире аналитического языка DAX (он же используется в Microsoft Power BI). Благодаря этой особенности BI-система предлагает больше гибкости в работе с данными — их трансформация и обработка становится возможной не только на базе хранилища, но и на уровне движка, а экспертизу из Power BI можно просто перенести в Visiology 3. Быстро и удобно. Кстати, я уже показывал, как несложный дашборд может «переехать» за 13 минут.
Но есть несколько «но», которые нужно учитывать:
Несмотря на абсолютно такой же синтаксис DAX, в Visiology поддерживается не весь набор DAX-функций из Power BI. Реально востребованные функциимы добавим в ближайшие месяцы, но некоторые команды, которые используются крайне редко, поддерживаться не будут. Учитывая, что в Power BI одну и ту же задачу можно решить на DAXе различными способами, это не является проблемой, но может возникнуть задача адаптировать запрос под Visiology.
Некоторые компании мигрируют на Visiology не с Power BI, а с других BI-платформ. Там тоже могут быть мета-языки, и возникает вопрос — как перенести на DAX экспертизу, например, из Qlik Sense?
Наконец, не все аналитики вообще знакомы с DAX как таковым. И хотя язык освоить не сложно (по нему имеется огромное количество обучающих туториалов и материалов), нередко возникает задача написать запрос на DAX вообще без знания языка.
ViTalk GPT — способ решить все три проблемы
И вот тут полезными оказываются новейшие наработки в области искусственного интеллекта. В теории, если ИИ из семейства GPT взять и скормить все записи по DAX из интернета, а также информацию о поддержке DAX в текущих версиях Visiology, он должен начать вполне прилично готовить запросы для работы именно с вашими данными. На практике — получился как раз ViTalk GPT, который на сегодня демонстрирует стремительный рост числа пользователей.
Вот так выглядит интерфейс чат-бота. Вы можете сами найти его в Telegram по имени @vitalk_gpt_bot, и начать работу с системой.
Да, ViTalk GPT не шутит. Не нужно загружать в него конфиденциальные данные. :) В общем-то это и ни к чему. Бот помогает с формированием запросов, и максимум что стоит указывать ему — это названия таблиц, страниц, переменных.
Но давайте по порядку.
Чтобы приступить к работе с ViTalk GPT мы выбираем режим командой /mode.
Нам нужен Visiology DAX. Он будет отличаться от Power BI DAX просто потому, что некоторые функциииз Power BI не поддерживаются в Visiology. Но как вы сейчас увидите, это вообще не является проблемой для пользователей.
Давайте попросим ViTalk GPT показать долю исполненных вчера поручений.
ViTalk GPT предлагает нам вот такой код. Его волне можно использовать. Но, например, если мы хотим добавить контекста, не нужно снова спрашивать ViTalk GPT —, можно дополнить запрос
Например. Мы хотим обойтись без какой-либо функции…почему бы и нет?
ViTalk GPT предлагает вариант без ADD_COLUMNS. И, обратите внимание, сразу же учитывает, что оператор DIVIDE пока не поддерживается Visiology (кстати, в ближайшем релизе уже будет поддерживаться). И готовый код уже учитывает этот фактор.
А как же другие платформы
Учитывая обилие информации по наиболее популярным BI-платформам в интернете, а также референсов их запросов, ViTalk GPT может предложить переложение любого такого запроса на DAX (разумеется с учетом текущих возможностей Visiology 3).
Допустим, нам нужно переехать из Qlik. Спросим ViTalk GPT:
И получаем вполне приличный ответ, который можно использовать. Обратите внимание, опять же учитывается текущий уровень поддержки DAX в Visiology 3.
Для вашей структуры данных
Рассмотренные выше примеры придется еще адаптировать для своей задачи. Но этого можно избежать, если отдать ViTalk GPT сразу всю информацию о структуре данных и параметрах вашей задачи.
В качестве ответа мы получаем скрипт, который уже учитывает названия таблиц в вашей модели данных, и его (после небольшой проверки) можно просто вставлять в Visiology 3.
У «Виталика» — большое будущее!
Хотя наш чат-бот еще находится в стадии бета-тестирования (то есть его результаты надо на всякий случай перепроверять), он уже доказал свою полезность. По первым оценкам аналитики экономят порядка 20% времени на формулирование запросов. ViTalk GPT может предложить идеи конвертации запросов с других языков, а для тех, кто вообще не знаком с DAX — это отличный способ познакомиться и подготовить скрипт вообще без чтения обучающих материалов. Конечно, прочитать их придется, но если прямо сейчас времени нет, с ViTalk GPT появилась возможность учиться на примерах.
Как итог, работать с Visiology стало еще проще, порог входа стал еще ниже, а результаты в виде дашбордов и отчетов можно получить еще быстрее — и все благодаря ИИ.
Кстати, ViTalk GPT помогает не только с DAX, но и со скриптами Python, которые можно использовать в ViXtract для извлечения данных. Но об этом мы подробнее расскажем в следующем посте.