Please, could someone explain to me how the NLSQLTableQueryEngine works on the backend? Specially interested in understanding how the schema is generated, what it looks like and what checks it does to build the SQL query. It does a quite good job. Better understanding it would help to ensure it writes usable queries.
Thanks @Logan M I was playing with this. If I am honest I thought it must be doing something more. I was trying to do my own implementation with DSPy so that I can evolve it to do more complex reasoning (like Chain of Tables). But I got much lower performance with DSPy than Llamaindex (same llm, same prompt). I don't understand why.