ai-aws-content-moderation
ai-aws-content-moderation 插件支持集成 AWS Comprehend,在代理 LLM 请求时检查请求体的毒性(如亵渎、仇恨言论、侮辱、骚扰、暴力等),如果评估结果超过配置的阈值, 则拒绝该请求。
按请求格式处理
在 APISIX 中,该插件通过将完整的序列化 JSON 请求体发送到 Amazon Comprehend 来审核请求。它不会从检测到的请求格式中提取文本,被拒绝的请求会收到通用 HTTP 400 错误。
API7 企业版 3.9.16 或 3.10.3 起增加了按请求格式提取文本和生成拒绝响应的能力。网关会先检查 URI 特定规则,再检查仅基于请求体的规则,以识别请求格式:
- Bedrock Converse 要求 URI 以
/converse结尾且包含messages数组。 - Anthropic Messages 要求 URI 以
/v1/messages结尾。 - Responses API 要求 URI 以
/v1/responses结尾且包含input字段。 - Chat Completions 使用
messages数组。 - 当前面的规则均不匹配时,Embeddings 使用
input。 - 当前面的规则均不匹配时,其他非空 JSON 对象使用透传格式。
插件随后审核以下内容:
| 请求格式 | 审核的文本 |
|---|---|
| Bedrock Converse | system 和 messages 中的文本。 |
| Anthropic Messages | messages 中的文本,不包含顶层 system 提示词。 |
| Responses API | input 和 instructions 中的文本。 |
| Chat Completions | messages 中所有条目的文本。 |
| Embeddings | input 中的字符串或字符串数组。 |
| 其他 JSON(透传) |