如何在Snowflake UI外(VS Code)通过PyTorch容器服务运行Python代码?
在VS Code中使用Snowflake GPU容器池运行PyTorch代码的方法
你可以通过以下两种方式,在Snowflake Notebook UI外调用同一GPU计算池运行PyTorch代码:
方法1:Snowpark Python API提交作业
直接用Snowpark的Container Services API在VS Code里编写代码提交GPU任务:
from snowflake.snowpark import Session from snowflake.snowpark.container import ContainerService # 初始化Snowflake会话 session = Session.builder.configs({ "account": "你的账户标识", "user": "用户名", "password": "密码", "role": "有权限的角色", "warehouse": "关联仓库", "database": "目标数据库", "schema": "目标模式" }).create() # 定义GPU容器作业配置 container_job = ContainerService( session=session, name="PYTORCH_GPU_TASK", compute_pool="你的自定义GPU计算池名称", # 用Snowflake官方PyTorch镜像或自定义镜像 image="snowflake.azurecr.io/snowflake/ml-python-pytorch:latest", spec={ "containers": [ { "name": "pytorch-runner", "command": ["python", "@你的代码Stage路径/script.py"], "resources": { "requests": {"cpu": "4", "memory": "16Gi", "nvidia.com/gpu": "1"}, "limits": {"cpu": "4", "memory": "16Gi", "nvidia.com/gpu": "1"} } } ] } ) # 启动作业并查看日志 container_job.create() container_job.start() print(container_job.get_logs()) session.close()
注意:提前将你的PyTorch脚本上传到Snowflake Stage中。
方法2:Snowflake CLI命令行提交
在VS Code终端用Snowflake CLI直接提交任务:
- 安装CLI:
pip install snowflake-cli-labs - 配置连接:运行
snow configure按提示输入账户信息 - 创建作业配置文件
pytorch_gpu_job.yml:
name: PYTORCH_GPU_TASK compute_pool: YOUR_GPU_COMPUTE_POOL_NAME spec: containers: - name: pytorch-runner image: snowflake.azurecr.io/snowflake/ml-python-pytorch:latest command: ["python", "@code_stage/your_script.py"] resources: requests: cpu: "4" memory: "16Gi" nvidia.com/gpu: "1" limits: cpu: "4" memory: "16Gi" nvidia.com/gpu: "1" stage_path: @code_stage
- 提交作业:
snow container services create --file pytorch_gpu_job.yml - 查看状态和日志:
snow container services status --name PYTORCH_GPU_TASK snow container services logs --name PYTORCH_GPU_TASK
核心注意事项
- 确保你的计算池是GPU类型(创建时选择了GPU实例规格)
- 自定义镜像需上传到Snowflake私有镜像仓库
- 操作账户需拥有
CREATE CONTAINER SERVICE、计算池USAGE等权限
内容的提问来源于stack exchange,提问作者B_Miner
相关产品推荐
相关产品推荐

