During your conversations with Crystal, you will come to want more detailed information about your data, and that is where filters come in.
Filters help narrow the field from more general questions (such as "What is the sales trend?") to a more detailed result, confined, for example, to a geographic area ("What is the sales trend in the UK?"), a time period ("What is the sales trend for 2021?"), or a particular product segment ("What is the sales trend for sneakers?").
In this way, we can get very precise information and particularly detailed answers.

How to best use Filters

Filters can be:
  • numeric (e.g. currencies, item codes, or sizes), either positive or negative;
  • non-numeric (e.g. countries, towns, areas, item names, customer names).
Crystal can recognize words and phrases even if they are not perfectly spelt or incomplete (e.g. "Show me the sales trend in the United Kingdom") and it has the highest flexibility in recognising time filters too.
In fact, you can spell:
  • Month & Day as Numbers - e.g. “Total of Sales for 2022 10”, “Total of Sales for 2022 10 7”.
  • Month as a Word - e.g. "Total of Sales for 2022 October” or “Total of Sales for October 2022”.
  • Month Abbreviations - e.g. “Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec”.
Whilst using the product in a language different from English, you can use English translations when referring to time aggregations (day, week, month, quarter, semester, year) or months (January, February, March, etc.) in your sentences.
Crystal will understand them and correctly apply them to the Topics as if they were not written in English.
Even how you write numbers will not affect Crystal's ability to understand: 1,000 and 1,000 are the same value.
To be 100% sure that you are getting the correct result, we recommend when setting them up to:
  • use as short and simple values as possible for filter Aliases (e.g. sneakers x3 instead of "Super High-Quality Summer Range High X3" or "Milan branch" instead of "North Italy- Milan branch" );
  • Be specific when adding filters to a question;
  • Remove redundant punctuation and spaces;
  • Do not make values case-sensitive.
As you will get used to talking to Crystal, you will be able to specify a single Dynamic Filter and multiple Filter Values at the same time in your Conversation in such a way that you will not have to type the Dynamic Filter Name for each Filter Value you wish to apply to the Topic, resulting in a smoother conversation with Crystal!

Exclude a specific Filter Value

If you wish, you can exclude a specific value using filters when asking about a Topic.
For example, you may want to ask for the distribution of sales excluding a specific country.
In this case, you can ask Crystal: "Show me the distribution of sales excluding Spain".
Or, if you are monitoring energy production at a plant, you might ask Crystal about the "Comparison between actual budget and budget without considering "energy losses" ".
For this type of interaction, the formulas to use to be sure Crystal understands are "other than, without, excluded, except, without considering" before the value to be excluded.

Edit filters in the Topic Card

You can edit Filters directly in the Topic Card as well. To do so, just click on the Ask button below and follow the instructions. A new screen will prompt allowing you to apply one or more Filters to the Topic itself (including the Time Filter).

Filter Classification

Generally, when a user requests to apply a filter in a conversation with the Advisor, two possible scenarios can occur:
  • The system recognizes the filter by exact match, for example when the question is "Show me the total sales for France" and the filter is "France".
  • The system recognizes the filter by partial match, for example when a user asks: "Show me the total sales for "Italy" while the filter is "North-Italy".
Let's see in detail how these logics work:

Exact Match

The text included in the question is exactly the same as it appears in the data source (unless a change is already included in the preprocessing, such as the presence of punctuation marks or special characters).
This is the easiest case for the system to recognize: if the filter is "Italy" the user will write "Italy" in the question and the system will recognize it immediately.

Partial Match and Disambiguation

Sometimes it may happen that you do not enter the filter value by typing it exactly, or that some parts of the filter are missing in the question.
In this case, it is referred to as a partial match and the machine-learning model NER (Named-entity recognition) will intervene.
NER is a search engine that can analyze all words within sentences and return a ranking of the most relevant terms, and the highest-scoring words will be returned as possible filter values.
If, as in the case of the "North-Italy" filter, you had accidentally typed "nrd Italy" in the question to the Advisor the search engine will find possible filter values:
  1. 1.
  2. 2.
  3. 3.
  4. 4.
"North-Italy" having a higher score will be the closest to the value typed and will be recognized as the filter value without the need for user-side intervention.
If, on the other hand, you wanted to know the total sales for the Australian market, but simply typed "Total Sales for Austr" with both Australia and Austria present in your data, the NER will find two equivalent values:
  1. 1.
  2. 2.
Since Crystal cannot be sure which of the two you are referring to, the Disambiguate feature will have to come into play which will allow you to choose the result you wanted to get with the original question.
The Natural Language Process models relies on both the meaning of words and sentence structure: therefore, it is useful to introduce the filter value with words such as "for," "in," and so on. For example, writing "Show me total sales for France" is better than "Total sales France".

Aliases of Entities and Filters

We can associate Aliases to be used within the Conversation regarding both entities and filters: read this article to learn more.