Why NL-to-SQL Systems Fail: Lessons from building a Semantic SQL validation pipeline

When I first started working on NL-to-SQL systems, I thought the hard part would be generating SQL from natural language, I was so wrong.