wedata-ml-runtime
WeData 3.0 机器学习 Notebook Kernel 运行时初始化库。
定位
本包是 WeData 3.0 Notebook 场景下,运行在 DLC 计算容器中的 Kernel 启动适配层。它不改变用户代码,而是通过 monkey patching 把开源的 mlflow / feast 改造成带有 WeData 平台语义(多租户隔离、CAM 鉴权、审计、网关代理)的版本。
前身:
wedata-pre-code(同时支持 2.0 和 3.0)本包仅承载 WeData 3.0 逻辑。WeData 2.0 仍沿用
wedata-pre-code,位于../wedata-pre-execute/(已进入维护模式)。
核心能力
- 装包标记:配合 DLC 镜像预装 → 运行时刷新
/opt/spark/pip_list.json系统包快照,消除重复装包告警 - 环境变量注入:
WEDATA_WORKSPACE_ID/MLFLOW_TRACKING_URI/TENCENTCLOUD_SECRET_ID/KEY/TOKEN/KERNEL_WEDATA_*等 20+ 条 - MLflow 客户端重写:
create/get/search/rename/delete experiment改走腾讯云 OpenAPI(TC3-HMAC-SHA256 手签)MlflowClient上所有写操作套装饰器做 workspace_id 校验
- Feast gRPC 代理:给
RemoteRegistry加X-Target-Service-IP/PORT请求头走反向代理 - 自动 tag 注入:所有 mlflow 对象自动打上
wedata.workspace / wedata.datascience.type / mlflow.user
使用
%pip install wedata-ml-runtime
from wedata_ml_runtime.client import Wedata3PreCodeClient
client = Wedata3PreCodeClient(
workspace_id="...",
base_url="...",
region="...",
ap_region_id=1,
mlflow_gateway_url="...",
feast_gateway_url="...",
mlflow_proxy_ip="...",
mlflow_proxy_port="...",
feast_proxy_ip="...",
feast_proxy_port="...",
kernel_task_name="...",
kernel_task_id="...",
cloud_sdk_secret_id="...",
cloud_sdk_secret_key="...",
cloud_sdk_secret_token="...",
qcloud_uin="...",
qcloud_subuin="...",
)
client.init()
必传参数
| 参数 | 说明 |
|---|---|
workspace_id |
工作空间 ID |
base_url |
WeData 控制台基础 URL |
mlflow_gateway_url |
MLflow Serverless 网关地址 |
feast_gateway_url |
Feast Serverless 网关地址 |
mlflow_proxy_ip / mlflow_proxy_port |
MLflow 转发地址 |
feast_proxy_ip / feast_proxy_port |
Feast 转发地址 |
可选参数
| 参数 | 说明 |
|---|---|
region / ap_region_id |
地域标识 |
kernel_task_name / kernel_task_id |
任务身份 |
kernel_submit_form_workflow |
工作流标识 |
cloud_sdk_secret_id / cloud_sdk_secret_key / cloud_sdk_secret_token |
CAM 临时凭证三元组(12 小时过期) |
cloud_sdk_env |
SDK 环境(dev / test / pre) |
cloud_sdk_user_id |
测试账户 ID(cloud_sdk_env=test 时使用) |
qcloud_uin / qcloud_subuin |
腾讯云主账号 / 子账号 UIN |
构建发布
bash build.sh
脚本内容:rm -rf dist/ build/ → uv build → twine upload dist/*
从 wedata-pre-code 迁移
| 维度 | 老包 wedata-pre-code |
新包 wedata-ml-runtime |
|---|---|---|
| PyPI 名 | wedata-pre-code |
wedata-ml-runtime |
| Python 模块 | wedata_pre_code.wedata3.client |
wedata_ml_runtime.client |
| 客户端类 | Wedata3PreCodeClient |
Wedata3PreCodeClient(保持兼容) |
| extras | pip install "wedata-pre-code[wedata-3]" |
无需 extras,主依赖已覆盖 |
| 覆盖平台 | 2.0 + 3.0 | 仅 3.0 |
迁移办法:把 %pip install wedata-pre-code[wedata-3]==X.Y.Z 改为 %pip install wedata-ml-runtime==X.Y.Z,并把 from wedata_pre_code.wedata3.client import Wedata3PreCodeClient 改为 from wedata_ml_runtime.client import Wedata3PreCodeClient。
相关设计文档
application/science/doc/plan/wedata-pre-code-image-baseline-plan.md:DLC 镜像基线 + 运行时 Override 方案
Release files for wedata-ml-runtime-39 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wedata_ml_runtime_39-0.1.2.tar.gz | 13.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wedata_ml_runtime_39-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.5 kB
Release files / wedata_ml_runtime_39-0.1.2.tar.gz
| Download URL | wedata_ml_runtime_39-0.1.2.tar.gz |
|---|---|
| Size | 13.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
921df9c20b7d79865fa9ce2c23722e04af9ed55c1af1bcaa869663ff500e8778
|
|
BLAKE2b-256 checksum How to use checksums |
d637236a9ed0b1f5ccb1db5dcf3c681ffb479e1869d23396a0ff9326b13b8919
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|
Release files / wedata_ml_runtime_39-0.1.2-py3-none-any.whl
| Download URL | wedata_ml_runtime_39-0.1.2-py3-none-any.whl |
|---|---|
| Size | 14.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
08868e0ffb93c7179463340a3514a60fb35856681425e0dd81102892f5bf063a
|
|
BLAKE2b-256 checksum How to use checksums |
d8b272010c5912f2808434f5dee31ab1203557975442510355e211cd90c8f764
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|