开发与工程 ✓ Microsoft · 官方 azurecontent-moderationpython-sdkharmful-content-detectionblocklist-managemententra-id

Azure AI 内容安全 Python 技能

帮助 Python 应用检测文本和图像中的有害内容,并管理自定义屏蔽词。

FollowSkills 评估 · FSRS-2.0
不推荐
53/ 100 五分制 2.7 / 5
信任安全17 / 25 · 3.4/5

技能明确优先使用 DefaultAzureCredential、限制生产凭据链,并将端点、令牌和 API 密钥放入环境变量;同时保留 API key 路径并支持图像 URL、日志和 blocklist 管理。扣分原因是未要求调用外部 Azure 服务前取得用户确认,未充分说明文本、图像及 URL 会发送到云端,未讨论敏感内容、日志脱敏、最小 Azure 权限、失败回滚或图像 URL 的访问风险。

可靠稳定7 / 20 · 1.8/5

主文档在同步客户端生命周期、认证偏好和同步/异步模式方面基本一致,并提示确认当前 API 方法名;但示例存在未定义的 endpoint 变量,缺少异常、超时、重试、配额和网络失败处理,也没有可复现的该技能专属测试。按静态校准,执行可靠性上限为 10,因此扣分并评为 7。

适用触发9 / 15 · 3.0/5

触发词、Python SDK、文本/图像审核、blocklist 和严重度分类场景较清楚,适合需要 Azure AI Content Safety 的编码代理;但没有明确非适用范围、输入限制、输出契约或触发排除条件,也未说明中文内容质量、区域可用性及中国大陆网络可达性。

规范维护10 / 15 · 3.3/5

YAML 元数据包含名称、MIT 许可、作者、版本和包名;文档按安装、认证、核心场景、最佳实践和引用资料组织,并提供额外参考文件。扣分原因是没有变更日志、维护责任人和明确更新路径,缺少依赖版本约束、FAQ、故障排查、删除/清理示例,且引用资料与能力清单部分重复。

有效结果6 / 15 · 2.0/5

示例覆盖文本和图像分析、blocklist、严重度及客户端选择,能够直接支持常见入门实现;但生产级错误处理、异步完整示例、阈值决策、隐私处理和资源清理路径不完整,示例正确性也未由该技能专属执行证据验证。按静态校准,effectiveness 上限为 7,因此评为 6。

证据核验4 / 10 · 2.0/5

技能提供了少量 Microsoft Learn 链接、明确的包名和可审计代码片段;仓库还展示了通用 CI、Vally 评估和测试 harness,但给定材料没有证明这些测试覆盖该技能的关键路径,也没有该技能专属测试结果或第三方交叉验证。按静态校准,verifiability 上限为 5,因此评为 4。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 将用户文本、图像内容或远程图像 URL 发送到 Azure 前,应明确告知数据流、区域、保留策略和授权边界,并避免把敏感分析结果原样写入日志。
  • 示例中的 endpoint 未定义,且缺少异常、重试、超时、配额和异步完整路径;接入前应以锁定版本的官方 API 文档和项目测试验证方法名、模型字段及严重度语义。
  • 中国大陆网络可达性、Azure 服务区域和企业代理配置未在技能中说明,不能据此保证目标环境可用。
查看完整评分方法 →

它能做什么 & 适用场景

该技能为 Azure AI Content Safety Python SDK 提供面向编码代理的使用指导。它覆盖文本与图像分析、多严重性级别、四类有害内容以及自定义文本屏蔽列表管理。技能优先推荐使用 DefaultAzureCredential 和 Microsoft Entra ID,并要求以上下文管理器管理客户端生命周期。适合正在 Python 应用中接入 Azure 内容审核的开发者,但使用前需要 Azure Content Safety 资源和相应认证配置。

指导代理安装 azure-ai-contentsafety,读取 CONTENT_SAFETY_ENDPOINT 等环境变量,创建 ContentSafetyClient 或 BlocklistClient,并调用 analyze_text、analyze_image、create_or_update_text_blocklist 和 add_or_update_blocklist_items 等操作。它展示如何从本地文件编码图像或使用图像 URL,检查 Hate、Sexual、Violence 和 SelfHarm 类别及严重性,配置四级或八级严重性输出,并在文本分析中应用屏蔽列表。

  1. 负责用户生成内容的 Python 开发者,需要在发布文本前检测仇恨、色情、暴力或自残内容。
  2. 构建图像上传功能的团队,需要在内容展示前分析本地图像或远程图像。
  3. 需要屏蔽领域特定词语的应用开发者,可创建屏蔽列表并在命中时立即拒绝文本。
  4. 运行 AI 应用的工程团队,需要在向用户展示模型输出前进行内容预审核并记录分析结果。

优缺点一览

优点
  • 覆盖文本分析、图像分析和自定义屏蔽列表管理。
  • 明确提供四类有害内容、严重性级别和八级输出模式的示例。
  • 推荐 DefaultAzureCredential,并强调同步或异步客户端及凭据的生命周期管理。
  • 包含本地图像、图像 URL、屏蔽词命中和 AI 输出预审核等具体模式。
局限
  • 依赖 Azure Content Safety 资源、端点和认证配置,不能脱离 Azure 服务独立运行。
  • 材料没有说明成本、配额、服务地区或错误重试策略。
  • README 提供测试框架,但材料未给出该技能单独的测试结果。
  • 技能正文引用了 references/capabilities.md 和 references/non-hero-scenarios.md,但未提供其内容。

如何安装

将仓库添加到编码代理:npx skills add microsoft/skills,然后在向导中选择所需技能。手动方式是克隆 https://github.com/microsoft/skills,并将 .github/plugins/azure-sdk-python/skills/azure-ai-contentsafety-py 复制到项目所用代理的技能目录,例如 .github/skills/。在 Python 环境中安装 SDK:pip install azure-ai-contentsafety。

如何使用

可用触发词包括“azure-ai-contentsafety”“ContentSafetyClient”“content moderation”“harmful content”“text analysis”和“image analysis”。让代理生成或修改 Python 内容安全代码时,说明要分析文本、分析图像、管理屏蔽列表或设置严重性级别。运行代码前设置 CONTENT_SAFETY_ENDPOINT;使用 DefaultAzureCredential 时按材料要求设置 AZURE_TOKEN_CREDENTIALS=prod,旧式密钥认证则设置 CONTENT_SAFETY_KEY。

对比同类

材料明确将 DefaultAzureCredential 与旧式 AzureKeyCredential API 密钥路径进行了比较:新代码应优先使用 DefaultAzureCredential;已有尚未迁移到 Entra ID 的密钥部署才使用 AzureKeyCredential。

常见问题

使用该技能需要哪些 Azure 配置?
需要 CONTENT_SAFETY_ENDPOINT。使用 DefaultAzureCredential 时,生产环境还应设置 AZURE_TOKEN_CREDENTIALS=prod 或指定凭据;旧式密钥认证需要 CONTENT_SAFETY_KEY。
它能分析哪些内容?
它指导 ContentSafetyClient 分析文本和图像,覆盖 Hate、Sexual、Violence 和 SelfHarm 四类内容,并返回严重性结果。
是否支持自定义屏蔽词?
支持。BlocklistClient 可以创建或更新文本屏蔽列表、添加条目,并在文本分析时检测命中;halt_on_blocklist_hit 可用于立即停止处理。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Identity Python 认证技能

为 Python Azure 应用提供基于 Microsoft Entra ID 的可复用身份认证指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

帮助 Java 开发者构建高吞吐、可 checkpoint 的 Azure 事件流应用。

开发与工程 ✓ Microsoft · 官方

Azure Tables Python 技能

帮助 Python 开发者使用 Azure Tables 完成安全认证、实体管理、查询与批量事务操作。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

自动化与运维 ✓ Microsoft · 官方

Azure 应用可靠性顾问

评估并提升 Azure Functions 与 App Service 的可靠性。

开发与工程 ✓ Microsoft · 官方

Azure 云架构师

帮助编码代理按照 Azure 架构中心最佳实践设计和审查生产级云系统。

开发与工程 ✓ Microsoft · 官方

Azure AI 文本分析 Python 技能

为 Python 开发者提供 Azure 文本分析与自然语言处理集成指导。

自动化与运维 ✓ Microsoft · 官方

Azure 资源架构可视化器

分析 Azure 资源组及其依赖关系,生成详细的 Mermaid 架构图。

开发与工程 ✓ Microsoft · 官方

Azure Maps .NET 开发技能

为 .NET 应用提供地理搜索、路线、地图、定位与天气开发指导。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision 图像分析技能

为 Python 编码代理提供 Azure AI Vision 图像理解实现指南。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage Python 技能

帮助编码代理使用 Python 构建安全、可靠的 Azure Queue Storage 异步消息处理。

自动化与运维 ✓ Microsoft · 官方

Azure AI 网关治理

用 Azure API Management 统一治理 AI 模型、MCP 工具和智能体流量。

自动化与运维 ✓ Microsoft · 官方

AKS Automatic 就绪评估

评估 Kubernetes 工作负载能否迁移到 AKS Automatic,并定位兼容性阻塞项。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB .NET 资源管理技能

用 .NET 通过 ARM 部署和管理 Azure Cosmos DB 资源。

开发与工程 ✓ Microsoft · 官方

Azure Playwright 工作区管理技能

用 .NET 通过 Azure Resource Manager 配置和管理 Microsoft Playwright Testing 工作区。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Python 技能

帮助 Python 开发者可靠地构建和操作 Azure Cosmos DB NoSQL 应用。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

帮助 Python 编码代理安全管理 Azure Key Vault 中的机密、加密密钥和证书。

开发与工程 ✓ Microsoft · 官方

Azure API Management Python 技能

帮助编码代理使用 Python SDK 管理 Azure API Management 的服务、API、产品、订阅与策略。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Python 技能

帮助 Python 开发者查询 Azure Monitor 日志与指标。

相关 Skills