nemoguardrails.library.policyai.actions

View as Markdown

PolicyAI Integration for NeMo Guardrails.

PolicyAI provides content moderation and policy enforcement capabilities for LLM applications. This integration allows using PolicyAI as an input and output rail for content moderation.

For more information, see: https://musubilabs.ai

Module Contents

Functions

NameDescription
call_policyai_apiCall the PolicyAI API to evaluate content.
call_policyai_api_mappingMapping for call_policyai_api.

Data

log

API

nemoguardrails.library.policyai.actions.call_policyai_api(
text: typing.Optional[str] = None,
tag_name: typing.Optional[str] = None,
kwargs = {}
)
async

Call the PolicyAI API to evaluate content.

Parameters:

text
Optional[str]Defaults to None

The text content to evaluate.

tag_name
Optional[str]Defaults to None

Optional tag name for the PolicyAI evaluation. If not provided, uses POLICYAI_TAG_NAME env var or “prod”.

Returns:

dict with:

  • assessment: “SAFE” or “UNSAFE”
  • category: the violation category (if UNSAFE)
  • severity: severity level 0-3
  • reason: explanation for the decision
nemoguardrails.library.policyai.actions.call_policyai_api_mapping(
result: dict
) -> bool

Mapping for call_policyai_api.

Block (return True) if:

  1. Assessment is “UNSAFE”
nemoguardrails.library.policyai.actions.log = logging.getLogger(__name__)