Overview
- This workflow aims to provide data visualization capabilities to a native SQL Agent.
- Together, they can help foster data analysis and data visualization within a team.
- It uses the native SQL Agent that works well and adds visualization capabilities thanks to OpenAI’s Structured Output and Quickchart.io.
How it works
-
Information Extraction:
- The Information Extractor identifies and extracts the user's question.
- If the question includes a visualization aspect, the SQL Agent alone may not respond accurately.
-
SQL Querying:
- It leverages a regular SQL Agent: it connects to a database, queries it, and translates the response into a human-readable format.
-
Chart Decision:
- The Text Classifier determines whether the user would benefit from a chart to support the SQL Agent's response.
-
Chart Generation:
- If a chart is needed, the sub-workflow dynamically generates a chart and appends it to the SQL Agent’s response.
- If not, the SQL Agent’s response is output as is.
-
Calling OpenAI for Chart Definition:
- The sub-workflow calls OpenAI via the HTTP Request node to retrieve a chart definition.
-
Building and Returning the Chart:
- In the "Set Response" node, the chart definition is appended to a Quickchart.io URL, generating the final chart image.
- The AI Agent returns the response along with the chart.
How to use it
- Use an existing database or create a new one.
- For example, I've used this Kaggle dataset and uploaded it to a Supabase DB.
- Add the PostgreSQL or MySQL credentials.
- Alternatively, you can use SQLite binary files (check this template).
- Activate the workflow.
- Start chatting with the AI SQL Agent.
- If the Text Classifier determines a chart would be useful, it will generate one in addition to the SQL Agent's response.
Notes
- The full Quickchart.io specifications have not been fully integrated, so there may be some glitches (e.g., radar graphs may not display properly due to size limitations).