Open Letter to BI Companies — Project DashboardAI
Hello, Analytics, Managers, and Founders of Business Intelligence companies!
I am developing the Wikibot service, which learns from documentation and advises users in chat as a first-line support specialist. Our chatbot understands questions and responds like a human.
The world is moving towards the use of AI assistants. People like getting results by simply giving commands in their native language.
I propose that, together with my team, we create the product Dashboard.AI, which will have the following functionality:
- Report Search. A manager can ask the bot to find a specific report. For example: "Find a report on advertising expenses for the past year." Based on the list of reports in the data catalog, Confluence, or another wiki, the bot sends a link to the chat.
- Writing SQL Queries. Instead of searching for a specific report, a manager writes to the bot in the chat: "Profit in Moscow for electronics from May to July." The bot sends the necessary metrics and a link to the relevant report, with applied filters. If there is no suitable report, it writes the SQL query itself.
- Automatic Dashboard Creation. A manager can ask the chatbot to create a dashboard. The bot, asking a few clarifying questions, will choose the optimal template and assemble all the necessary SQL queries and filters.
Implementation
Report Search. The list of reports is usually located in the knowledge base, documentation, or data catalog. Modern products, such as SiteGPT, ChatBase, WonderChat, Wikibot (hereinafter the agent), excel at semantic search:
Documentation is indexed and stored in a vector database.
When a user enters a query, the vector base finds the 5-10 closest vectors (semantic search). Each vector represents the name and description of the report.
The user's query and the top close vectors are sent to the LLM - a large language model (LLaMA, Falcon, Google Bard, Anthropic Claude), and it selects reports that fit the user.
Writing SQL Queries Modern LLMs already write SQL fairly well (an article comparing GPT, Claude, Bard: Great SQL Bot Bake Off). To do this, you need to ask a question and pass a description of the tables in the prompt. After receiving the user's query, the agent can take the table names from the documentation and all the fields of the table from the metadata of the DBMS.
Currently gaining traction are projects:
- DB-GPT - allows generating queries to databases using local LLMs
- PandasAI - makes pandas (and other popular data analysis libraries) conversational, allowing you to ask questions to your DataFrame in natural language.
Automatic Dashboard Creation GPT, given a data table, can already choose the most significant and suitable columns for visualization. A comprehensive example of how to do this is described in the article "Create AI-powered dashboards" Create AI-powered dashboards. Adding to this dashboard templates, various best practices in the form of heuristics, and clarifying queries from the bot, you can get a Junior BI developer.
Looking to the Future
In the implementation section, I described what can be done right now.
A couple of ideas for the future: If you teach the "Dashboard_AI" project to create dashboards, the next step will be the ability to transfer dashboards from one system to another. Currently, a huge amount of resources is required to transfer a company's analytical reporting to an alternative BI product. In addition, it will be possible to create dashboards immediately for several popular products (Tableau, Power BI, Superset, Metabase, Redash).
A personal analyst who helps managers quickly get the necessary metrics and find insights can become a highly demanded product.
Contact me if:
- You are interested in adding the above functionality to your product.
- You want to create a similar product in collaboration with our team, based on popular BI products (Tableau, Power BI, Superset, Metabase, Redash).
The world is moving towards the use of AI assistants. People like getting results by simply giving commands in their native language.
Supercharge your customer support
24/7
Available
95%
Processing tickets
40%
Resolving tickets