You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过OCI REST SDK创建指定gpus参数的GPU云实例?

解决OCI Flex GPU实例设置GPU数量的问题

Python SDK 处理方式

由于OCI Python SDK的LaunchInstanceShapeConfigDetails模型类暂未包含gpus属性,但底层API支持该参数,你可以通过两种方式绕过模型限制:

  • 方式一:直接构造字典替代模型类
    不用实例化LaunchInstanceShapeConfigDetails,直接用字典传入shape配置:

    import oci
    
    config = oci.config.from_file()
    compute_client = oci.core.ComputeClient(config)
    
    launch_instance_details = oci.core.models.LaunchInstanceDetails(
        compartment_id="ocid1.compartment.xxx",
        availability_domain="AD-1",
        shape="VM.C3.GPU.L40S.Flex",
        shape_config={
            "gpus": 1,
            "ocpus": 4,
            "memory_in_gbs": 48
        },
        source_details=oci.core.models.InstanceSourceViaImageDetails(
            image_id="ocid1.image.xxx",
            source_type="image",
            boot_volume_size_in_gbs=100
        ),
        subnet_id="ocid1.subnet.xxx",
        display_name="gpu-inst-test",
        assign_public_ip=True,
        ssh_authorized_keys=open("/nfs/shared_storage/ossetest/usr/src/tests/pca_3x/CE/oci_keys/id_ecdsa.pub").read()
    )
    
    response = compute_client.launch_instance(launch_instance_details)
    
  • 方式二:利用模型类的extra_properties字段
    部分OCI SDK模型类支持extra_properties传递未定义字段:

    shape_config = oci.core.models.LaunchInstanceShapeConfigDetails(
        ocpus=4,
        memory_in_gbs=48
    )
    shape_config.extra_properties["gpus"] = 1
    

REST API 处理方式

直接在实例创建的POST请求体中,给shapeConfig对象添加gpus字段即可,请求示例如下:

POST /20160918/instances HTTP/1.1
Host: compute.us-phoenix-1.oraclecloud.com
Authorization: Bearer <auth_token>
Content-Type: application/json

{
  "compartmentId": "ocid1.compartment.AK00684129.broom15.xri7sc0a2upguqn5cn8ajnwi9664jtbc9cd7vib6x974ghk1dfg757hxpme5",
  "availabilityDomain": "AD-1",
  "shape": "VM.C3.GPU.L40S.Flex",
  "shapeConfig": {
    "gpus": 1,
    "ocpus": 4,
    "memoryInGBs": 48
  },
  "sourceDetails": {
    "bootVolumeSizeInGBs": 100,
    "imageId": "ocid1.image.AK00684129.broom15.5sprgqr09pc5dtjb4p959h12clg5ebeq1tlh37jrpfshzvtdy054us8c0623",
    "sourceType": "image"
  },
  "subnetId": "ocid1.subnet.AK00684129.broom15.c67zxe3fwglsldmv3xfc9s1jqc4zkbmrv5bfmd8nwqvdezyrfrq25ev5fbg4",
  "assignPublicIp": true,
  "sshAuthorizedKeys": "<public_key_content>",
  "displayName": "gpu-inst-test"
}

注意:sshAuthorizedKeys需要替换为本地公钥文件的内容,而非文件路径。

内容的提问来源于stack exchange,提问作者user3303266

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 07:19:57