{
    "componentChunkName": "component---src-templates-doc-page-js",
    "path": "/docs/en/NLU_core/advanced_classifer_settings/",
    "result": {"data":{"site":{"siteMetadata":{"title":"Gatsby-doc-engine"}},"markdownRemark":{"id":"db99c178-d502-5f6c-8e4b-ccfb9120136c","excerpt":"Extended NLU settings?> You can define new settings to configure NLU when you create or edit your project. Settings are passed in the text form within a JSON…","html":"<h1>Extended NLU settings</h1>\n<hr>\n<p class='warn'><a href=/1.10.3/docs/en/platform_ux/nlu_core_caila/project_setting  >You can define new settings to configure NLU when you create or edit your project</a>. Settings are passed in the text form within a JSON object.</p>\n<p class='tip'>You must specify your parameters according to the <a href=/1.10.3/docs/en/platform_ux/nlu_core_caila/project_setting  >project’s classifier algorithm</a>.</p>\n</br>\n<h3>Common settings</h3>\n<p>Common settings include parameters that do not depend on the algorithm of the classifier in the project:</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token punctuation\">{</span>\n    <span class=\"token property\">\"patternsEnabled\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"tokenizerEngine\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"udpipe\"</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"dictionaryAutogeneration\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<h4>Parameters</h4>\n<ul>\n<li><code class=\"language-text\">patternsEnabled</code> — if the parameter is active, it is possible to use patterns in training phrases.</li>\n<li><code class=\"language-text\">tokenizerEngine</code> — tokenizer.</li>\n<li><code class=\"language-text\">dictionaryAutogeneration</code> — when the parameter is active, the filling of the user dictionary by entity content is executed.</li>\n</ul>\n</br>\n<h4><code class=\"language-text\">tokenizerEngine</code></h4>\n<p>Depending on the language of the NLU you need to use different types of tokenizers.</p>\n<table>\n<thead>\n<tr>\n<th align=\"center\">NLU language</th>\n<th align=\"left\">tokenizerEngine</th>\n<th align=\"left\">Additional information</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"center\">Russian</td>\n<td align=\"left\"><code class=\"language-text\">udpipe</code> </br> </br> <code class=\"language-text\">mystem</code> </br> </br> <code class=\"language-text\">morphsrus</code></td>\n<td align=\"left\">The default is <code class=\"language-text\">udpipe</code>. </br> </br> Tokenizers <code class=\"language-text\">mystem</code> and <code class=\"language-text\">morphsrus</code> are used for migration of projects from patterns to CAILA.</td>\n</tr>\n<tr>\n<td align=\"center\">English</td>\n<td align=\"left\"><code class=\"language-text\">spacy</code> </br> </br> <code class=\"language-text\">udpipe</code></td>\n<td align=\"left\"></td>\n</tr>\n<tr>\n<td align=\"center\">Chinese</td>\n<td align=\"left\"><code class=\"language-text\">pinyin</code></td>\n<td align=\"left\"></td>\n</tr>\n<tr>\n<td align=\"center\">Portuguese</td>\n<td align=\"left\"><code class=\"language-text\">udpipe</code></td>\n<td align=\"left\"></td>\n</tr>\n</tbody>\n</table>\n</br>\n<h3>STS</h3>\n<p>STS classifier settings:</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token punctuation\">{</span>\n    <span class=\"token property\">\"patternsEnabled\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"namedEntitiesRequired\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"tokenizerEngine\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"udpipe\"</span><span class=\"token punctuation\">,</span>\n\n    <span class=\"token property\">\"stsSettings\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token property\">\"exactMatch\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1.0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"lemmaMatch\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.95</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"jaccardMatch\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.5</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"jaccardMatchThreshold\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.82</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"acronymMatch\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1.0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"synonymMatch\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"synonymContextWeight\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"patternMatch\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"throughPatternMatch\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"wordSequence1\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.8</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"wordSequence2\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.9</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"wordSequence3\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1.0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"intermediateAlternativesLimit\"</span><span class=\"token operator\">:</span> <span class=\"token number\">5</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"finalAlternativesLimit\"</span><span class=\"token operator\">:</span> <span class=\"token number\">5</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"idfShift\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"idfMultiplier\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1.0</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"namedEntitiesRequired\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span><span class=\"token punctuation\">,</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<h4>Parameters</h4>\n<ul>\n<li><code class=\"language-text\">exactMatch</code> — weight of an exact word match in phrases.</li>\n<li><code class=\"language-text\">lemmaMatch</code> — weight of a lemma word match.</li>\n<li><code class=\"language-text\">jaccardMatchThreshold</code> — weight of a Jaccard-based symbol-by-symbol word match.</li>\n<li><code class=\"language-text\">acronymMatch</code> — weight of an acronym-based word match.</li>\n<li><code class=\"language-text\">synonymMatch</code> — weight for synonyms.</li>\n<li><code class=\"language-text\">synonymContextWeight</code> — weight applied during ranking to the <code class=\"language-text\">weight</code> value from the synonym reference book.</li>\n<li><code class=\"language-text\">patternMatch</code> — weight of a pattern-based match.</li>\n<li><code class=\"language-text\">throughPatternMatch</code> — weight of a match by entities found in the example and the input text.</li>\n<li><code class=\"language-text\">wordSequence1</code> — weight of lookalike sequences with the length equal to 1.</li>\n<li><code class=\"language-text\">wordSequence2</code> — weight of lookalike sequences with the length equal to 2.</li>\n<li><code class=\"language-text\">wordSequence3</code> — weight of lookalike sequences with the length greater than 2.</li>\n<li><code class=\"language-text\">intermediateAlternativesLimit</code> — cutoff threshold for intermediate alternatives processed by the algorithm.</li>\n<li><code class=\"language-text\">finalAlternativesLimit</code> — maximum number of final results required for the algorithm to finish its work.</li>\n<li><code class=\"language-text\">namedEntitiesRequired</code> — in order to get into the intent, the phrase must have a system entity.</li>\n</ul>\n</br>\n<h4><code class=\"language-text\">namedEntitiesRequired</code></h4>\n<p>Let's consider the parameter <code class=\"language-text\">\"namedEntitiesRequired\": true</code>. If a phrase with a system entity was added to the intent, for example:</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">I need @duckling.number of apples</code></pre></div>\n<p>That at request of the client <code class=\"language-text\">I need apples</code> — the phrase will not get in an intent as the system essence has not been found.</p>\n<p class='warn'>Override <code class=\"language-text\">namedEntitiesRequired</code> in the advanced NLU settings so that phrases without system entities activate the intent.</p>\n</br>\n<h3>Deep Learning</h3>\n<p>Deep Learning classifier settings</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token punctuation\">{</span>\n    <span class=\"token property\">\"patternsEnabled\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"tokenizerEngine\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"udpipe\"</span><span class=\"token punctuation\">,</span>\n\n    <span class=\"token property\">\"cnnSettings\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token property\">\"lang\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"ru\"</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"kernel_sizes\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n            <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">2</span>\n        <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"n_filters\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1024</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"emb_drp\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.25</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"cnn_drp\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.25</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"bs\"</span><span class=\"token operator\">:</span> <span class=\"token number\">64</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"n_epochs\"</span><span class=\"token operator\">:</span> <span class=\"token number\">15</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"lr\"</span><span class=\"token operator\">:</span> <span class=\"token number\">0.001</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"pooling_name\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"max\"</span>\n    <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<h4>Parameters</h4>\n<ul>\n<li>\n<p><code class=\"language-text\">kernel_sizes</code> – list of convolution kernel sizes. A convolution kernel is the size of the context window to be taken into account by the classifier. For instance, <code class=\"language-text\">“kernel_sizes”: [3]</code> means that the model will use all the triplets of adjacent words to find features in the text. Multiple convolution kernels can be defined for a single model.</p>\n</li>\n<li>\n<p><code class=\"language-text\">n_filters</code> – number of filters. A filter is a specific pattern learned by the model. A model has a unique set of patterns for each kernel. For instance, if we specify <code class=\"language-text\">“kernel_sizes”: [2,3]</code> and <code class=\"language-text\">“n_filters”: 512</code>, the total number of filters will be <code class=\"language-text\">1024</code> (<code class=\"language-text\">512</code> per kernel).</p>\n</li>\n<li>\n<p><code class=\"language-text\">emb_drp</code> – probability of a drop-out on the embedding layer. Drop-out is the mechanism that forcibly disables a part of weights in the network in the course of training. Drop-out prevents the network from overtraining (i.e. it helps to summarize the information instead of merely memorizing the entire dataset). <code class=\"language-text\">emb_drp</code> can take any value from 0 to 1.</p>\n</li>\n<li>\n<p><code class=\"language-text\">сnn_drp</code> – probability of a drop-out on the convolution layers of the network.</p>\n</li>\n<li>\n<p><code class=\"language-text\">bs</code> – size of the input batch for trainings. This value defines the number of training examples per step to be fed to the network in the course of training. If the dataset has less than 3000 examples, a value from 16 to 32 is recommended. For larger datasets, this value can be from 32 to 128.</p>\n</li>\n<li>\n<p><code class=\"language-text\">n_epochs</code> – number of learning epochs (i.e. the number of times the model will see all the training data).</p>\n</li>\n<li>\n<p><code class=\"language-text\">lr</code> – <a href=\"https://en.wikipedia.org/wiki/Learning_rate\" target=\"_blank\" rel=\"noopener noreferrer\">learning rate</a>. The factor the model will use to update its weights in the course of training.</p>\n</li>\n<li>\n<p><code class=\"language-text\">pooling_name</code> – aggregation strategy. The model has to aggregate the patterns found in the input string (before the final classification layer). The following aggregation strategies are possible: <code class=\"language-text\">max</code>, <code class=\"language-text\">mean</code>, <code class=\"language-text\">concat</code>.</p>\n</li>\n</ul>\n</br>\n<h4>General recommendations</h4>\n<p>Deep Learning classifier settings for the dataset size of:</p>\n<ul>\n<li>over 100 thousand examples</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">        \"kernel_sizes\": [\n            2,\n            3,\n            4\n        ],\n        \"n_filters\": 1024-2048,\n        \"emb_drp\": 0.3-0.4,\n        \"cnn_drp\": 0.3-0.4,\n        \"bs\": 64-128,\n        \"n_epochs\": 3,\n        \"lr\": 0.001,\n        \"pooling_name\": \"max, concat\"</code></pre></div>\n<ul>\n<li>30 to 100 thousand examples</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">        \"kernel_sizes\": [\n            2,\n            3,\n            4\n        ],\n        \"n_filters\": 1024-2048,\n        \"emb_drp\": 0.3-0.4,\n        \"cnn_drp\": 0.3-0.4,\n        \"bs\": 32-128,\n        \"n_epochs\": 3,\n        \"lr\": 0.001,\n        \"pooling_name\": \"max, concat\"</code></pre></div>\n<ul>\n<li>10 to 30 thousand examples</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">        \"kernel_sizes\": [\n            2,\n            3,\n            4                      // or [2,3]\n        ],\n        \"n_filters\": 1024,\n        \"emb_drp\": 0.3-0.5,\n        \"cnn_drp\": 0.3-0.5,\n        \"bs\": 32-64,\n        \"n_epochs\": 3-5,\n        \"lr\": 0.001,\n        \"pooling_name\": \"max\"</code></pre></div>\n<ul>\n<li>3 to 10 thousand examples</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">        \"kernel_sizes\": [\n            2,\n            3,\n            4                      // or [2,3]\n        ],\n        \"n_filters\": 1024,\n        \"emb_drp\": 0.4-0.5,\n        \"cnn_drp\": 0.4-0.5,\n        \"bs\": 32,\n        \"n_epochs\": 4-7,\n        \"lr\": 0.001,\n        \"pooling_name\": \"max\"</code></pre></div>\n<ul>\n<li>1 to 3 thousand examples</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">        \"kernel_sizes\": [\n            2,\n            3\n        ],\n        \"n_filters\": 512,\n        \"emb_drp\": 0.5,\n        \"cnn_drp\": 0.5,\n        \"bs\": 16-32,\n        \"n_epochs\": 7-15,\n        \"lr\": 0.001,\n        \"pooling_name\": \"max\"</code></pre></div>\n</br>\n<h3>Classic ML</h3>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token punctuation\">{</span>\n    <span class=\"token property\">\"patternsEnabled\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"tokenizerEngine\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"udpipe\"</span><span class=\"token punctuation\">,</span>\n\n    <span class=\"token property\">\"classicMLSettings\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token property\">\"C\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"lang\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"ru\"</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"word_ngrams\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n            <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">2</span>\n        <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"lemma_ngrams\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n            <span class=\"token number\">0</span>\n        <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"stemma_ngrams\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n            <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">2</span>\n        <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"char_ngrams\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n            <span class=\"token number\">3</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">4</span>\n        <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"lower\"</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<h4>Parameters</h4>\n<ul>\n<li>\n<p><code class=\"language-text\">С</code> – regularization coefficient that can be used to control model overtraining. Use it to control larger values of the target function coefficients and to penalize them by the value of the parameter. It can take values in the following range: <code class=\"language-text\">[0.01, 0.1, 1, 10]</code>.</p>\n</li>\n<li>\n<p><code class=\"language-text\">word_ngrams</code> – number of words to be combined into word combinations. For instance, for <code class=\"language-text\">“word_ngrams”: [2, 3]</code> combinations of two and three words will be used.</p>\n</li>\n</ul>\n<p>For instance, the following word combinations will be generated for the <code class=\"language-text\">I like green apples</code> phrase:</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\"> [\n  \"I like\",\n  \"like green\",\n  \"green apples\",\n  \"I like green\",\n  \"like green apples\"\n]</code></pre></div>\n<p class='tip'>Values greater than 3 are not recommended for this parameter.</p>\n<ul>\n<li><code class=\"language-text\">lemma_n_grams</code> – number of words to be normalized and combined into word combinations. For instance, for <code class=\"language-text\">“lemma_n_grams”: [2]</code> combinations of two words will be used.</li>\n</ul>\n<p>For instance, the following word combinations will be generated for the <code class=\"language-text\">I like green apples</code> phrase:</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\"> [\n  \"I like\",\n  \"like green\",\n  \"green apple\"\n]</code></pre></div>\n<p class='tip'>Values greater than 3 are not recommended for this parameter.</p>\n<ul>\n<li><code class=\"language-text\">stemma_ngrams</code> – number of stemmas to be combined into word combinations. A stemma is the <a href=\"https://en.wikipedia.org/wiki/Stemma\" target=\"_blank\" rel=\"noopener noreferrer\">stem</a> of a source word which is not necessarily equal to the morphologic root of that word. For instance, for <code class=\"language-text\">“stemma_ngrams”: [2]</code> combinations of two stemmas will be used.</li>\n</ul>\n<p>For instance, the following word combinations will be generated for the <code class=\"language-text\">I like green apples</code> phrase:</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\"> [\n  \"I like\",\n  \"like green\",\n  \"green apple\"\n]</code></pre></div>\n<p class='tip'>Using both <code class=\"language-text\">lemma_n_grams</code> and <code class=\"language-text\">stemma_ngrams</code> parameters is not recommended due to possible model overtraining. The recommended value of <code class=\"language-text\">stemma_ngrams</code> is also greater than 3.</p>\n<ul>\n<li><code class=\"language-text\">char_n_grams</code> – number of symbols to be combined and treated as a single unit of a phrase.</li>\n</ul>\n<p>For instance, for <code class=\"language-text\">“char_n_grams”: [5]</code> the phrase of <code class=\"language-text\">green apples</code> is converted to the following set:</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\"> [\n  \"gre\",\n  \"ree\",\n  \"een\",\n   ...\n]</code></pre></div>\n<ul>\n<li><code class=\"language-text\">lower</code> – if set to <code class=\"language-text\">true</code>, all the phrases are converted to lowercase.</li>\n</ul>\n</br>\n<h3>External NLU service</h3>\n<p>The JAICP platform supports the ability to connect an external NLU service that complies with the Model API specification. You will also be able to create and configure intents, entities, patterns.</p>\n<p class='warn'><a href=/1.10.3/docs/en/NLU_core/model_api/model_api  >Model API</a> allows you to use third-party tokenizers, external named entity and intent recognition NLU services in JAICP projects.</p>\n<p>To use an external NLU service in a project, use <code class=\"language-text\">externalNluSettings</code> in the <em>Advanced NLU settings</em> field:</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\">...\n<span class=\"token property\">\"externalNluSettings\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token property\">\"nluProviderSettings\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token property\">\"markup\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n            <span class=\"token property\">\"nluType\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"external\"</span><span class=\"token punctuation\">,</span>\n            <span class=\"token property\">\"url\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"http://example.com\"</span>\n        <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"ner\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n            <span class=\"token property\">\"nluType\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"external\"</span><span class=\"token punctuation\">,</span>\n            <span class=\"token property\">\"url\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"http://example.com\"</span>\n        <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"classification\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n            <span class=\"token property\">\"nluType\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"external\"</span><span class=\"token punctuation\">,</span>\n            <span class=\"token property\">\"url\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"http://example.com\"</span>\n        <span class=\"token punctuation\">}</span>\n    <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"language\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"ja\"</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"nluActionAdditionalProperties\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token property\">\"markup\"</span><span class=\"token operator\">:</span> <span class=\"token null keyword\">null</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"ner\"</span><span class=\"token operator\">:</span> <span class=\"token null keyword\">null</span><span class=\"token punctuation\">,</span>\n        <span class=\"token property\">\"classification\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n            <span class=\"token property\">\"modelId\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"123\"</span><span class=\"token punctuation\">,</span>\n            <span class=\"token property\">\"classifierName\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"example\"</span><span class=\"token punctuation\">,</span>\n            <span class=\"token property\">\"properties\"</span><span class=\"token operator\">:</span> <span class=\"token null keyword\">null</span>\n        <span class=\"token punctuation\">}</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span>\n...</code></pre></div>\n</br>\n<h4>Parameters</h4>\n<table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code class=\"language-text\">classifierName</code></td>\n<td>Classifier name.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">classification</code></td>\n<td>Map of parameters for classification requests.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">language</code></td>\n<td>External NLU language parameter. If not set, language from the project settings will be used.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">markup</code></td>\n<td>Map of parameters for markup requests.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">modelID</code></td>\n<td>Classifier model ID.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">ner</code></td>\n<td><a href=\"https://en.wikipedia.org/wiki/Named-entity_recognition\" target=\"_blank\" rel=\"noopener noreferrer\">Named entity recognition</a>. </br></br> Map of parameters for named entity recognition requests.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">nluActionAdditionalProperties</code></td>\n<td>Additional NLU service properties.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">nluProviderSettings</code></td>\n<td>Object that determines where the NLU action is going to be performed.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">nluType</code></td>\n<td>NLU type. </br></br> You can set either <code class=\"language-text\">external</code> or <code class=\"language-text\">caila</code> NLU type.</td>\n</tr>\n</tbody>\n</table>\n</br>\n<h4>How to use</h4>\n<p class='tip'>Please note that you cannot use both CAILA and external NLU service intents or entities at the same time in a project.</p>\n<p>In the JAICP project you can:</p>\n<ol>\n<li>\n<p>Use entities and intents from the external NLU service.</p>\n<ul>\n<li>Set the <code class=\"language-text\">nluType</code> to <code class=\"language-text\">external</code> for the <code class=\"language-text\">markup</code>, <code class=\"language-text\">ner</code> and <code class=\"language-text\">classification</code> parameters.</li>\n<li>Intents and entities are available in the script using the <a href=\"/1.10.3/docs/en/NLU_core/intent\"><code class=\"language-text\">intent</code></a> and <a href=\"/1.10.3/docs/en/JAICP_DSL/tags/declarative_tags/q\"><code class=\"language-text\">q</code></a> tags.</li>\n<li>Visual customization in the <em>CAILA</em> section for the external NLU service intents and entities is not supported.</li>\n</ul>\n</li>\n<li>\n<p>Use CAILA intents and entities from the external NLU service.</p>\n<ul>\n<li>Set the <code class=\"language-text\">nluType</code> to <code class=\"language-text\">external</code> for the <code class=\"language-text\">ner</code> parameter and to <code class=\"language-text\">caila</code> for the <code class=\"language-text\">markup</code> and <code class=\"language-text\">classification</code> parameters.</li>\n<li>The use of entities from the external NLU service isn't available while setting up the intents and slot filling.</li>\n<li>Entities are available in the script using the <code class=\"language-text\">q</code> tag.</li>\n</ul>\n</li>\n<li>\n<p>Use CAILA entities and intents from the external NLU service.</p>\n<ul>\n<li>Set the <code class=\"language-text\">nluType</code> to <code class=\"language-text\">external</code> for the <code class=\"language-text\">classification</code> parameter and to <code class=\"language-text\">caila</code> for the <code class=\"language-text\">markup</code> and <code class=\"language-text\">ner</code> parameters.</li>\n<li>Intents are available in the script using the <code class=\"language-text\">q</code> tag.</li>\n</ul>\n</li>\n<li>\n<p>Use external NLU service markup with CAILA intents and entities.</p>\n<ul>\n<li>Set the <code class=\"language-text\">nluType:</code> to <code class=\"language-text\">external</code> for the <code class=\"language-text\">markup</code> parameter and to <code class=\"language-text\">caila</code> for the <code class=\"language-text\">classification</code> and <code class=\"language-text\">ner</code>.</li>\n<li>In the <em>CAILA > Intents</em> section, you can use <em>Training phrases</em> in languages that are not supported by the JAICP, but these phrases will be recognized in the script.</li>\n</ul>\n</li>\n</ol>\n</br>\n<p class='warn'>You can look through <a href=https://github.com/just-ai/model-api-example target=\"_blank\" rel=\"noopener noreferrer\">an example of an external NLU service in the GitHub repository</a></p>","frontmatter":{"title":"","description":null},"headings":[{"value":"Extended NLU settings"}]}},"pageContext":{"slug":"/docs/en/NLU_core/advanced_classifer_settings/","previous":{"fields":{"slug":"/docs/en/NLU_core/data/"},"frontmatter":{"title":"","description":null}},"next":{"fields":{"slug":"/docs/en/JS_API/session_lifetime_control/"},"frontmatter":{"title":"","description":null}}}},
    "staticQueryHashes": ["1209419333"]}