QueryWeaver: Transform Natural Language into SQL with Graph-Powered Text2SQL

QueryWeaver: Transform Natural Language into SQL with Graph-Powered Text2SQL

Summary

QueryWeaver is an open-source Text2SQL tool that allows users to query databases using plain English. It leverages graph-powered schema understanding to accurately convert natural language questions into SQL. This simplifies database interaction, making data accessible without deep SQL knowledge.

Repository Info

Updated on March 23, 2026
View on GitHub

Introduction

QueryWeaver is an innovative open-source Text2SQL tool developed by FalkorDB. It empowers users to interact with their databases using natural language, transforming plain English questions into precise SQL queries. By employing graph-powered schema understanding, QueryWeaver accurately interprets user intent and database structure, making data access more intuitive and efficient for everyone, regardless of their SQL proficiency.

Installation

Getting started with QueryWeaver is straightforward, especially using Docker for quick evaluation.

Docker (Recommended for evaluation):

docker run -p 5000:5000 -it falkordb/queryweaver

After running this command, you can launch QueryWeaver in your browser by navigating to http://localhost:5000.

For more advanced configurations, such as setting environment variables for AI providers or custom settings, you can utilize an .env file or pass individual environment variables directly to the Docker command. Refer to the official GitHub repository for detailed setup instructions.

Examples

QueryWeaver exposes a powerful REST API for managing graphs (database schemas) and executing Text2SQL queries. All user-scoped operations require authentication via a bearer token.

1. List Graphs (GET)

Retrieve a list of available graphs for the authenticated user.

curl -s -H "Authorization: Bearer $TOKEN" \
   https://app.queryweaver.ai/graphs

2. Query a Graph (POST)

Run a chat-based Text2SQL request against a named graph. The endpoint streams processing steps and the final SQL back to the client.

curl -s -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
   -d '{"chat": ["Count orders last week"]}' \
   https://app.queryweaver.ai/graphs/my_database

This example demonstrates how to query my_database to count orders from the last week using a natural language prompt.

Why Use QueryWeaver?

QueryWeaver stands out as a powerful solution for database interaction due to several key features:

  • Natural Language Interface: Ask database questions in plain English, significantly reducing the need for complex SQL query writing.
  • Graph-Powered Schema Understanding: Utilizes advanced graph technology to accurately interpret database schemas and user intent, leading to more precise SQL generation.
  • Open-Source and Flexible: As an open-source project, it offers transparency, community support, and extensive customization options. It supports integration with multiple AI providers, including OpenAI, Gemini, Anthropic, Azure, and Ollama.
  • Robust REST API: Provides a comprehensive API for seamless integration into existing applications, dashboards, and automated workflows.
  • Conversation Memory: Stores per-user conversation memory in FalkorDB, enabling more natural, contextual, and continuous interactions over time.

Links