Natural Language Search🔗
Natural language search helps users create structured semantic queries easily. Natural language search overcomes the difficulty of learning the appropriate field names and their allowed values for each aspect of a search request. A user can simply formulate a request in natural language, and an AI-powered service transforms it into a suitable query for the given Search environment. If some aspects of the request cannot be mapped to known concepts, then natural language search provides a warning message.
The natural language search feature roughly works in two steps:
- extract keywords from the natural language input related to the supported concepts such as job title, location, skills, etc.
- map the extracted keywords to the correct fields according to the search environment configuration.
If part of the input could not be mapped, then a warning message is provided in the response, indicating that part of input was unused.
Natural language search uses large-language-models (LLMs) which are non-deterministic, so the same input may generate different query results. That is normal/expected behaviour.
Usage🔗
Your system's user interface may look different, but here are examples of how the feature is presented in the Textkernel Search user interface.
- When typing in a search query, the natural language service is available as an option to generate the search, alongside the other auto-completion suggestions under the drop-down menu:

- Type in a longer natural language expression to build up your query

- The natural language expression is converted into a series of search terms and the search results are presented:

Recognized Search Concepts🔗
Natural language search uses the configured Concept Tags in the search environment configuration to map semantic aspects of the natural language query to the respective fields configured in the search index.
The following table gives an overview of the search concepts that are recognized by natural language search. Many standard concepts are supported as standard. There are a few concepts that are custom and require paid configuration to enable them. In addition, if you want to use natural language search with a concept that is not listed below, but is indexed, then it may be possible to add support for the concept through paid configuration. For paid customizations please contact your account manager:
| Natural Language Concept | Description | Standard or Custom |
|---|---|---|
| AVAILABLE_FROM | Date from which candidate is available to start a new position | Standard |
| DEGREE_NAME | The degree name for a candidate | Standard |
| EDUCATION_LEVEL | The highest education level of a candidate | Standard |
| EMPLOYER | The latest employer of a candidate or the employer organization for a vacancy | Standard |
| FULLTEXT | Full text of the CV or the Vacancy | Standard |
| IT_SKILLS | IT skills, ideally as a normalized code-based field | Standard |
| JOB_TITLE | The job title of a vacancy | Standard |
| JOB_TITLES | All job titles from a candidate's employment history | Standard |
| LANGUAGE_SKILLS | Language skills as a normalized code-based field | Standard |
| LAST_ACTIVE | Date of last candidate activity | Custom |
| LAST_JOB_TITLE | The most recent job title of a candidate | Standard |
| LAST_MODIFIED | The last modification date of a CV (Candidate) - this is automatically set by Search | Standard |
| LOCATION | The job or candidate location | Standard |
| PROFESSIONAL_SKILLS | Professional skills, ideally as a normalized code-based field | Standard |
| RECENT_JOB_TITLES | Only recent job titles from a candidate's employment history | Standard |
| SALARY_RANGE | Salary range of a vacancy or candidate | Custom |
| SOFT_SKILLS | Soft skills, ideally as a normalized code-based field | Standard |
| WORK_FIELD | The work field object indicates the overall seniority and profession type of the CV (Candidate) or Vacancy (Job) | Standard |
| EXPERIENCE_LEVEL_CV | Subfield of WORK_FIELD. Overall experience level of the CV | Standard |
| EXPERIENCE_LEVEL_VAC | Subfield of WORK_FIELD. Overall experience level of the vacancy | Standard |
| PROFESSION_GROUP | Subfield of WORK_FIELD. The normalized profession group code | Standard |