使用 Workbench 上传模型
Workbench 提供了一个便捷的环境,用于下载模型文件、从本地计算机复制文件,以及将文件上传到模型存储中。本页仅介绍工作流中的 Workbench 部分:在本地准备模型,然后将其复制到 S3、PVC 或 OCI registry。
Model Catalog 不需要此页面:catalog 模型已由配置的源提供。在 Model Registry 中注册已上传的 artifact 是一个独立的控制台操作。上传完成后,请按照注册模型和版本创建一个已注册的模型版本,并使用生成的 Model URI。
目录
选择上传路径前提条件创建并连接到 Workbench将模型下载或复制到 Workbench将模型从 Workbench 上传到 S31. 在 Workbench 中准备 S3 访问2. 安装或验证 AWS CLI3. 上传并验证模型目录从 Workbench 将模型上传到 PVC将模型作为 OCI artifact 上传下一步:注册已上传的 artifact选择上传路径
前提条件
- 具有 Alauda AI 监控面板的访问权限以及目标命名空间。
- 一个正在运行的 Workbench,并具有足够的本地存储或已挂载的 PVC 存储来保存模型。
- S3 对象存储、PVC 或 OCI registry 中的目标位置。
- 目标存储的写入凭据。
- 对于 S3,需要已有的 bucket、endpoint、access key、secret key,以及可选的 region。上传脚本不会创建 bucket。
- 对于 PVC,需要一个可由 Workbench 和后续推理服务挂载的 claim。Workbench 和推理服务可以依次使用 PVC,因此在不需要并发挂载时不需要
ReadWriteMany。
有关存储后端要求,请参阅 Model Storage。
创建并连接到 Workbench
- 从左侧导航中的 Workbench 创建 Workbench。在较旧的安装中,对应入口可能位于 Advanced > Notebook 下。
- 当模型过大,无法放入 Workbench 的本地工作区,或文件必须在 Workbench 重启后仍然可用时,挂载 PVC。
- 等待 Workbench 状态变为 Running,然后选择 Connect。
- 在 JupyterLab 或 code-server 中打开终端。
将模型下载或复制到 Workbench
从获准的上游源下载模型,或将模型从本地计算机复制到 Workbench。例如,使用 Hugging Face mirror:
其他常见源包括:
如果 Workbench 无法访问 Internet,请在能够连接上游源的计算机上下载模型,然后通过 Workbench 文件浏览器上传:
- 在 JupyterLab 中,打开 Files,选择 Upload Files,然后选择模型文件或 archive。
- 在 code-server 中,打开 Explorer,将文件拖到目标文件夹中。
必要时,在 Workbench 终端中解压 archive。上传前,请确认模型目录包含其 serving framework 所需的文件,例如 configuration、tokenizer 和 weight 文件。不要包含凭据或无关的训练数据。
将模型从 Workbench 上传到 S3
以下操作步骤会将 Workbench 本地目录递归上传到兼容 S3 的 bucket。它适用于 AWS S3、Ceph、MinIO 以及其他提供兼容 S3 API 的服务。
1. 在 Workbench 中准备 S3 访问
如果项目使用托管的 connection 设置,请在 User View > Connections 中创建或获取 S3 Connection。选择 S3-compatible object storage,并提供 access key、secret key、endpoint、region 和 bucket。S3 Connection 会记录诸如 AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_S3_ENDPOINT、AWS_DEFAULT_REGION 和 AWS_S3_BUCKET 等值。
为推理服务选择的 Connection 不会自动将其值注入已在运行的 Workbench。Workbench 需要拥有自己的 S3 访问权限。请使用管理员批准的方法配置相同的值,例如 PodDefault、已挂载的 Secret 或临时终端环境变量。以下上传命令使用环境变量方式。
对于临时终端会话,请导出这些值,不要将它们放入 notebook 或提交到文件中。对于可重复的工作负载,优先使用 Secret 或 PodDefault,并在上传完成后清除变量:
对于 AWS S3,使用默认 AWS endpoint 时可以省略 AWS_S3_ENDPOINT。对于兼容 S3 的服务,请将其设置为服务 endpoint。如果 endpoint 使用自签名证书,请使用组织批准的证书配置;不要在生产环境中禁用 TLS 验证。
2. 安装或验证 AWS CLI
AWS CLI 是 Amazon S3 的标准命令行客户端。当传入存储 endpoint 时,它还支持 Ceph、MinIO 和 SeaweedFS 等兼容 S3 的对象存储。在 Workbench 终端中验证它是否可用:
如果 AWS CLI 不可用,请在 home 目录中安装官方 AWS CLI v2 package。以下命令会根据 Workbench 的 CPU 架构选择 package:
3. 上传并验证模型目录
Bucket 必须已存在。AWS CLI 使用环境中的 AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY 和 AWS_DEFAULT_REGION。对于 Amazon S3,请将 AWS_S3_ENDPOINT 留空。对于兼容 S3 的服务,以下命令将 AWS_S3_ENDPOINT 作为 endpoint URL 传入:
该命令会保留 S3 prefix 下的模型目录布局。例如,当 S3_PREFIX=qwen 时,./model/config.json 会上传为 s3://models/qwen/config.json。
生成的 Model URI 为:
例如,使用 AWS_S3_BUCKET=models 和 S3_PREFIX=DeepSeek-R1-Distill-Qwen-1.5B 时,请使用:
s3:// URI 不包含 endpoint。endpoint 和凭据会通过 S3 Connection,或通过 ServiceAccount 和 Secret 单独为推理服务配置。请参阅使用 S3 对象存储进行模型存储。
上传后,尽可能从终端会话中删除临时凭据:
从 Workbench 将模型上传到 PVC
- 在目标命名空间中创建或确定一个 PVC。如果 Workbench 和推理服务在不同时间使用 PVC,则 PVC 不需要
ReadWriteMany。 - 将 PVC 挂载到 Workbench。
- 在 Workbench 文件浏览器中打开已挂载的 PVC 目录。
- 创建一个稳定的模型目录,例如
models/DeepSeek-R1-Distill-Qwen-1.5B。 - 从本地计算机上传模型文件,或将文件从 Workbench 工作区复制到该目录。
- 确认 configuration、tokenizer 和 weight 文件出现在该目录中。
- 在启动需要独占 claim 访问权限的推理服务之前,停止 Workbench,或以其他方式从 Workbench 卸载 PVC。这适用于
ReadWriteOncePVC。如果 Workbench 必须在推理服务运行期间保持挂载,请使用支持并发挂载的 storage class 和 access mode,例如ReadWriteMany。
生成的 Model URI 为:
请参阅将模型文件上传到 PVC。
将模型作为 OCI artifact 上传
要使用 OCI 模型存储,请将模型打包为 OCI image,并将其推送到 Harbor 等兼容 OCI 的 registry。Workbench 必须具有获准的 OCI client 和 registry 凭据。推送后记录 image reference,例如:
推理集群必须能够拉取该 image。有关打包说明,请参阅使用 KServe Modelcar 进行模型存储。
下一步:注册已上传的 artifact
上传到 S3、PVC 或 OCI registry 后,记录 Model URI 并打开 User View > AI Hub > Model Registry。选择 Register Model,选择一个 Model Registry,输入模型名称和版本,并提供 Model URI。此注册步骤会存储模型元数据和 artifact 引用;它不会移动或复制模型文件。在已注册版本处于使用状态期间,请保持 S3 bucket、prefix 和访问配置不变。