rpk ai guardrail create
Create a Guardrail.
Choose the config by setting flags from one group; the group you use selects it: bedrock-config, local-config. Setting flags from two groups is an error.
| This command was introduced in ai version 0.2.94. |
Examples
This section provides examples of how to use rpk ai guardrail create.
rpk ai guardrail create my-guardrail \
--blocked-input-message Your request was blocked by a content policy. \
--blocked-output-message The response was blocked by a content policy. \
--bedrock-config.backend.region us-east-1
Flags
| Value | Type | Description |
|---|---|---|
|
string |
Name shown in the UI, up to 253 characters. Defaults to the identifier. |
|
string |
Notes shown with the guardrail in the UI, up to 1,024 characters. |
|
string |
Returned when an input policy blocks a prompt. 1 to 500 characters. Shared by every input-blocking policy. ( |
|
string |
Returned when an output policy blocks a response. 1 to 500 characters. Shared by every output-blocking policy. ( |
|
bool |
Turns the whole guardrail on or off. While off, no policy runs and configuration is kept. Changes take effect within about 30 seconds. (true when set; pass |
|
string |
AWS region where the Bedrock guardrail is created, for example us-east-1. Content filters, contextual grounding, and automated reasoning aren’t available in every region. (required in its group). |
|
string |
Supplies AWS credentials and region. Selecting a provider doesn’t attach the guardrail to it. |
|
bool |
Default chain. (selects this credentials mode; takes no value). |
|
string |
Secret store key that holds the AWS access key ID, in UPPER_SNAKE_CASE (for example, AWS_ACCESS_KEY_ID). The credentials need permission to manage Bedrock guardrails in the configured region. (required in its group). |
|
string |
Secret store key that holds the AWS secret access key, in UPPER_SNAKE_CASE (for example, AWS_SECRET_ACCESS_KEY). (required in its group). |
|
string |
ARN of the IAM role to assume through STS (arn:aws:iam::<account-id>:role/<role-name>). The trust policy must allow Redpanda to assume the role, and the role must be able to manage Bedrock guardrails in the configured region. (required in its group). |
|
string |
External ID passed to STS. Required only when the role’s trust policy sets a condition on sts:ExternalId, and must match it exactly. |
|
string |
Session name recorded in CloudTrail for calls this guardrail makes. Defaults to a Redpanda-supplied name. |
|
bool |
Turns all content categories on or off. Configuration is kept while off. Categories run only while the guardrail is enabled. (true when set; pass |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires a region and model with multimodal guardrail support. (one of: text, image; repeatable; replaces the full list on update). |
|
bool |
Turns word filtering on or off. Configuration is kept while off. Matching is exact and case-insensitive, so misspellings and paraphrases don’t match. (true when set; pass |
|
stringArray |
Custom word groups. Every word in a group shares the group’s input and output action. Up to 10,000 words across all groups. (repeatable; protojson object; replaces the full list on update). |
|
stringArray |
Platform-curated word lists, such as the AWS-managed profanity list, with an action per direction. (repeatable; protojson object; replaces the full list on update). |
|
bool |
Turns denied topics on or off. Configuration is kept while off. Matching is semantic, so paraphrases and misspellings match. (true when set; pass |
|
stringArray |
Topics denied by meaning, each with a name, definition, and optional examples. 1 to 30 topics. (repeatable; name (bare values comma-split) or protojson object; replaces the full list on update). |
|
bool |
Turns sensitive-information detection on or off. Configuration is kept while off. (true when set; pass |
|
stringArray |
Rules for the 31 built-in entity types, such as email address, phone number, credit card number, or US Social Security number. One rule per type. (repeatable; protojson object; replaces the full list on update). |
|
stringArray |
RE2 patterns for identifiers the built-in types don’t cover, such as internal account IDs. Bedrock doesn’t support lookahead or lookbehind. (repeatable; name (bare values comma-split) or protojson object; replaces the full list on update). |
|
bool |
Turns contextual grounding on or off. Configuration is kept while off. Checks run on output only and require a grounding source and query in the request. (true when set; pass |
|
bool |
Turns this check on or off independently. Configuration is kept while off. (true when set; pass |
|
float |
Minimum score from 0.0 to 0.99. The action fires below it. Higher values flag more responses. |
|
string |
Action on a low score. None records the result and passes the response through. Block returns the blocked output message and stops the request. (one of: none, block). |
|
bool |
Turns this check on or off independently. Configuration is kept while off. (true when set; pass |
|
float |
Minimum score from 0.0 to 0.99. The action fires below it. Higher values flag more responses. |
|
string |
Action on a low score. None records the result and passes the response through. Block returns the blocked output message and stops the request. (one of: none, block). |
|
bool |
Turns automated reasoning on or off. Configuration is kept while off. Findings are added to the response trace. Requests are never blocked. (true when set; pass |
|
strings |
ARNs of one or two published Bedrock Automated Reasoning policies. Each ARN ends in a numeric version such as :1. DRAFT versions are rejected. (repeatable; replaces the full list on update). |
|
float |
Confidence required for a definitive finding, from 0.0 to 1.0. Lower-confidence results are reported as ambiguous. |
|
string |
AWS region of the companion Bedrock guardrail for delegated families, for example us-east-1. Feature availability varies by region. (required in its group). |
|
string |
Identifier of a Bedrock LLM provider whose AWS credentials the delegated families use. |
|
bool |
Default chain. (selects this credentials mode; takes no value). |
|
string |
Secret store key that holds the AWS access key ID, in UPPER_SNAKE_CASE (for example, AWS_ACCESS_KEY_ID). The credentials need permission to manage Bedrock guardrails in the configured region. (required in its group). |
|
string |
Secret store key that holds the AWS secret access key, in UPPER_SNAKE_CASE (for example, AWS_SECRET_ACCESS_KEY). (required in its group). |
|
string |
ARN of the IAM role to assume through STS (arn:aws:iam::<account-id>:role/<role-name>). The trust policy must allow Redpanda to assume the role, and the role must be able to manage Bedrock guardrails in the configured region. (required in its group). |
|
string |
External ID passed to STS. Required only when the role’s trust policy sets a condition on sts:ExternalId, and must match it exactly. |
|
string |
Session name recorded in CloudTrail for calls this guardrail makes. Defaults to a Redpanda-supplied name. |
|
string |
Engine for word filters. Local runs in the gateway and keeps text in the cluster. Bedrock runs in the companion guardrail. Unset uses the platform default. (one of: local, bedrock). |
|
bool |
Runs the local engine alongside Bedrock and reports differences without enforcing them. Not yet available. (true when set; pass |
|
bool |
Turns word filtering on or off. Configuration is kept while off. Matching is exact and case-insensitive, so misspellings and paraphrases don’t match. (true when set; pass |
|
stringArray |
Custom word groups. Every word in a group shares the group’s input and output action. Up to 10,000 words across all groups. (repeatable; protojson object; replaces the full list on update). |
|
stringArray |
Platform-curated word lists, such as the profanity list, with an action per direction. (repeatable; protojson object; replaces the full list on update). |
|
string |
Engine for custom patterns. Local runs in the gateway and keeps text in the cluster. Bedrock runs in the companion guardrail. Unset uses the platform default. (one of: local, bedrock). |
|
bool |
Runs the local engine alongside Bedrock and reports differences without enforcing them. Not yet available. (true when set; pass |
|
bool |
Turns custom-pattern detection on or off. Configuration is kept while off. (true when set; pass |
|
stringArray |
RE2 patterns for identifiers the built-in types don’t cover, such as internal account IDs. Lookahead and lookbehind aren’t supported. (repeatable; name (bare values comma-split) or protojson object; replaces the full list on update). |
|
string |
Engine for built-in PII entities. Local runs in the gateway and keeps text in the cluster. Bedrock runs in the companion guardrail. Unset uses the platform default. (one of: local, bedrock). |
|
bool |
Runs the local engine alongside Bedrock and reports differences without enforcing them. Not yet available. (true when set; pass |
|
bool |
Turns sensitive-information detection on or off. Configuration is kept while off. (true when set; pass |
|
stringArray |
Rules for the 31 built-in entity types, such as email address, phone number, credit card number, or US Social Security number. (repeatable; protojson object; replaces the full list on update). |
|
string |
Engine for prompt attacks. Local runs in the gateway and keeps text in the cluster. Bedrock runs in the companion guardrail. Unset uses the platform default. (one of: local, bedrock). |
|
bool |
Runs the local engine alongside Bedrock and reports differences without enforcing them. Not yet available. (true when set; pass |
|
bool |
Turns prompt-attack detection on or off. (true when set; pass |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Engine for harm categories. Local runs in the gateway and keeps text in the cluster. Bedrock runs in the companion guardrail. Unset uses the platform default. (one of: local, bedrock). |
|
bool |
Runs the local engine alongside Bedrock and reports differences without enforcing them. Not yet available. (true when set; pass |
|
bool |
Turns all content categories on or off. Configuration is kept while off. Categories run only while the guardrail is enabled. (true when set; pass |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Detection sensitivity. Low flags only high-confidence matches. High flags any non-negligible match. None records a score without acting. (one of: none, low, medium, high). |
|
string |
Action on a match. None records the match and passes content through. Block returns the blocked input or output message and stops the request. (one of: none, block). |
|
strings |
Content types to inspect. Text only when empty. Image requires engine support. (one of: text, image; repeatable; replaces the full list on update). |
|
string |
Engine for denied topics. Local runs in the gateway and keeps text in the cluster. Bedrock runs in the companion guardrail. Unset uses the platform default. (one of: local, bedrock). |
|
bool |
Runs the local engine alongside Bedrock and reports differences without enforcing them. Not yet available. (true when set; pass |
|
bool |
Turns denied topics on or off. Configuration is kept while off. Matching is semantic, so paraphrases and misspellings match. (true when set; pass |
|
stringArray |
Topics denied by meaning, each with a name, definition, and optional examples. 1 to 30 topics. (repeatable; name (bare values comma-split) or protojson object; replaces the full list on update). |
|
string |
Engine for grounding. Local runs in the gateway. Bedrock runs in the companion guardrail. Unset uses the platform default. (one of: local, bedrock). |
|
bool |
Runs the local engine alongside Bedrock and reports differences without enforcing them. Not yet available. (true when set; pass |
|
bool |
Turns contextual grounding on or off. Checks run on output only and require a grounding source and query in the request. (true when set; pass |
|
bool |
Turns this check on or off independently. (true when set; pass |
|
float |
Minimum score from 0.0 to 0.99. The action fires below it. |
|
string |
Action on a low score. None records the result. Block returns the blocked output message. (one of: none, block). |
|
bool |
Turns this check on or off independently. (true when set; pass |
|
float |
Minimum score from 0.0 to 0.99. The action fires below it. |
|
string |
Action on a low score. None records the result. Block returns the blocked output message. (one of: none, block). |
|
string |
Automated reasoning is available only on Amazon Bedrock, so its engine can’t be set to local. (one of: local, bedrock). |
|
bool |
Shadow evaluation is not available for automated reasoning. (true when set; pass |
|
bool |
Turns automated reasoning on or off. Findings are added to the response trace. Requests are never blocked. (true when set; pass |
|
strings |
ARNs of one or two published Bedrock Automated Reasoning policies. Each ARN ends in a numeric version such as :1. DRAFT versions are rejected. (repeatable; replaces the full list on update). |
|
float |
Confidence required for a definitive finding, from 0.0 to 1.0. Lower-confidence results are reported as ambiguous. |
|
stringArray |
Tags. (repeatable key=value; replaces the full map on update). |
|
string |
manifest to create from (YAML or JSON; "-" for stdin); flags override file values. |
|
bool |
print the request that would be sent (with the computed update mask) and exit without calling the server help for create. |
Global flags
| Value | Type | Description |
|---|---|---|
|
string |
Redpanda or |
|
stringArray |
Override |
|
bool |
Ignore |
|
string |
|
|
bool |
Enable verbose logging. |