Quid Natural Language Search

Project

Quid Natural Language Search

My Role

Director of Design

Category

Systems Design

Year

2019

Summary

Enabling users to search in natural language pre-GPT era.

Introduction

Quid is a data visualization tool that allows users to search through millions of documents in order to aggregate them in broader themes based on language similarity, providing a high level view of how the data is segmented. Searching for the relvant set of documents to analyze is an essential step in Quid to ensure a good analysis. The goal of this project was to enable users to ask Quid a question in natural language, and translate it conversationally into a backend boolean query.

Team

UX Design: Radhika Sawhney

Problem Statement

To create a system where users can **ask Quid their question** in natural language, get back the most **releveant set of documents**, curate the search results in a conversational manner.

Project Goals

Research

In order to understand the user intent the first step was to study the type of questions they were asking Quid. Typically, Quid questions are broad, strategic questions that inform high stakes decisions such as defining the marketing narrative, identifying key accquisition or partnership targets, etc.

  • Understand the universe of **user questions** based on different datasets.
  • Analyze them to identify patterns that could be standardized to **create taxonomies**.
  • **Group similar questions** to create a structural template for the questions.

Structural Map

Once the questions were narrowed down, the next step was to break down the sentence structure to its foundational pieces. The goal of this activity was to identify patterns that could be used to classify concepts into modular units, and create a framework for understanding user intent based on combining smaller units of information.

The questions were broken down into the following modular units:

  • **Usecases:** Public Narrative, Media Perception, Market Landscape...
  • **Boolean Operators:** AND, OR, NOT...
  • **Entities:** Company, Organisation, Institute, Person...
  • **Topic:** Keywords, Product, Industry...
  • **Filters:** News Sources, Geography, Demographics...

Question Map

Understanding a Topic in context of another topic:

**Use case** + **Topic** (Issue) + **Operator** + **Topic** (Keyword)

Understanding a Use case in context of an Industry:

**Use case** + **Topic** (Industry)

Understanding a Use case in context of an Event:

**Use case** + **Topic** (Event)

Understanding Companies in context of an Industry:

**Entity** (Company) + **Topic** (Industry)

Understanding a Use case in context of a Company and an Event:

**Use Case** + **Entitiy** (Company) + **Topic** (Event)

Understanding a Company through the lens of News Sources :

**Entity** (Company) + **Filter** (News Sources)

User Journey

Based on previous user research and best practices for creating an effective search, the user flow was mapped as follows:

Conversational UI

**Decision Tree**

In order to create a conversational flow, I created a decision tree to map various paths that lead from the user question to the boolean syntax. Here is an example of one of the user questions:

**Step 1: Express Intent**

As per the journey, the first step was to understand the intent of the user, and allow them to **broaden their search**. This inlcuded identifying the various components (topics, entitites, etc.) and expanding those to yield a diverse set of documents.

Quid extracts the **use case** based on a repository of keywords mapped to that use case.

Quid identifies **topics** and probes the user to add additional terms to expand upon their topic. This could be either through recommendation provided by the platform, or users can enter their own terms.

**Step 2: Recieve Feedback**

At any point in the conversation, users can get feedback in the form of **article counts**. This helps them understand how their query is being affected as they add or remove components.

**Step 3: Curate Results**

Curation is a key part of having a clean, noise-free analysis. Users can leverage the Quid relevancy model that let's them **rate a certain number of articles** to pull in the most relevant ones. Quid learns from the user ratings and automatically removes articles that are similar to the lower rated ones, while including articles similar to the higher rated ones.

Users can further narrow down their search by filtering through meta data such as news sources, geography, demographics, etc.

For example, in filtering through news sources, users can either add or remove specific publications of interest, or filter through pre-defined categories.

Users can set a time frame for their analysis. Depending on the data set, time would be calculated by the published date of a news article, the founding date of a company, or the filing date of a patent.

Design

**Quidbot Prototype**

After testing the conversational flow, one of the biggest point of feedback was to show the users how their query was being crafted and give them the ability to edit it. The design evolved into a chat interface that assists the user to build a boolean query that they could interact with and edit in the query editor.

Click through the prototype or use the arrow keys to navigate through the screens.

**Design Details**

The final design is a hybrid between a conversational and an interactive interface that allows users to type in the input field as well as select various options to make their decisons.

The design provides users transparency into how the query is constructed in the backend as they make their decsions. The interface allows them to add new strings, re-order, or edit exisiting strings.

Next Steps