Redash, enhanced with a chatbot plugin, enables seamless conversational interactions for data exploration, analysis, and knowledge discovery. Users can inquire about dashboard information or generate SQL queries using Language Model-based techniques, facilitating autonomous knowledge discovery and data-driven decision-making.
-
Conversational Queries: Users can interact with Redash using natural language queries, making the process more intuitive and user-friendly.
-
Interactive Responses: ChatGPT generates human-like responses, providing users with informative and contextual feedback on their queries.
-
Data Visualization: The plugin allows users to visualize query results directly within the chat interface, enabling faster data exploration and analysis.
- Install needed packages:
$ sudo apt -y install docker.io docker-buildx docker-compose-v2
$ sudo apt -y install build-essential curl docker-compose pwgen python3-venv xvfb
$ pip install -r requirements.txt
- Add your user to the "docker" group:
$ sudo usermod -aG docker $USER
- Install Node Version Manager
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
-
Close and open the terminal so that nvm can be available.
-
Install NodeJS version 16
$ nvm install --lts 16
$ nvm alias default 16
$ nvm use 16
- Install Yarn 1.x
$ npm install --global yarn@1.22.19
- Clone the Redash source code and install the NodeJS dependencies
$ git clone https://github.com/natybkl/Redash-chatbot-add-on
$ cd redash-source-code
$ yarn
- Generate your local environment variables file
$ make env
Add your OpenAI API key, with the name indicated below in the .env file:
OPENAI_API_KEY=*****************************************
- Build the Redash front end
$ make build
- Build local Redash Docker image
$ make compose_build
- Start Redash locally, using the docker images you just built
$ make create_database
$ make up
The Redash web interface should also be available at http://localhost:5001, ready to be configured.
- **Once you've finished confirming everything works the way you want, then shut down the containers with: **
$ make down