# Components

For clarity, we have renamed the pre-defined pipelines to reflect what they _do_ rather than which libraries they use as of Rasa NLU 0.15. The `tensorflow_embedding` pipeline is now called `supervised_embeddings`, and `spacy_sklearn` is now known as `pretrained_embeddings_spacy`. Please update your code if you are using these.

This is a reference of the configuration options for every built-in component in Rasa NLU. If you want to build a custom component, check out [Custom NLU Components](https://legacy-docs-v1.rasa.com/1.7.3/api/custom-nlu-components/#custom-nlu-components).

## Word Vector Sources

- [MitieNLP](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#mitienlp)
- [SpacyNLP](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#spacynlp)

## Text Featurizers

- [MitieFeaturizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#mitiefeaturizer)
- [SpacyFeaturizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#spacyfeaturizer)
- [ConveRTFeaturizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#convertfeaturizer)
- [RegexFeaturizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#regexfeaturizer)
- [CountVectorsFeaturizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#countvectorsfeaturizer)

## Intent Classifiers

- [MitieIntentClassifier](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#mitieintentclassifier)
- [SklearnIntentClassifier](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#sklearnintentclassifier)
- [EmbeddingIntentClassifier](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#embeddingintentclassifier)
- [KeywordIntentClassifier](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#keywordintentclassifier)

## Selectors

- [Response Selector](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#response-selector)

## Tokenizers

- [WhitespaceTokenizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#whitespacetokenizer)
- [JiebaTokenizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#jiebatokenizer)
- [MitieTokenizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#mitietokenizer)
- [SpacyTokenizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#spacytokenizer)
- [ConveRTTokenizer](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#converttokenizer)

## Entity Extractors

- [MitieEntityExtractor](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#mitieentityextractor)
- [SpacyEntityExtractor](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#spacyentityextractor)
- [EntitySynonymMapper](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#entitysynonymmapper)
- [CRFEntityExtractor](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#crfentityextractor)
- [DucklingHTTPExtractor](https://legacy-docs-v1.rasa.com/1.7.3/nlu/components/#ducklinghttpextractor)

## Configuration for MitieNLP

```yaml
pipeline:
- name: "MitieNLP"
  # language model to load
  model: "data/total_word_feature_extractor.dat"
```

## Configuration for SpacyNLP

```yaml
pipeline:
- name: "SpacyNLP"
  # language model to load
  model: "en_core_web_md"
  case_sensitive: false
```

## Configuration for Text Featurizers

Example for `CountVectorsFeaturizer`:

```yaml
pipeline:
- name: "CountVectorsFeaturizer"
  use_shared_vocab: False
  analyzer: 'word'
  token_pattern: r'(?u)\b\w\w+\b'
  min_df: 1
  max_df: 1.0
  min_ngram: 1
  max_ngram: 1
  lowercase: true
  OOV_token: None
  OOV_words: []
```

## Example of Output

```json
{
    "entities": [{
        "value": "New York City",
        "start": 20,
        "end": 33,
        "entity": "city",
        "extractor": "MitieEntityExtractor"
    }]
}
```
