Azure AI Vision Java 图像分析技能
帮助 Java 开发者快速构建图像描述、OCR、目标检测与智能裁剪应用。
展示了环境变量取密钥、DefaultAzureCredential 和托管身份,并建议生产环境优先使用托管身份;但未说明图像会发送到 Azure、数据保留、敏感 OCR 内容处理、最小权限、用户确认、网络访问边界或回滚,因此扣分。未发现恶意软件、凭据窃取或破坏性默认行为。
主路径覆盖安装、同步/异步客户端、主要视觉功能和 HTTP 错误处理;但版本为 beta,多个示例依赖未定义的 imageUrl、endpoint 或导入,缺少输入校验、空结果保护、超时配置和实际重试实现,且部分示例可能因未验证 SDK API 而无法直接编译。静态证据不足,故不超过10分。
目标受众、功能范围和触发短语较明确,覆盖 caption、OCR、对象、标签、人物和裁剪,并提及区域限制和中文语言参数;但未明确不适用场景、隐私敏感图像边界、成本/配额、部署前提或中国大陆网络可达性,扣分。
SKILL.md 有元数据、安装、客户端、功能表、示例、错误处理、环境变量、限制和触发短语,另有 references/examples.md;但缺少变更日志、稳定版本策略、维护责任和更新路径,beta 依赖未解释,示例与主文档重复且存在假设,扣分。MIT 许可证和 Microsoft 作者信息清楚。
内容直接支持常见 Java 图像分析代码生成,覆盖多个功能并给出报告示例,核心价值可见;但示例未证明可编译或运行,输出通常只是控制台片段,缺少生产级配置、测试、重试、隐私处理和可直接集成的完整接口,因此只能给静态审查下的有限分数。
仓库包含版本化 SKILL.md、引用示例、MIT 许可证以及通用 CI/评估代码,具备一定审计线索;但没有该技能专属测试、真实 CI 覆盖、执行结果或第三方交叉验证,且外部文档仅以链接形式出现,静态可复现性有限。
- 不要将 API 密钥硬编码或提交到仓库;优先使用托管身份,并确认 Azure 资源的最小 RBAC 权限。
- 将图像、OCR 文本和远程 URL 视为可能包含敏感数据,部署前确认数据流、区域、保留策略和用户授权。
- 1.1.0-beta.1 及示例代码应先在目标项目中编译验证;补充未定义变量、完整导入、空结果处理、超时和指数退避重试。
- Caption/Dense Captions 的区域限制以及中国大陆网络和服务可用性需单独核实。
它能做什么 & 适用场景
该技能面向使用 Azure AI Vision Image Analysis Java SDK 的开发者。它提供 Maven 依赖、API 密钥或 Azure 身份凭据认证、同步与异步客户端创建示例。技能涵盖图像描述、密集描述、OCR、标签、目标、人物检测和智能裁剪。适合需要在 Java 应用中调用 Azure 图像分析服务的场景,但需要 Azure 终结点和相应凭据。
指导开发者添加 com.azure:azure-ai-vision-imageanalysis Maven 依赖,创建同步或异步客户端,并调用 Azure Vision 终结点分析本地文件或图像 URL。它展示如何生成描述、提取文字及其置信度和边界多边形、识别标签、检测带边界框的目标和人物、生成智能裁剪区域,以及组合多个视觉特征。示例还包含性别中立描述、语言设置、异常处理和环境变量配置。
- Java 开发者需要为图片生成可读描述时,使用 CAPTION 或 DENSE_CAPTIONS。
- 需要从扫描文档或图片提取文字、行、单词及位置时,使用 READ OCR。
- 需要识别图片中的物体及其边界框时,使用 OBJECTS。
- 需要为图片内容生成标签或检测人物位置时,使用 TAGS 或 PEOPLE。
- 需要为缩略图或不同宽高比生成重点区域时,使用 SMART_CROPS。
优缺点一览
- 覆盖描述、OCR、标签、目标、人物和智能裁剪等多种图像分析功能。
- 同时提供 API 密钥、DefaultAzureCredential、同步客户端和异步客户端示例。
- 示例包含本地文件和图像 URL 输入,以及置信度、边界框和错误状态读取方式。
- Maven 示例使用 `1.1.0-beta.1` 预览版本。
- CAPTION 和 DENSE_CAPTIONS 需要 GPU 支持的区域,部署前必须检查区域可用性。
- 需要 Azure Vision 终结点和凭据;源材料未说明费用、配额或具体部署流程。
如何安装
安装整个技能集合:运行 npx skills add microsoft/skills,在向导中选择此技能。技能会安装到所选 Agent 的目录,例如 GitHub Copilot 使用 .github/skills/。在 Java 项目中加入 com.azure:azure-ai-vision-imageanalysis:1.1.0-beta.1 Maven 依赖。
如何使用
触发示例:image analysis Java、Azure Vision SDK、image captioning 或 OCR image text extraction。配置 VISION_ENDPOINT;使用 API 密钥认证时再配置 VISION_KEY,使用生产环境 DefaultAzureCredential 时配置 AZURE_TOKEN_CREDENTIALS=prod。随后参考技能中的 Java 示例调用 analyze 或 analyzeFromUrl,并选择所需的 VisualFeatures。