Convert natural language to filters

Custom create a system that can take natural language and convert it into a set of filters that can be to create sql.


Deep Text Analysis API

ThatNeedle Natural language processing API is the most convenient tool for text analysis of your user search queries. Using it as a text analyzer for better understanding of the natural language queries allows you to deliver better search results (i.e convert natural language to sql query) Better search results quality will lead to improved click-through rates.
Our deep learning of the retail domain is showing fantastic results. You should give it a try.



Fast API - getting faster

Fast analysis of natural language with average time of 3ms.
It's instant nature will enable you to use it as real-time NLP API for your business. Our NLP services are ideally suited for commercial use as a tool to enhance your ecommerce site.


Semantic search - better search relevance

Enable semantic search on your website without overhauling your databases, schemas. You can easily convert natural language to filters using our API and then easily create SQL query from there.
Our semantic analysis of user queries will enable semantic information retrieval on traditional non-semantic databases and schemas.
You will be able to receive structured information from unstructered text, and you can query your database using traditional SQL queries that you can created from structured information provided by our API.



Ready to be plugged in

Integration of the API into your search box is super easy with our cloud NLP api service.
All you need is to make call a url to process natural language queries and you will receive results as json formatted text instantly. All language processing is done in the cloud and you don't have to worry about establishing an expensive team of nlp experts or setting up hig-end machines. It is the easy way to convert english to sql query and give a natural language interface to your users.


See also our natural language named entity recognition utility

Natural language query processing

A lot of text that we see around is unstructured i.e. the text is not organised into fields or assigned to attributes as is done in traditional databases in the form of tables, rows, columns etc. An example of unstructured text could be an essay on a topic or even a few words query in natural language. In the real world a small query in natural language like "show me air tickets to chicago for christmas" or "i need a dell laptop with 8 gb ram" would need query parsing software or algorithm to understand the intent of the query. Behind the scenes such a parsed would be translated into a structured query "select * from table where x=x1;". A prerequisite for such a translation of natural language to sql ( structured query language ) would be to understand which value belongs to which field. This task needs to be done accurately or else the search results would be wrong. And this has to be done fast so that the end user does have to keep waiting.
When you are using a cloud based Application programming interface / API for natural language processing, you can make a simple HTTP request and receive a JSON formatted string from the server. This JSON formatted string can be used to generate structured queries which in turn can retrieve information from the database which may be relational database or a NoSql database.

Custom Natural language processing

Sooner or later, people feel the need for having a custom NLP tool that can perform according to their special needs because the ready made general purpose parsers and NLP tools do not fit the needs. If it is a machine learning enabled system that needs training it will need a lot of data from good datasets to be trained to be effective. More over you have to work to fit a generally trained model and datasets. Many times the economy of training an off the shelf ML ( machine learning ) system can be intimidating. The cost could be in the form of engineers, data scientists, programmers, architects, etc. even if the tool itself is free of cost or open source. Some such tools are mere acedamic and not commercial and may not be suitable for production. Some NLP tools are only cloud based whereas the needs could mean that you keep your data private and use an offline nlp tool. i.e a software that can be installed on your servers in your own data center. Tools like NLTK, StanfordNLP, OpenNLP will give your programming team something to start with but they will be starting right at the parts of speech tag level. Soon enough you might see yourself searching for someone with a PhD in computational linguistics or Machine learning or some one experienced with title of data scientist. Any software will take a whole lot of work beyond mere pos tagging before it can be useful to any business in any way. You can either ask us to create an NLP based component based on our proprietary nlp stack or use one of our entity extraction components to build something useful yourself.

English to filters for SQL generation