大数据智能体工作台 DataBuddy 数据科学家快速上手

本教程面向数据科学家 / ML 工程师 ,演示用 DataBuddy 完成一条最小可用的机器学习生产链路:从特征数据上传,到 AutoML 自动选模、训练,再到一键部署。45 分钟后你将得到一个可对外推理的在线模型服务。

相关产品
大数据智能体工作台 DataBuddy 产品页,含版本规格、价格与购买入口。

注意:说明:

注意:预计用时 45 分钟。学习目标:完成「特征注册 > AutoML 训练 > 模型上线」的端到端 ML 闭环。

一、场景介绍

某电商平台希望预测客户流失(Customer Churn)。数据团队已经把客户行为特征整理成 CSV,你需要:

1. 把特征数据上传并注册成离线特征表。

2. 用 AutoML(分类)一键自动选模并训练。

3. 查看实验记录,把最优模型注册到模型管理。

4. 把模型一键部署成在线推理服务,验证 API 可用。

在本教程中,你将:

1. 准备特征数据。

2. 创建 AutoML 分类实验,配置训练数据和参数。

3. 在实验管理中查看运行结果,识别最优模型。

4. 把最优模型注册并发布到在线推理服务。

5. 调用服务做单条推理验证。

二、前提条件

·已完成 5 分钟完成第一个 SQL 查询 。

·当前 Workspace 已开通 数据科学 模块、绑定计算资源、机器学习资源组。

·当前账号对目标 Catalog / Schema 拥有写入权限(用于创建特征表与注册模型)。

·已在 Studio 中连接 计算资源 ,Notebook 内核为 Python 3.10 及以上 ;使用 机器学习 镜像,已预装特征工程包 wedata3-feature-engineering。未预装时执行 %pip install "wedata3-feature-engineering[mlflow3]==0.2.3"(要求 MLflow ≥ 3.0.0)。

·具备机器学习基础概念(特征、训练、评估、部署)。

·已下载样例 weshop_data 中的 customer_churn_class.csv。

四、1.1 CSV 文件上传到表

1. 点击左侧导航数据接入 ,点击文件上传到表。

2. 建表方式选择创建新表,选择目标 schema 作为存储位置。

3. 点击建表,建表成功后会自动跳转。

4. 记住上传目录 :表名右侧点击可复制表路径。

五、1.2 用特征工程 SDK 把 CSV 注册为特征表

特征表是同时具备 主键 与 时间戳键 的表。通过特征工程 SDK 注册后,该表既可作为 AutoML 训练数据,又能被特征管理模块统一索引与复用。

1. 在同一文件夹新建 Notebook prepare_churn_data.ipynb,启动使用计算资源的 Kernel:点击右上角 未连接 ,搜索并选择用于机器学习的资源组进行连接,待状态变为已连接 。

镜像在创建计算资源时选择 :AutoML / 特征工程需使用 机器学习 场景镜像,而非默认基础镜像。创建计算资源时,在「镜像版本」处勾选 机器学习 即可切换到机器学习场景镜像,具体操作见 创建计算资源 。

2. 首次运行先确认 SDK 已安装 。新建一个单元格执行下面的检查;若无输出说明当前内核未安装,取消注释执行安装,装完务必重启内核 再继续:

# 检查特征工程 SDK 是否已安装(机器学习镜像已预装,会打印版本)%pip list | grep wedata3-feature-engineering# 未安装时取消下一行注释执行(要求内核 Python ≥ 3.10、MLflow ≥ 3.0.0),装完重启内核# %pip install "wedata3-feature-engineering[mlflow3]==0.2.3"

3. 在下一个单元格运行建表代码。在create_table中修改相关信息:

import pandas as pdfrom pyspark.sql.functions import current_timestampfrom wedata.feature_engineering.client import FeatureEngineeringClientfrom wedata.feature_store.constants.engine_types import EngineTypes# Studio(DLC)Notebook 内核已内置 spark 会话,可直接使用 spark 变量,无需手动创建 SparkSession# 初始化特征工程客户端(鉴权信息由 Notebook 内核从环境变量自动注入,无需手动配置)fe = FeatureEngineeringClient(spark)# 读取上传的 CSV,并补充时间戳列# 注意:请把下方路径替换为你在步骤 1.1 上传 CSV 的实际目录路径。# 可在左侧文件管理器中右键该 CSV 文件、选择「复制路径」获取完整路径,# 形如 /Workspace/Users/<你的账号>/customer_churn_class.csvpdf = pd.read_csv("/Workspace/Users/<你的账号>/customer_churn_class.csv")df = spark.createDataFrame(pdf).withColumn("event_timestamp", current_timestamp())# 创建特征表:指定主键与时间戳键,engine_type 固定用 Iceberg,df 用于推断 schema 并写入首批数据fe.create_table( name="customer_churn_features", # (可修改)特征表名 catalog_name="your_catalog", # 目标 Catalog 名 database_name="your_schema", # 目标 Schema 名 primary_keys=["customer_id"], # 主键(支持复合主键) timestamp_key="event_timestamp", # 时间戳键(单数) engine_type=EngineTypes.ICEBERG_ENGINE, df=df, # 用 df 推断 schema 并写入首批数据 description="客户流失特征表,用于 AutoML 训练。",)# 读回离线特征表,验证写入结果(表名为上面 create_table 的三段式全名,请替换为你自己的 catalog.schema)fe.read_table(name="your_catalog.your_schema.customer_churn_features").show(5)

执行后,你应该看到特征表已创建,包含若干客户特征字段(如 tenure_months、monthly_charges、contract_type 等)、主键 customer_id、时间戳键 event_timestamp 和目标列 churn。
常见报错及解决方案请参考 最佳实践与异常排查。

注意:说明:

七、2.1 进入实验列表

1. 顶部导航切换到 数据科学 > 模型实验 。

2. 单击 分类模型 ,进入创建表单页面。

八、2.2 基础配置

字段 取值
实验名称 churn_classification_v1
实验描述 客户流失分类实验 – 首次跑通
资源组 下拉选择用于训练的资源组

九、2.3 数据配置

1. 训练数据 :下拉选择 Catalog 中的 customer_churn_features 特征表,选定后右侧自动展示数据配置区。

2. 结果列 :单选 churn 作为分类标签列,该列会在右侧数据配置区自动标记为 用于结果 。

3. 训练列 :多选参与训练的特征列;不勾选 customer_id、event_timestamp 等不应作为特征的列(未选中的列不参与训练)。

4. 缺失值 :在右侧数据配置区中按列下拉选择缺失值补全方式。

十、2.4 训练配置

字段 推荐值
评估指标 F1 Score
搜索空间 sklearn / xgboost / lightgbm
最大运行时间 10 分钟(超时停止实验)
最大运行次数 20(实验最多生成的运行任务数量)
最大运行并发 1(实际并发还受限于资源组可用资源)

十一、2.5 创建并运行

点击页面底部 确定 ,系统会自动启动 AutoML 训练并跳转到该实验的详情页,状态显示为 准备中 或 训练中 。

若你需要创建其他类型的模型实验,请参考 创建实验 。

十三、3.1 实验状态

1. 自动跳转到实验进度界面 ,等待状态变为 完成 (绿色)

2. 在面板上可查看实验详细配置、最佳运行、工作流等信息

十四、3.2 进入任务详情

1. 点击运行名称 churn_classification_v1 进入实验详情。

2. 在上方 tab 栏可点击查看概览信息、模型指标、系统指标与该运行下的模型文件

十五、步骤 4:把模型注册到模型管理

AutoML 实验完成后,从最佳运行将模型注册到 模型 列表(命名为 catalog.schema.model_name 三段式全名):

1. 在实验详情页点击父运行进入运行详情,点击 模型注册 ,选择 新模型 并输入符合 catalog.schema.model_name 规范的名称(目标 Catalog 需为 Model 类 Catalog ,可在 Catalog 中复制路径)。

2. 顶部导航切换到 数据科学 > 模型管理 ,找到刚注册的模型。

3. 点击模型名称进入 Catalog 中的模型详情页,确认存在 Version 1 。

4. 点击 Version 1,可以看到该版本详细信息

详细模型管理操作见 模型管理。

十七、5.1 进入创建服务并填写基础信息

1. 顶部导航切换到 数据科学 > 模型服务 ,点击 新建服务 (也可在该模型详情页点击部署模型 )。

2. 填写基本配置:

字段 取值
服务名称(Endpoint) churn_predict_service(创建后不可修改,工作空间内全局唯一)
服务描述 客户流失预测在线推理(用于列表页向团队说明用途)

十八、5.2 配置服务版本

单次最多可配置 5 个服务版本(用于灰度发布或 A/B 测试),为该服务添加一个版本,依次填写:

字段 取值
服务名称 该服务的名称,必填项
服务描述 描述服务,选填,不超过100字
部署模型 选择 Step 4 注册的模型
版本 选择 Step 4 注册的模型的版本(默认最新版本 Version 1)
资源来源 平台按量计费(Serverless)
资源规格 4C8G(CPU 规格起步;深度学习 / GPU 模型选 GPU 规格)
请求限流 不限流
副本调节 手动调节
副本数量 1
调度策略 优先占满整机

十九、5.3 配置高级选项(可选)

配置项 推荐值
是否鉴权 推荐 开启 ;开启后调用方需在请求 Header 中携带平台生成的 Token。
服务日志投递 将请求 / 响应实时日志投递到日志服务,用于在线问题排查,需要有 CLS 权限。

注意:说明:

注意:生产服务建议同时开启 鉴权 与 推理表 :前者保证调用安全,后者为后续模型监控与重训提供事实数据。资源规格与副本数量的弹性伸缩详见 资源配置与自动伸缩 。

20、5.4 保存并启动

点击 保存并启动 ,平台校验必填项后拉起计算资源并加载模型,状态依次进入 未就绪 > 启动中 > 运行中 (通常 3~5 分钟);也可先 保存 ,稍后在服务详情页启动。

22、6.1 获取服务调用信息

1. 服务进入 运行中 后,在模型服务列表点击服务名 churn_predict_service 进入 服务详情页, 点击服务调用 ,复制 调用地址 。

2. 获取鉴权密钥(<token>) :在服务详情页切换到 服务鉴权 标签页,确认 开启鉴权 开关已打开;在密钥列表中找到状态为 已启用 的密钥(默认有一条 default-key),点击 密钥 列的复制按钮复制其值。该值即为调用示例中 Authorization: Bearer <token> 的 <token>。如需多个密钥,可点击 新增密钥 生成。

3. 单击顶部操作区的 服务调用 ,还可查看签名密钥、签名计算指引与 cURL / Python 调用示例;若开启了鉴权,调用时需按指引携带鉴权信息(如在请求 Header 中携带 Authorization: Bearer <token>)。

调用示例(cURL,启用鉴权):

curl -X POST "https://<service-url>/predict" \\ -H "Authorization: Bearer <token>" \\ -H "Content-Type: application/json" \\ -d '{"dataframe_records": [{ "age": 27, "gender": "Male", "tenure_months": 70, "monthly_charges": 112.99, "total_charges": 7410.38, "contract_type": "One Year", "payment_method": "Credit Card", "num_support_tickets": 5, "avg_monthly_usage": 271.91 }]}'

23、6.2 通过 MLflow Deployments SDK 调用(推荐)

在 Notebook 中可通过 DataBuddy 部署插件 wedata3-mlflow-tcdeploy-plugin 接入 MLflow Deployments API(target 固定为 tcdeploy)发起推理。先安装插件(机器学习 镜像通常已预装);平台内运行时临时密钥与工作空间上下文由 Notebook 内核自动注入,无需手动配置:

%pip install "wedata3-mlflow-tcdeploy-plugin"

from mlflow.deployments import get_deploy_client# target 固定为 "tcdeploy"client = get_deploy_client("tcdeploy")# 控制台部署的服务,可通过 list_deployments() 获取服务组 ID(返回项的 name 即 service_group_id)service_group_id = client.list_deployments()[0]["name"]# predict 的 deployment_name 传服务组 ID(service_group_id,形如 msg-xxxxxx),不是服务名称result = client.predict( deployment_name=service_group_id, inputs={"dataframe_records": [{ "age": 27, "gender": "Male", "tenure_months": 70, "monthly_charges": 112.99, "total_charges": 7410.38, "contract_type": "One Year", "payment_method": "Credit Card", "num_support_tickets": 5, "avg_monthly_usage": 271.91 }]}, config={"auth_token": "Bearer <token>"}, # 服务开启鉴权时必填)print(result)

注意:说明:

注意:inputs 必须是 JSON 可序列化对象;pandas.DataFrame 需先 df.to_dict(orient="records") 转换后再传,不能直接传入。

24、步骤 7:监控服务运行情况

模型服务的监控分服务、版本两级页面:

·调用监控推理监控与日志

·监控 (版本详情页 > 实例列表下的页签):网络流量(MBytes)、QPS、QPS 限流。

·事件、日志推理监控与日志

调用监控支持按时间范围(近 1 小时、近 24 小时、近 7 天、自定义)查看;版本级监控可按时间粒度(全部 / 1 分钟等)与实例查看。详细指标与日志说明详见 推理监控与日志 。

25、验证结果

完成全部步骤后,你应该看到:

·Catalog 中存在特征表 DataLakeCatalog.<用户名>_ml_db.customer_churn_features,并出现在 数据科学 > 特征管理 列表中。

·实验列表中 churn_classification_v1 状态为 成功 ,含最佳运行记录。

·模型列表中存在已注册的模型 + Version 1,能看到特征溯源和签名。

·模型服务列表中 churn_predict_service 状态为 运行中 。

·调用服务能返回预测结果。

26、总结

在本教程中,你完成了:

·通过特征工程 SDK 把 CSV 注册为特征表,作为特征数据底座。

·用 AutoML 分类实验自动选模、训练、评估。

·在实验管理中查看最佳模型,并完成注册到模型管理。

·把最佳模型一键发布为在线推理服务(含鉴权、监控)。

·通过 MLflow Deployments SDK 调用服务验证推理结果。

赞 (0)
上一篇 4天前
下一篇 4天前