I've done some previous digging into natural language SQL queries -- there's a good amount of research around this. But the error rate is always too high for useful production deployment and the systems I've looked at never handled ambiguity well. The target user for this is someone who knows nothing about SQL so ambiguity is guaranteed.<p>Most importantly, you can't have the system confidently answer incorrectly.<p>I just tested this query to evaluate joins: "What is the name of the series with the highest rating?" The answer: 5.8 :/<p>A typical user will be even less clear than this, asking the question as: "What's the top tv series?"<p>The ideal system should be able to confirm with the user that 1) they'd actually like to evaluate tv series based on rating. And 2) it should be able to guess without user confirmation that I really want the 'name' of the tv series.<p>It's a hard problem but massively valuable if it can be solved.
I tried "What are the names of all the workers" but it didn't understand. So it doesn't seem to take slightly-vague input. (The schema has a workers table with fields first name and lastname)<p>When I have to be precise, I'm better off using SQL directly.
IMHO, this type of transformation is best done via traditional symbolic methods that also provide explanations with support, alternate outputs based on context/constraints, etc. It's ok for a symbolic transformation system to have the <i>help</i> of connectionist black-boxes that act as oracles, but the entire <i>system</i> should not be a black box.
This has been one of the more compelling demo areas for GPT-3 as well (ex: <a href="https://www.youtube.com/watch?v=WlMHYEFt2uA" rel="nofollow">https://www.youtube.com/watch?v=WlMHYEFt2uA</a>) -- are there any open AI efforts here?
Does it work for browsing by dates.. real user may ask date range in various ways.. e.g. give my previous month/ a date/quarter/weeks etc.. the demo didn't have dates in data I belive