Example demonstrating how to use Pydantic AI to generate SQL queries based on user input.
Demonstrates:
The resulting SQL is validated by running it as an EXPLAIN query on PostgreSQL. To run the example, you first need to run PostgreSQL, e.g. via Docker:
docker run --rm -e POSTGRES_PASSWORD=postgres -p 54320:5432 postgres(we run postgres on port 54320 to avoid conflicts with any other postgres instances you may have running)
With dependencies installed and environment variables set, run:
python/uv-run -m pydantic_ai_examples.sql_genor to use a custom prompt:
python/uv-run -m pydantic_ai_examples.sql_gen "find me errors"This model uses gemini-3-flash-preview by default since Gemini is good at single shot queries of this kind.
snippet {path="/examples/pydantic_ai_examples/sql_gen.py"}