Skip to content
Pydantic AI

Agente Text-to-SQL con Pydantic AI

Construye un agente de lenguaje natural a SQL que convierte preguntas en consultas de base de datos, las valida y devuelve resultados formateados — con Pydantic AI.

SQLdatabaseNL2SQLdata

Código funcional

Pydantic AI
from pydantic_ai import Agent, RunContext
from langchain_community.utilities import SQLDatabase
from langchain_community.agent_toolkits import SQLDatabaseToolkit
agent = Agent(
"openai:gpt-4o",
system_prompt="You are a SQL analyst. Convert natural language questions into SQL queries. Only use SELECT statements. Limit results to 10 rows.",
)
@agent.tool
async def list_tables(ctx: RunContext) -> str:
"""List all tables in the database."""
return "\n".join(inspector.get_table_names())
@agent.tool
async def run_query(ctx: RunContext, sql: str) -> str:
"""Execute a read-only SQL query and return results."""
if not sql.strip().upper().startswith("SELECT"):
return "Error: Only SELECT queries are allowed."
result = db.execute(text(sql))
rows = result.fetchmany(10)
return "\n".join(str(row) for row in rows)
result = await agent.run("Show me top 5 customers by total spending this quarter")
print(result.output)

Paso a paso

1

Instalar dependencias

Instala Pydantic AI y las herramientas necesarias para este caso de uso.

2

Definir herramientas

Crea las funciones de herramientas específicas del dominio que tu agente usará para interactuar con servicios externos.

3

Crear el agente y ejecutar

Inicializa el agente de Pydantic AI con tus herramientas, establece el prompt del sistema y ejecuta una consulta.

¿Listo para construir con Pydantic AI?

Genera un proyecto listo para producción con Pydantic AI preconfigurado — FastAPI + Next.js, auth, streaming y más.

Comenzar

¿Listo para construir tu primer agente IA en producción?

Herramientas open-source, patrones probados en batalla, cero boilerplate. Configura tu stack y despliega en minutos — no meses.