Searching with NLP


One of the most powerful aspects of the GoGoWorx system is the built in search functionality that allows you to fully harness the power Natural Language Processing (NLP).

All content that is generated in the GoGoWorx knowledge base is indexed using advanced NLP to allow for extremely fast searches to find information you're looking for, based on a number of options.

When searching, you can specify a word or phrase you are looking for, or you can ask a full question, such as "What is Knowledge Management".

Matching results will be returned in a ranked, prioritized list, showing what the NLP system determines as the most likely matches first. This is displayed in the Search Results page, allowing you to look through pages of results that are returned, if necessary.

Results listed in the Search Results page also include snippets from the beginnings of the articles shown, to give a sample of how each page starts, which is helpful when choosing the most appropriate page for your needs.

Note that only pages that you have permission to view are included in the search results. For example anonymous users who are not logged in or registered into the system will only see publicly visible articles, whereas other users would have access based on their assigned User Groups and User Roles .

Search Highlighting

To help you see where matches occur in result titles or in the short snippets returned from matching articles, keywords from your search will be highlighted in red to make them stand out as a visual cue, as shown in the image below.

Keyword Highlighting

Case Insensitive Searches

Note that to make life easier for you, searching is always performed without matching case, so searching for "Hello", "HELLO" or "hello" will all give the same results, even if there are articles containing odd casing such as  "hElLo", so just search for what you're looking for and let our Natural Language engine take care of the small stuff for you - you have more important things to do with your day.

Advanced Search

In addition to the normal search functionality described above, there is even an advanced mode, where you can specify some additional filtering parameters when searching to be more specific about the content returned.

To access the Advanced Search functionality, simply click on the Advanced Search option at the top right of the Search Page, which will expand to show the additional options, as seen in the image below:

Advanced Search Options

There are three options shown, with the top option (Find articles containing all of these words) being the same as the default search function.

The second option allows you to specify an exact phrase to search for, and only articles containing that exact phrase will be returned. This can be very helpful if you are working with commonly used words, but you know the article you are looking is likely to have a specific phrase within it.

Finally, the bottom option allows you to specify one or more words to search for in your knowledge base, and articles containing any of the listed words will be returned. In addition, there is an optional set of words you can specify to the right which will be excluded from the search, so for example, if you wanted to find all of the articles containing the words "API", "Endpoint" or "Group" in our support knowledge base, you would probably find there are quite a few articles that match, which is still manageable, but by specifying that you don't want to return any article that mentions the word "Category" (including derivatives, such as "Categories"), the number of returned articles drops to a much more manageable two

Clearly these are very simple examples, and you can quickly find how powerful the search functionality is once you start using it, and again, because it harnesses the power of NLP, the results are returned very quickly.

Try it for yourself - simply click on one of the search options you wish to use and type in the parameters to see the results appear. Once you have all of your own content in the GoGoWorx system, finding information should become much easier for you and your end users.

Additional Natural Language Processing Tips

In addition to the flexibility described above, which allows you to use NLP without even knowing its there, there are some additional tips that can help when searching.

If you look closely at the small message next to the search button on the image above, you will notice there is mentioned of "Connector Words" that are excluded or ignored from the search (unless you are searching for an exact phrase). These Connector Words, which are sometimes called Stop-Words are excluded to make the NLP process more efficient, since connector words are not really helpful when searching.

If these connector words, such as "a", "and" and "the" are simply ignored when searching, you end up getting more context-specific and meaningful results. One of the things that NLP does is to strip sentences into the component parts, or Parts of Speech (POS) to understand the syntax of the text. In addition to excluding connector words, other words are reduced to their base-form, where a word like "shouting" would use the base form "shout", the same as "shouted", "shouts" and "shouter" would. This provides a powerful lexical search, where even if you were looking for "shouting" and the text contained "shouted", you would still see a match, since the words have a very similar meaning.

Hopefully this brief overview of how Natural Language Processing works is useful and helps you appreciate some of the capabilities provided by the advanced search capabilities you have access to in GoGoWorx.