> This page is for version v0.24.0.
> For other versions, use one of these documentation indexes:
> - Latest (default): https://docs.nvidia.com/nemo/guardrails/latest/llms.txt
> - v0.24.1: https://docs.nvidia.com/nemo/guardrails/v0.24.1/llms.txt
> - v0.24.0: https://docs.nvidia.com/nemo/guardrails/v0.24.0/llms.txt
> - v0.23.0: https://docs.nvidia.com/nemo/guardrails/v0.23.0/llms.txt
> - v0.22.0: https://docs.nvidia.com/nemo/guardrails/v0.22.0/llms.txt

> 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.library.content_safety.actions

## Module Contents

### Functions

| Name                                                                                                        | Description |
| ----------------------------------------------------------------------------------------------------------- | ----------- |
| [`_detect_language`](#nemoguardrails-library-content_safety-actions-_detect_language)                       | -           |
| [`_get_reasoning_enabled`](#nemoguardrails-library-content_safety-actions-_get_reasoning_enabled)           | -           |
| [`_get_refusal_message`](#nemoguardrails-library-content_safety-actions-_get_refusal_message)               | -           |
| [`content_safety_check_input`](#nemoguardrails-library-content_safety-actions-content_safety_check_input)   | -           |
| [`content_safety_check_output`](#nemoguardrails-library-content_safety-actions-content_safety_check_output) | -           |
| [`detect_language`](#nemoguardrails-library-content_safety-actions-detect_language)                         | -           |

### Data

[`DEFAULT_REFUSAL_MESSAGES`](#nemoguardrails-library-content_safety-actions-DEFAULT_REFUSAL_MESSAGES)

[`SUPPORTED_LANGUAGES`](#nemoguardrails-library-content_safety-actions-SUPPORTED_LANGUAGES)

[`log`](#nemoguardrails-library-content_safety-actions-log)

### API

```python
nemoguardrails.library.content_safety.actions._detect_language(
    text: str
) -> typing.Optional[str]
```

```python
nemoguardrails.library.content_safety.actions._get_reasoning_enabled(
    llm_task_manager: nemoguardrails.llm.taskmanager.LLMTaskManager
) -> bool
```

```python
nemoguardrails.library.content_safety.actions._get_refusal_message(
    lang: str,
    custom_messages: typing.Optional[typing.Dict[str, str]]
) -> str
```

```python
nemoguardrails.library.content_safety.actions.content_safety_check_input(
    llms: typing.Dict[str, nemoguardrails.types.LLMModel],
    llm_task_manager: nemoguardrails.llm.taskmanager.LLMTaskManager,
    model_name: typing.Optional[str] = None,
    context: typing.Optional[dict] = None,
    user_message: typing.Optional[str] = None,
    model_caches: typing.Optional[typing.Dict[str, nemoguardrails.llm.cache.CacheInterface]] = None,
    kwargs = {}
) -> nemoguardrails.actions.rail_outcome.RailOutcome
```

async

```python
nemoguardrails.library.content_safety.actions.content_safety_check_output(
    llms: typing.Dict[str, nemoguardrails.types.LLMModel],
    llm_task_manager: nemoguardrails.llm.taskmanager.LLMTaskManager,
    model_name: typing.Optional[str] = None,
    context: typing.Optional[dict] = None,
    user_message: typing.Optional[str] = None,
    bot_message: typing.Optional[str] = None,
    model_caches: typing.Optional[typing.Dict[str, nemoguardrails.llm.cache.CacheInterface]] = None,
    kwargs = {}
) -> nemoguardrails.actions.rail_outcome.RailOutcome
```

async

```python
nemoguardrails.library.content_safety.actions.detect_language(
    context: typing.Optional[dict] = None,
    config: typing.Optional[typing.Any] = None
) -> dict
```

async

```python
nemoguardrails.library.content_safety.actions.DEFAULT_REFUSAL_MESSAGES: Dict[str, str] = {'en': "I'm sorry, I can't respond to that.", 'es': 'Lo siento, no puedo respond...
```

```python
nemoguardrails.library.content_safety.actions.SUPPORTED_LANGUAGES: FrozenSet[str] = frozenset({'en', 'es', 'zh', 'de', 'fr', 'hi', 'ja', 'ar', 'th'})
```

```python
nemoguardrails.library.content_safety.actions.log = logging.getLogger(__name__)
```