QABot
FreeQuery local or remote files or databases with natural language queries powered by langchain and openai 
FreeFree tier
About QABot
QABot is an open-source command-line tool that enables natural language queries on local or remote data files using OpenAI's GPT models and DuckDB. It can query CSV, SQLite, Excel files, remote CSV files, and data stored in S3. Users can load data interactively within a session and ask questions in plain English; QABot translates these into SQL queries and executes them against a DuckDB database, returning the answer along with the SQL used. The tool is designed for quick data exploration without requiring SQL knowledge.
Key Features
Natural language querying of local files (CSV, SQLite, Excel)
Query remote CSV files and S3-hosted datasets
Uses DuckDB as the query engine
Generates and displays SQL queries used to answer questions
Interactive session allows loading data via natural language
Supports OpenAI-compatible APIs via OPENAI_BASE_URL
Pros & Cons
Pros
- Open source and free to use
- Works with multiple file and data formats (CSV, SQLite, Excel, S3)
- Transparent: returns the SQL query used for each answer
- Can load data on the fly from URLs or local paths
- Lightweight CLI tool, installable via uv, pipx, or pip
Cons
- Requires an OpenAI API key (or other compatible provider)
- Currently relies on DuckDB; may not support all databases natively
- Command-line interface only, no graphical user interface
- Limited to file-based data sources; no direct support for live databases
Best For
Quick data exploration without writing SQLAnalyzing spreadsheets and CSV files via natural languageQuerying public datasets hosted on S3Teaching and learning SQL by viewing generated queriesAutomating data analysis tasks in CI/CD pipelines (CLI-friendly)
FAQ
What data sources does QABot support?
QABot can query local files (CSV, SQLite, Excel), remote CSV files, and data stored in S3. It uses DuckDB internally to load and query this data.
Is QABot free to use?
Yes, QABot is open source and free to install, but you need to provide your own OpenAI API key or set up an OpenAI-compatible API endpoint.
Do I need to know SQL to use QABot?
No, QABot allows you to ask questions in natural language. It generates the corresponding SQL query and runs it against your data.
How do I install QABot?
You can install QABot using uv, pipx, or pip: 'uv tool install qabot' (or 'pip install qabot'). You also need to set the OPENAI_API_KEY environment variable.