nemoguardrails.library.f5.actions

View as Markdown

Module Contents

Functions

NameDescription
_create_http_client-
_fail_open_outcomeOutcome returned when the API is unreachable and fail_open is enabled.
_get_f5_config-
_retry_policy-
_retrying_http_client-
_scan_outcome-
f5_guardrails_scanScans the provided text using the F5 Guardrails API.

Data

log

API

nemoguardrails.library.f5.actions._create_http_client(
f5_config: nemoguardrails.rails.llm.config.F5GuardrailsRailConfig
) -> nemoguardrails.http.HTTPClient
nemoguardrails.library.f5.actions._fail_open_outcome() -> nemoguardrails.actions.rail_outcome.RailOutcome

Outcome returned when the API is unreachable and fail_open is enabled.

The fail_open marker makes this distinguishable from a real cleared scan in logs and traces.

nemoguardrails.library.f5.actions._get_f5_config(
config: typing.Optional[nemoguardrails.rails.llm.config.RailsConfig]
) -> nemoguardrails.rails.llm.config.F5GuardrailsRailConfig
nemoguardrails.library.f5.actions._retry_policy(
f5_config: nemoguardrails.rails.llm.config.F5GuardrailsRailConfig
) -> nemoguardrails.http.RetryPolicy
nemoguardrails.library.f5.actions._retrying_http_client(
client: nemoguardrails.http.HTTPClient,
f5_config: nemoguardrails.rails.llm.config.F5GuardrailsRailConfig
) -> nemoguardrails.http.HTTPClient
nemoguardrails.library.f5.actions._scan_outcome(
result: dict
) -> nemoguardrails.actions.rail_outcome.RailOutcome
nemoguardrails.library.f5.actions.f5_guardrails_scan(
text: str,
config: typing.Optional[nemoguardrails.rails.llm.config.RailsConfig] = None,
http_client: typing.Optional[nemoguardrails.http.HTTPClient] = None,
kwargs: typing.Any = {}
) -> nemoguardrails.actions.rail_outcome.RailOutcome
async

Scans the provided text using the F5 Guardrails API.

On HTTP 429 responses the action honors the Retry-After header (delta-seconds or HTTP-date) up to rails.config.f5.max_retry_after_seconds and retries up to rails.config.f5.max_retries additional times before applying the configured fail_open / fail_closed behavior.

Parameters:

text
str

The text to scan.

config
Optional[RailsConfig]Defaults to None

The active RailsConfig; used to resolve rails.config.f5.

http_client
Optional[HTTPClient]Defaults to None

Optional caller-owned HTTP client used with the F5 retry policy. The action does not close an injected client.

Returns: RailOutcome

The rail decision with the F5 Guardrails API response as metadata.

nemoguardrails.library.f5.actions.log = logging.getLogger(__name__)