> 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 AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/guardrails/_mcp/server.

# nemoguardrails.integrations.langchain.providers.providers

Module that exposes all the supported LLM providers.

Currently, this module automatically discovers all the LLM providers available in LangChain
and registers them.

Additional providers can be registered using the `register_llm_provider` function.

## Module Contents

### Functions

| Name                                                                                                                                                      | Description                                                                    |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| [`_acall`](#nemoguardrails-integrations-langchain-providers-providers-_acall)                                                                             | Adds asynchronous support to LLM providers that only have synchronous methods. |
| [`_discover_langchain_community_chat_providers`](#nemoguardrails-integrations-langchain-providers-providers-_discover_langchain_community_chat_providers) | Creates a mapping from provider name to chat model class.                      |
| [`_discover_langchain_community_llm_providers`](#nemoguardrails-integrations-langchain-providers-providers-_discover_langchain_community_llm_providers)   | Automatically discover all LLM providers from LangChain.                       |
| [`_discover_langchain_partner_chat_providers`](#nemoguardrails-integrations-langchain-providers-providers-_discover_langchain_partner_chat_providers)     | -                                                                              |
| [`_get_all_chat_provider_names`](#nemoguardrails-integrations-langchain-providers-providers-_get_all_chat_provider_names)                                 | Consolidates all chat provider names.                                          |
| [`_get_chat_completion_provider`](#nemoguardrails-integrations-langchain-providers-providers-_get_chat_completion_provider)                               | -                                                                              |
| [`_get_text_completion_provider`](#nemoguardrails-integrations-langchain-providers-providers-_get_text_completion_provider)                               | -                                                                              |
| [`_parse_version`](#nemoguardrails-integrations-langchain-providers-providers-_parse_version)                                                             | -                                                                              |
| [`_patch_acall_method_to`](#nemoguardrails-integrations-langchain-providers-providers-_patch_acall_method_to)                                             | -                                                                              |
| [`discover_langchain_providers`](#nemoguardrails-integrations-langchain-providers-providers-discover_langchain_providers)                                 | Automatically discover all LLM providers from LangChain.                       |
| [`get_chat_provider_names`](#nemoguardrails-integrations-langchain-providers-providers-get_chat_provider_names)                                           | Returns the list of supported chat providers.                                  |
| [`get_community_chat_provider_names`](#nemoguardrails-integrations-langchain-providers-providers-get_community_chat_provider_names)                       | Returns the list of supported chat providers.                                  |
| [`get_llm_provider_names`](#nemoguardrails-integrations-langchain-providers-providers-get_llm_provider_names)                                             | Returns the list of supported LLM providers.                                   |
| [`register_chat_provider`](#nemoguardrails-integrations-langchain-providers-providers-register_chat_provider)                                             | Register an additional chat provider.                                          |
| [`register_llm_provider`](#nemoguardrails-integrations-langchain-providers-providers-register_llm_provider)                                               | Register an additional LLM provider.                                           |

### Data

[`DEPRECATED_LLM_PROVIDERS`](#nemoguardrails-integrations-langchain-providers-providers-DEPRECATED_LLM_PROVIDERS)

[`_CUSTOM_CHAT_PROVIDERS`](#nemoguardrails-integrations-langchain-providers-providers-_CUSTOM_CHAT_PROVIDERS)

[`__all__`](#nemoguardrails-integrations-langchain-providers-providers-__all__)

[`_chat_providers`](#nemoguardrails-integrations-langchain-providers-providers-_chat_providers)

[`_llm_providers`](#nemoguardrails-integrations-langchain-providers-providers-_llm_providers)

[`log`](#nemoguardrails-integrations-langchain-providers-providers-log)

### API

```python
nemoguardrails.integrations.langchain.providers.providers._acall(
    self,
    args = (),
    kwargs = {}
)
```

async

Adds asynchronous support to LLM providers that only have synchronous methods.

```python
nemoguardrails.integrations.langchain.providers.providers._discover_langchain_community_chat_providers()
```

Creates a mapping from provider name to chat model class.
The provider name is defined as the last segment of the module path.
For example, for module path "langchain\_community.chat\_models.google\_palm",
the provider name is "google\_palm".

```python
nemoguardrails.integrations.langchain.providers.providers._discover_langchain_community_llm_providers()
```

Automatically discover all LLM providers from LangChain.

```python
nemoguardrails.integrations.langchain.providers.providers._discover_langchain_partner_chat_providers() -> typing.Set[str]
```

```python
nemoguardrails.integrations.langchain.providers.providers._get_all_chat_provider_names() -> typing.List[str]
```

Consolidates all chat provider names.

```python
nemoguardrails.integrations.langchain.providers.providers._get_chat_completion_provider(
    provider_name: str
) -> typing.Type[langchain_core.language_models.BaseChatModel]
```

```python
nemoguardrails.integrations.langchain.providers.providers._get_text_completion_provider(
    provider_name: str
) -> typing.Type[langchain_core.language_models.BaseLLM]
```

```python
nemoguardrails.integrations.langchain.providers.providers._parse_version(
    version_str
)
```

```python
nemoguardrails.integrations.langchain.providers.providers._patch_acall_method_to(
    llm_providers: typing.Dict[str, typing.Type[langchain_core.language_models.BaseLLM]]
)
```

```python
nemoguardrails.integrations.langchain.providers.providers.discover_langchain_providers()
```

Automatically discover all LLM providers from LangChain.

This function is deprecated and will be removed in a future release.
Use `_discover_langchain_providers` directly instead.

```python
nemoguardrails.integrations.langchain.providers.providers.get_chat_provider_names() -> typing.List[str]
```

Returns the list of supported chat providers.

```python
nemoguardrails.integrations.langchain.providers.providers.get_community_chat_provider_names() -> typing.List[str]
```

Returns the list of supported chat providers.

```python
nemoguardrails.integrations.langchain.providers.providers.get_llm_provider_names() -> typing.List[str]
```

Returns the list of supported LLM providers.

```python
nemoguardrails.integrations.langchain.providers.providers.register_chat_provider(
    name: str,
    provider_cls: typing.Type[langchain_core.language_models.BaseChatModel]
)
```

Register an additional chat provider.

```python
nemoguardrails.integrations.langchain.providers.providers.register_llm_provider(
    name: str,
    provider_cls: typing.Type[langchain_core.language_models.BaseLLM]
)
```

Register an additional LLM provider.

```python
nemoguardrails.integrations.langchain.providers.providers.DEPRECATED_LLM_PROVIDERS = ['mlflow-chat', 'databricks-chat']
```

```python
nemoguardrails.integrations.langchain.providers.providers._CUSTOM_CHAT_PROVIDERS = {'nim'}
```

```python
nemoguardrails.integrations.langchain.providers.providers.__all__ = ['_llm_providers', '_parse_version', 'get_llm_provider_names', 'get_community_ch...
```

```python
nemoguardrails.integrations.langchain.providers.providers._chat_providers: Dict[str, Type[BaseChatModel]] = _discover_langchain_community_chat_providers()
```

```python
nemoguardrails.integrations.langchain.providers.providers._llm_providers: Dict[str, Type[BaseLLM]] = {'trt_llm': TRTLLM}
```

```python
nemoguardrails.integrations.langchain.providers.providers.log = logging.getLogger(__name__)
```