mcpField
A
adf-ml-analytics

adf-ml-analytics

github.com/josiahsiegel数据与数据库59109 次安装19 周前更新
代码仓库

关于 adf-ml-analytics

为使用 Azure Data Factory 的数据与机器学习团队整理 ML 分析工作流模式,涵盖数据归档、特征处理和模型推理,并注明相关服务的弃用与迁移事项。

主要功能

  1. 01Azure ML 批处理与在线推理模式
  2. 02SQL 数据归档至 Parquet
  3. 03Azure AI Services 与 OpenAI 批处理
  4. 04Databricks 训练和批量评分
  5. 05Spark 数据流特征工程
  6. 06服务弃用与迁移说明

适用场景

  1. 01将临时 SQL 数据归档后用于分析
  2. 02通过 Azure ML 批处理端点运行推理
  3. 03编排 Databricks 模型训练与评分
  4. 04使用 Azure OpenAI 批处理进行文本分类

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/josiahsiegel/claude-plugin-marketplace --skill adf-ml-analytics

安装后在 Claude Code 中输入/adf-ml-analytics确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
ai-services-and-openai-patterns.md
azure-ml-patterns.md
databricks-ml-and-e2e-patterns.md
sql-archival-patterns.md

详细介绍

Azure Data Factory 机器学习与分析模式

概述

Azure Data Factory 通过集成 Azure Machine Learning、Azure AI Services、Databricks ML 和 Azure SQL Database 来编排 ML 工作流。本技能介绍了从临时数据源(如 Azure SQL Database)提取数据、将数据归档到 Azure Storage 以供长期分析,以及利用 ML 服务进行评分和分析的模式。

弃用通知与平台变更(截至 2026 年 3 月)

Azure AI Foundry -> Microsoft Foundry(2025 年 11 月)

  • 在 2025 年 11 月的 Ignite 大会上,Microsoft 将 Azure AI Foundry 更名为 Microsoft Foundry。
  • Microsoft Foundry 是统一的 AI 平台:Agent、工作流、模型和工具都由同一个资源提供程序提供。
  • ADF 被定位为 Microsoft Foundry 中的数据编排层,负责数据引入、转换、特征准备,以及由模型和 Agent 进行下游使用。
  • 新的 AI 功能主要在 Fabric Data Factory 中推出(Copilot、自然语言管道生成)。传统 ADF 仍受全面支持,但新增功能较少。

Azure ML SDK v1 - 支持将于 2026 年 6 月结束

  • 弃用日期:2025 年 3 月 31 日。支持结束日期:2026 年 6 月 30 日(还有 3 个月)。
  • 影响:AzureMLExecutePipeline 活动使用通过 SDK v1 发布的管道。这些管道将在 2026 年 6 月之后停止运行。
  • 相关 SDK 也将停用:azureml-train-core、azureml-pipeline、azureml-pipeline-core、azureml-pipeline-steps。
  • **必须迁移:**使用 Azure ML SDK v2 批处理终结点,通过 WebActivity 调用(参见 references/azure-ml-patterns.md)。
  • 所有新项目都必须使用批处理终结点,而不是已发布的管道。

Azure AI Inference SDK - 将于 2026 年 5 月 30 日停用

  • azure-ai-inference SDK(Python/JS/.NET)已弃用。
  • 请迁移到 OpenAI SDK,使用 OpenAI/v1 API。该 API 同时适用于 Azure OpenAI 和 Microsoft Foundry Models。
  • 任何通过 inference SDK 调用 Azure AI 模型终结点的代码都会受到影响。

Azure SQL Edge - 已于 2025 年 9 月 30 日停用

  • Azure SQL Edge(包含适用于边缘设备的 ONNX PREDICT)已不再提供。
  • 迁移方案:在边缘 SQL 场景中使用启用了 Azure Arc 的 Azure SQL Managed Instance。

适用于 Power BI 数据流的 Cognitive Services - 已停用

  • 停用日期:2025 年 9 月 15 日。Power BI 数据流中的 AI Insights 不再可用。
  • 替代方案:使用 ADF WebActivity 直接调用 Azure AI Services 终结点。

Azure Cognitive Services - 已更名

  • “Azure Cognitive Services” -> “Azure AI Services” -> 现已成为 Microsoft Foundry 的一部分。
  • API 终结点保持不变;品牌名称已变更。

ADF 中的 Apache Airflow - 已弃用

  • 2025 年初起不再面向新客户提供。现有部署仍可正常运行。
  • 迁移方案:使用 Fabric Data Factory、原生 ADF 管道或独立 Airflow 部署。

集成模式速查

模式活动类型摘要详情
Azure ML(旧版 SDK v1)AzureMLExecutePipeline通过关联的 SDK v1 服务执行已发布的 ML 管道。支持将于 2026 年 6 月结束——请迁移到批处理终结点。参见 references/azure-ml-patterns.md
Azure ML 批处理终结点(SDK v2)WebActivity批量推理的推荐方式。通过 REST 向批处理终结点提交作业,并使用 Until 循环轮询作业完成状态。参见 references/azure-ml-patterns.md
Azure ML 在线终结点WebActivity通过托管的在线终结点和 MSI 身份验证,对单条记录或小批量数据进行实时评分。参见 references/azure-ml-patterns.md
T-SQL PREDICTSqlServerStoredProcedure在数据库中使用 ONNX 模型进行评分。适用于 SQL Server 2017+、SQL MI 和 Synapse——不适用于 Azure SQL Database。参见 references/sql-archival-patterns.md
sp_execute_external_scriptSqlServerStoredProcedure在启用了 ML Services 的 SQL Managed Instance 中运行 Python/R 脚本。适用于中小型数据集。参见 references/sql-archival-patterns.md
SQL 到存储的归档Copy (ForEach)将临时 SQL 数据归档为 Blob/ADLS Gen2 中的 Parquet 文件。包含完整快照和增量水位线模式。参见 references/sql-archival-patterns.md
Azure AI ServicesWebActivity通过 REST 调用预构建 AI 功能(情感分析、异常检测、视觉)。使用 Key Vault 管理 API 密钥。使用 ForEach 进行批量评分。参见 references/ai-services-and-openai-patterns.md
Azure OpenAI Batch APIWebActivity以低 50% 的成本进行 LLM 评分。上传 JSONL、创建批处理作业并轮询作业完成状态。适用于文本分类和信息增强。参见 references/ai-services-and-openai-patterns.md
Databricks MLDatabricksJob通过 Databricks Jobs 编排 ML 训练和批量评分,并使用 MLflow 跟踪。提取 SQL 数据、进行评分并写回。参见 references/databricks-ml-and-e2e-patterns.md
Data Flow 功能ExecuteDataFlow在 ML 评分之前,使用基于 Spark 的特征工程,包括窗口函数、派生列、透视和筛选。参见 references/databricks-ml-and-e2e-patterns.md
端到端 ML 管道ExecutePipeline + Switch模块化管道:使用 Databricks 子管道执行归档 -> 特征工程 -> 训练或评分(Switch 活动)。参见 references/databricks-ml-and-e2e-patterns.md

最佳实践

数据架构
  1. 先归档,后分析 - 运行 ML 之前,先将临时 SQL 数据复制到存储中并保存为 Parquet
  2. 使用 Parquet 格式 - 列式格式最适合 ML 工作负载(压缩、列裁剪)
  3. 按日期分区存储 - 对版本化归档使用 snapshot_date=YYYY-MM-DD 分区
  4. 分隔容器 - 为原始归档、特征、模型和评分结果使用不同的容器
ML 编排
  1. 对复杂 ML(训练、MLflow、分布式计算)使用 Databricks Job 活动
  2. 对托管 ML 推理(SDK v2)使用 WebActivity + Azure ML 批处理终结点
  3. 对 LLM 评分(文本分析、信息增强)使用 WebActivity + Azure OpenAI Batch API,成本可降低 50%
  4. 对预构建 AI 功能(NLP、视觉、异常检测)使用 WebActivity + Azure AI Services
  5. 需要基于 Spark 的转换时,使用 Data Flows 进行特征工程
  6. 使用 Execute Pipeline 模式将归档 -> 特征 -> 训练 -> 评分步骤模块化
  7. 使用 T-SQL PREDICT 在数据库中进行评分(仅适用于 SQL Server/Managed Instance/Synapse——不适用于 Azure SQL Database)
安全
  1. 对所有 Azure 服务连接(ML 工作区、存储、SQL)使用 Managed Identity
  2. 使用 Key Vault 管理 API 密钥(Azure AI Services、外部终结点)
  3. 切勿硬编码管道 JSON 中的机密、连接字符串或 API 密钥
  4. 最小权限 - 仅授予所需角色(存储使用 Blob Data Contributor,ML 使用 ML 工作区角色)
成本优化
  1. 对数据流使用通用型计算资源,除非存在内存密集型需求
  2. 对可变的 ML 工作负载使用 Databricks 无服务器计算
  3. 为 ML 活动设置适当的超时时间(训练可能会长时间运行)
  4. 在延迟允许时,优先使用批量评分而非实时评分(成本更低、效率更高)
  5. 从 SQL 增量提取数据,避免重复复制未更改的数据

资源

其他参考文件

详细的 JSON 示例和实现模式位于 references/ 目录中:

  • references/azure-ml-patterns.md - Azure ML ExecutePipeline(旧版 SDK v1)、批处理终结点(SDK v2)和在线终结点的完整活动 JSON
  • references/sql-archival-patterns.md - T-SQL PREDICT、sp_execute_external_script、完整/增量 SQL 归档管道、ADLS Gen2 配置和存储组织
  • references/ai-services-and-openai-patterns.md - Azure AI 服务(情感分析、异常检测)、Azure OpenAI 批处理 API(JSONL 上传、作业创建、轮询)和批量评分模式
  • references/databricks-ml-and-e2e-patterns.md - Databricks ML 训练/评分管道、数据流特征工程,以及包含 Switch 活动的端到端 ML 管道

评论

支持 Markdown