SQLAgent: Learning to Explore Before Generating as a Data Engineer
Wenjia Jiang, Yiwei Wang, Boyan Han, Joey Tianyi Zhou, Chi Zhang
TL;DR
SQLAgent addresses the limited generalization of Text-to-SQL systems to unseen, enterprise-scale databases by decoupling knowledge acquisition from query generation. It uses an Exploration Stage where an LLM-guided MCTS-like process constructs a database-specific knowledge base of schema triplets $(S, Q, U)$, and a Deployment Stage where a dual-agent loop InfoAgent/GenAgent leverages these triplets as in-context examples to iteratively synthesize accurate SQL. The approach yields significant accuracy gains on large benchmarks like Spider 2.0-Snow, with ablations showing the value of the exploration knowledge and the collaborative synthesis. Its offline knowledge-building plus inference-time retrieval offers improved robustness and efficiency for complex, multi-step SQL reasoning in real-world databases.
Abstract
Large Language Models have recently shown impressive capabilities in reasoning and code generation, making them promising tools for natural language interfaces to relational databases. However, existing approaches often fail to generalize in complex, real-world settings due to the highly database-specific nature of SQL reasoning, which requires deep familiarity with unique schemas, ambiguous semantics, and intricate join paths. To address this challenge, we introduce a novel two-stage LLM-based framework that decouples knowledge acquisition from query generation. In the Exploration Stage, the system autonomously constructs a database-specific knowledge base by navigating the schema with a Monte Carlo Tree Search-inspired strategy, generating triplets of schema fragments, executable queries, and natural language descriptions as usage examples. In the Deployment Stage, a dual-agent system leverages the collected knowledge as in-context examples to iteratively retrieve relevant information and generate accurate SQL queries in response to user questions. This design enables the agent to proactively familiarize itself with unseen databases and handle complex, multi-step reasoning. Extensive experiments on large-scale benchmarks demonstrate that our approach significantly improves accuracy over strong baselines, highlighting its effectiveness and generalizability.
