> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/guardrails/llms.txt.
> For full documentation content, see https://docs.nvidia.com/nemo/guardrails/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/guardrails/_mcp/server.

# nemoguardrails.embeddings.providers

## Submodules

* **[`nemoguardrails.embeddings.providers.azureopenai`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/azureopenai)**
* **[`nemoguardrails.embeddings.providers.base`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/base)**
* **[`nemoguardrails.embeddings.providers.cohere`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/cohere)**
* **[`nemoguardrails.embeddings.providers.fastembed`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/fastembed)**
* **[`nemoguardrails.embeddings.providers.google`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/google)**
* **[`nemoguardrails.embeddings.providers.nim`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/nim)**
* **[`nemoguardrails.embeddings.providers.openai`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/openai)**
* **[`nemoguardrails.embeddings.providers.registry`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/registry)**
* **[`nemoguardrails.embeddings.providers.sentence_transformers`](/guardrails-python-sdk/nemoguardrails/embeddings/providers/sentence_transformers)**

## Package Contents

### Functions

| Name                                                                                              | Description                     |
| ------------------------------------------------------------------------------------------------- | ------------------------------- |
| [`init_embedding_model`](#nemoguardrails-embeddings-providers-init_embedding_model)               | Initialize the embedding model. |
| [`register_embedding_provider`](#nemoguardrails-embeddings-providers-register_embedding_provider) | Register an embedding provider. |

### Data

[`_embedding_model_cache`](#nemoguardrails-embeddings-providers-_embedding_model_cache)

[`embeddings_executor`](#nemoguardrails-embeddings-providers-embeddings_executor)

### API

```python
nemoguardrails.embeddings.providers.init_embedding_model(
    embedding_model: str,
    embedding_engine: str,
    embedding_params: dict = {}
) -> nemoguardrails.embeddings.providers.base.EmbeddingModel
```

Initialize the embedding model.

**Parameters:**

The path or name of the embedding model.

The name of the embedding engine.

Additional parameters for the embedding model.

**Returns:** `EmbeddingModel`

An instance of the initialized embedding model.

**Raises:**

* `ValueError`: If the embedding engine is invalid.

```python
nemoguardrails.embeddings.providers.register_embedding_provider(
    model: typing.Type[nemoguardrails.embeddings.providers.base.EmbeddingModel],
    engine_name: typing.Optional[str] = None
)
```

Register an embedding provider.

**Parameters:**

The embedding model class.

The name of the embedding engine.

**Raises:**

* `ValueError`: If the engine name is not provided and the model does not have an engine name.
* `TypeError`: If the model is not an instance of `EmbeddingModel`.
* `ValueError`: If the model does not have 'encode' or 'encode\_async' methods.

```python
nemoguardrails.embeddings.providers._embedding_model_cache = {}
```

```python
nemoguardrails.embeddings.providers.embeddings_executor = None
```