字
字节笔记本
2026年2月22日
Lepton AI Python SDK 完全指南
Lepton AI Python SDK 是一个功能强大的开发工具包,让开发者能够轻松构建、调试和部署 AI 模型。本文详细介绍 SDK 的安装、认证流程以及核心 API 的使用方法。
安装与认证
安装 SDK
使用 pip 安装 Lepton AI Python SDK:
bash
pip3 install -U leptonai登录认证
安装完成后,使用 CLI 进行认证:
bash
lep login在 GUI 环境中,系统会自动打开浏览器;在终端环境中,会显示一个 URL 供手动访问。登录后,在 Dashboard → Settings → Tokens 中创建工作区 token,格式为 xxxxxx:**************************。
验证安装是否成功:
bash
lep workspace listSDK 基本流程
使用 Lepton AI Python SDK 的基本流程包含三个步骤:
- 初始化客户端 - 创建 APIClient 实例
- 定义任务 - 配置需要执行的任务参数
- 执行任务 - 调用相应 API 完成任务
初始化客户端
python
from leptonai.api.v2.client import APIClient
client = APIClient()核心 API 资源
Lepton AI Python SDK 提供以下核心 API 资源:
| 资源 | 说明 |
|---|---|
| Batch Jobs | 批量任务的管理和监控 |
| Dev Pods | 开发环境管理 |
| Endpoints | 模型部署端点 |
| Events | 系统事件查询 |
| Health Checks | 健康状态检查 |
| Ingress | 网络入口配置 |
| Logs | 日志检索 |
| Monitoring | 指标和监控 |
| Node Groups | 计算节点组管理 |
| Queue | 任务队列管理 |
| Readiness | 就绪探针 |
| Replicas | 副本管理 |
| Secrets | 密钥管理 |
| Templates | 任务模板 |
| Workspaces | 工作空间管理 |
关键数据类型
SDK 使用以下核心类型:
- 批量任务:
leptonai.api.v1.types.job.LeptonJob配合LeptonJobUserSpec - 端点/部署:
leptonai.api.v1.types.deployment.LeptonDeployment - 开发 Pod: 与部署使用相同类型
完整的 API 类型定义可在 GitHub 仓库查看:https://github.com/leptonai/leptonai/tree/main/leptonai/api/v1/types
资源规格配置
使用 CLI v0.26.4+ 查看可用的资源规格:
bash
lep node resource-shape在配置中使用 Shapes 列的值作为 resource_shape 字段。
共享存储挂载
配置共享存储挂载:
python
mount = {
"path": "/", # 存储中的源目录
"mount_path": "/my-mount", # 容器中的目标路径(不能是 "/")
"from": "node-nfs:lepton-shared-fs" # storage_type:storage_name
}将挂载配置添加到任务规格:
python
job_spec = LeptonJobUserSpec(
# ... 其他字段 ...
mounts=[mount]
)私有镜像仓库认证
在 UI 的 Settings > Registries 中创建密钥,然后在任务中使用:
python
job_spec = LeptonJobUserSpec(
# ... 其他字段 ...
image_pull_secrets=["my-registry-secret"]
)节点预留配置
python
job_spec = LeptonJobUserSpec(
# ... 其他字段 ...
node_reservation="my-reservation-name"
)完整示例代码
以下是一个完整的批量训练任务示例:
python
from leptonai.api.v2.client import APIClient
from leptonai.api.v1.types.job import LeptonJob, LeptonJobUserSpec
from leptonai.api.v1.types.affinity import LeptonResourceAffinity
# 初始化客户端
client = APIClient()
# 获取节点组和节点 ID
node_groups = client.node_group.list()
node_group_id = next(
ng.id for ng in node_groups
if ng.name == "my-node-group"
)
nodes = client.node.list(node_group_id)
node_ids = [node.id for node in nodes]
# 定义任务规格
job_spec = LeptonJobUserSpec(
resource_shape="A100-80GB-SXM",
container_image="nvcr.io/nvidia/pytorch:23.10-py3",
command=["python", "train.py"],
num_workers=2,
affinity=LeptonResourceAffinity(
allowed_nodes=node_ids
)
)
# 创建并启动任务
job = LeptonJob(
spec=job_spec,
metadata={"name": "my-training-job"}
)
client.job.create(job)运行脚本:
bash
python run.py常用 CLI 命令
bash
# 列出运行中的部署
lep deployment list
# 查看部署状态
lep deployment status --name <name>
# 查看可用资源规格
lep node resource-shape总结
Lepton AI Python SDK 提供了简洁而强大的 API,让开发者能够:
- 使用原生 Python 构建模型,无需容器或 Kubernetes 知识
- 在本地调试和测试模型
- 使用单条命令部署到云端
- 灵活选择硬件配置(CPU/GPU)
- 水平扩展应用以处理大规模工作负载
更多详细信息请参考 NVIDIA DGX Cloud Lepton 官方文档。
分享: