日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

服務模型所有相關參數說明

您可以使用EASCMD工具創建EAS服務,創建服務前需要配置服務相關信息的JSON文件。本文為您介紹JSON文件內的參數說明信息。

說明

如何使用EASCMD工具,詳情請參見下載并認證客戶端

參數說明

JSON文件參數說明如下表所示。

參數

是否必選

描述

name

服務名稱,必須在同一地域內唯一。

token

表示訪問鑒權的Token字符串。如果未指定,則系統自動生成。

model_path

model_pathprocessor_path分別為模型和Processor的輸入數據源地址,均支持以下格式的地址:

  • HTTP地址:所需文件必須為TAR.GZTARBZ2ZIP等壓縮包。

  • OSS地址:地址鏈接可以是具體文件路徑或文件夾路徑。同時,還需要配置參數oss_endpoint,示例如下。

    "model_path":"oss://wowei-beijing-tiyan/alink/",
    "oss_endpoint":"oss-cn-beijing.aliyuncs.com",
  • 本地路徑:如果使用test命令進行本地調試,則可以使用本地路徑。

oss_endpoint

OSSEndpoint,例如oss-cn-beijing.aliyuncs.com。其他取值請參見OSS地域和訪問域名

說明

默認無需指定該參數,會使用當前地域的內網OSS地址,來進行模型文件或Processor文件的下載。當跨地域訪問OSS時,需要指定該參數。例如:當您在杭州地域部署服務時,model_path中填寫了北京地域的OSS地址,則需要使用該參數來指定北京地域的OSS公網訪問地址。

model_entry

表示模型的入口文件,可以包含任意文件。如果未指定,則使用model_path中的文件名。主文件路徑會傳遞給Processor中的initialize()函數。

model_config

表示模型的配置,支持任意文本。該參數值會傳遞給ProcessorInitialize()函數的第二個參數。

processor

  • 如果使用官方提供的預置Processor,則直接在此指定Processor Code即可。Processoreascmd中使用的Code請參見預置Processor使用說明

  • 如果使用自定義Processor,則無需配置該參數,只需要配置processor_pathprocessor_entryprocessor_mainclassprocessor_type參數。

processor_path

Processor相關的文件包路徑,可以參見model_path參數的描述信息。

processor_entry

Processor的主文件。例如libprocessor.soapp.py,其中包含了預測所需的initialize()函數和process()函數的實現。

processor_typecpppython時,必須指定該參數。

processor_mainclass

Processor的主文件,JAR包中的mainclass。例如com.aliyun.TestProcessor

processor_typejava時,必須指定該參數。

processor_type

processor實現的語言,取值如下:

  • cpp

  • java

  • python

warm_up_data_path

用于模型預熱的請求文件路徑。更多關于模型預熱功能的介紹,詳情請參見模型服務預熱

runtime.enable_crash_block

當服務實例因Processor代碼異常發生Crash后,服務實例是否會自動重啟。取值如下:

  • true:表示服務實例不自動重啟,以保留現場進行問題排查。

  • false:默認值,表示服務實例自動重啟。

cloud

使用公共資源組部署服務時,請務必使用cloud.computing.instance_type字段來指定實例使用的機型。

"cloud":{
      "computing":{
          "instance_type":"ecs.gn6i-c24g1.6xlarge"
      }
  }

具體參數配置詳情,請參見公共資源組使用說明

autoscaler

表示模型服務自動水平擴縮容的配置信息。具體參數配置,詳情請參見水平自動擴縮容功能

containers

表示使用自定義鏡像部署服務時的容器信息。具體參數配置,詳情請參見服務部署:自定義鏡像

storage

表示服務存儲掛載等相關信息。

metadata

表示服務的Meta信息。具體參數配置,詳情請參見1.metadata參數說明

features

表示服務的特殊功能配置。具體參數配置,詳情請參見2.features參數說明

networking

表示服務的調用配置。具體參數配置,詳情請參見3.networking參數說明

1.metadata參數說明

參數

是否必選

描述

一般參數

instance

服務啟動的實例數量。

workspace_id

設置工作空間ID參數后,服務將只能在指定的PAI工作空間之內使用。例如:1405**

cpu

每個實例需要的CPU數量。

memory

每個實例需要的內存數量,取值為整型,單位為MB。例如,"memory": 4096表示每個實例需要4 GB內存。

gpu

每個實例需要的GPU數量。

gpu_memory

每個實例所需的GPU顯存數量,取值為整型,單位為GB。

系統支持實例按顯存進行調度,實現單卡共享多實例功能。如果使用顯存調度,則需要將gpu字段配置為0。當gpu字段配置為1時,表示實例獨占整張GPU卡,此時gpu_memory 字段會被忽略。

重要

當前未開啟顯存的嚴格隔離,您需自行控制各實例的顯存使用量,不能超出申請量,避免出現顯存內存溢出。

gpu_core_percentage

每個實例所需的單個GPU算力比例,取值為1~100之間的整數,單位為百分比。例如填寫10,代表的是單個GPU10%算力。

系統支持實例按算力進行調度,實現單卡共享多實例功能。另外指定該參數時,必須指定gpu_memory參數,否則該參數不生效。

qos

實例的服務質量,可選參數值為空或BestEffort。當qos指定為BestEffort時,表示進入CPU共享模式。使實例完全按照顯存和內存進行調度,不再受節點的CPU數量限制,節點上的所有實例共享CPU。此時cpu字段表示,按CPU共享模式時,單個實例能使用的最大配額。

resource

資源組ID,配置策略如下:

  • 如果服務部署在公共資源組,則可以忽略該參數,此時服務進行按量付費。

  • 如果服務部署在專屬資源組,則配置該參數為資源組ID。例如eas-r-6dbzve8ip0xnzte5rp

cuda

服務需要使用的cuda版本。服務運行時,會自動將指定版本的cuda掛載到實例的/usr/local/cuda目錄中。

目前支持的cuda版本為:8.0,9.0,10.0,10.1,10.2,11.0,11.1,11.2。使用示例為:"cuda":"11.2"

enable_grpc

表示是否開啟服務網關的GRPC連接,取值如下:

  • false:默認值,表示網關不開啟GRPC鏈接,默認支持HTTP請求。

  • true:表示網關開啟GRPC連接。

說明

如果使用自定義鏡像部署服務時,鏡像中的服務端實現為GRPC,則需要通過該參數將網關的協議切換成GRPC。

enable_webservice

表示是否開啟webserver,從而部署為一個AI-Web應用:

  • false:默認值,表示不開啟webserver。

  • true:表示開啟webserver。

高級參數

重要

請您慎重調整。

rpc.batching

是否開啟ServerBatching,用于GPU模型加速,僅支持預置processor模式。取值如下:

  • false:默認值,關閉ServerBatching。

  • true:開啟ServerBatching。

rpc.keepalive

單個請求的最長處理時間。如果請求處理時長超過該值,則服務端返回408超時并關閉連接。默認值為5000,單位為毫秒。

說明

當使用自定義Processor時,還需額外在代碼中配置allspark參數,詳情請參見使用Python開發自定義Processor

rpc.io_threads

每個實例用于處理網絡IO的線程數量,默認值為4。

rpc.max_batch_size

每個Batch的最大Size,默認值為16,僅支持預置processor模式。僅rpc.batching取值為true時,該參數生效。

rpc.max_batch_timeout

每個Batch的最大Timeout,默認值為50毫秒,僅支持預置processor模式。僅rpc.batching取值為true時,該參數生效。

rpc.max_queue_size

隊列大小,默認值為64。隊列滿時,服務端返回450并關閉連接。為保證服務端不會壓力過載,隊列可以提前通知客戶端向其他實例進行重試。對于RT較長的服務隊列,可以適當減小隊列長度,以避免請求在隊列中堆積導致大量請求超時。

rpc.worker_threads

每個實例中用于并發處理請求的線程數,默認值為5,僅支持預置processor模式。

rpc.rate_limit

表示開啟QPS限流功能,并限制實例處理的最大QPS。默認為0,表示關閉QPS限流功能。

例如:該參數配置為2000,當QPS高于2000時,會拒絕請求并返回429(Too Many Requests)。

rolling_strategy.max_surge

服務滾動更新過程中,多于指定實例數,最多可以額外創建的實例個數。該參數可以為正整數,表示實例個數;也可以為百分比,例如2%。默認比例為2%。增大該參數可以提高服務更新速度。

例如:服務實例個數指定為100,該參數配置為20,則服務更新開始后會立即創建20個新實例。

rolling_strategy.max_unavailable

服務滾動更新過程中,最大不可用的實例個數。該參數可以在服務更新過程中,為新實例釋放資源,避免服務因空閑資源不足而更新卡住。目前在專有資源組中,該參數默認為1;在公共資源組中,該參數默認為0。

例如:該參數為N,則服務更新開始時會立即停止N個實例。

說明

如果空閑資源充足,可以將該參數配置為0。該參數配置過大可能會影響服務穩定性。因為在服務更新瞬間,可用實例個數會減少,則單實例承載的流量會變大。您需要權衡服務穩定性和資源情況來配置該參數。

eas.termination_grace_period

表示實例的優雅退出時間,單位為秒,默認為30秒。

EAS服務采用滾動更新的策略,實例會先進入Terminating狀態,服務會先將流量從要退出的實例上切走,實例等待30秒后將已收到的請求處理完成后退出。如果請求處理時間很長,為保證服務更新時,狀態為in progress的請求都能被處理完,您可以將該參數值適當調大。

重要

如果將該參數值調小則會影響服務穩定性,將該參數配置過大則會導致服務更新速度過慢,如果無特別需求請不要配置該參數。

scheduling.spread.policy

服務實例調度時的打散策略,支持以下幾種策略:

  • host:按照節點來打散,實例盡可能分散在不同的節點上。

  • zone:按照節點所在的可用區來打散,實例盡可能分散在不同的可用區。

  • default:按照默認策略進行調度,無主動打散的邏輯。

rpc.enable_sigterm

取值如下:

  • false(默認值):實例進入退出狀態時不會發送SIGTERM信號。

  • true:在服務實例進入退出狀態時,系統會立即向主進程發送SIGTERM信號,服務內進程收到該信號后需要在信號處理函數中進行自定義的優雅退出操作,若不處理該信號可能導致主進程收到信號后直接退出,從而使優雅退出失敗。

resource_rebalancing

取值如下:

  • false(默認值):不啟用該功能。

  • true:EAS會周期性地在高優先級資源上創建探針實例。如果探針實例調度成功,則會以指數增長方式創建更多探針實例,直至調度失敗。同時,成功調度的探針實例完成初始化并且進入就緒狀態后,會替換低優先級資源上的實例。

該功能可以解決以下問題:

  • 在服務滾動更新過程中,正在終止的實例仍會占用資源,導致新創建實例啟動在公共資源組上,由于公共資源限制,后續新實例會重新調度回專屬資源組上。

  • 當同時使用競價實例和常規實例時,系統會定期檢查競價實例是否可用,如果可用,則會將常規實例遷移至競價實例上。

2.features參數說明

參數

是否必選

描述

eas.aliyun.com/extra-ephemeral-storage

當免費額度的系統盤容量不能滿足您的業務需求時,額外需要配置的系統盤內存大小。取值為正整數,單位為GB,取值范圍為0~2000 GB。

3.networking參數說明

參數

是否必選

描述

disable_internet_endpoint

默認為false,將該參數設置為true后,會禁用服務的公網調用方式。

4.containers參數說明

參數

是否必選

描述

image

用于部署模型服務的鏡像地址。

env

name

鏡像執行時的環境變量名稱。

value

鏡像執行時的環境變量取值。

command

二者必選其一

鏡像的入口命令,只支持單一命令形式,不支持復雜腳本,如:cd xxx && python app.py,這種形式請使用下面的script參數來指定,command字段適應于鏡像中無/bin/sh命令的場景。

script

鏡像的入口執行的腳本,可指定較為復雜的腳本形式,多行以\n或分號分隔。

port

容器端口。

重要
  • 由于EAS引擎監聽固定的8080/9090端口,因此容器端口需要避開8080/9090端口。

  • 該端口一定要和command中的xxx.py文件配置的端口保持一致。

prepare

pythonRequirements

實例啟動前安裝的python requirements列表,要求鏡像中在系統路徑中存在pythonpip命令,list格式,如:

"prepare": {
  "pythonRequirements": [
    "numpy==1.16.4",
    "absl-py==0.11.0"
  ]
}

pythonRequirementsPath

實例啟動前安裝的python requirements.txt文件地址,要求鏡像中在系統路徑中存在Pythonpip命令,requirements.txt可直接打在鏡像中,也可以由外部存儲掛載的方式掛載到服務實例中,如:

"prepare": {
  "pythonRequirementsPath": "/data_oss/requirements.txt"
}

使用示例

上述參數在JSON文件中的配置示例如下:

{
  "name": "test_eascmd",
  "token": "****M5Mjk0NDZhM2EwYzUzOGE0OGMx****",
  "processor": "tensorflow_cpu_1.12",
  "model_path": "oss://examplebucket/exampledir/",
  "oss_endpoint": "oss-cn-beijing.aliyuncs.com",
  "model_entry": "",
  "model_config": "",
  "processor": "",
  "processor_path": "",
  "processor_entry": "",
  "processor_mainclass": "",
  "processor_type": "",
  "warm_up_data_path": "",
  "runtime": {
    "enable_crash_block": false
  },
  "cloud": {
    "computing": {
      "instance_type": "ecs.gn6i-c24g1.6xlarge"
    }
  },
  "autoscaler": {
    "min": 2,
    "max": 5,
    "strategies": {
      "qps": 10
    }
  },
  "storage": [
    {
      "mount_path": "/data_oss",
      "oss": {
        "endpoint": "oss-cn-shanghai-internal.aliyuncs.com",
        "path": "oss://bucket/path/"
      }
    }
  ],
  "metadata": {
    "resource": "eas-r-9lkbl2jvdm0puv****",
    "instance": 1,
    "workspace_id": 1405**,
    "gpu": 0,
    "cpu": 1,
    "memory": 2000,
    "gpu_memory": 10,
    "gpu_core_percentage": 10,
    "qos": "",
    "cuda": "11.2",
    "enable_grpc": false,
    "enable_webservice": false,
    "rpc": {
      "batching": false,
      "keepalive": 5000,
      "io_threads": 4,
      "max_batch_size": 16,
      "max_batch_timeout": 50,
      "max_queue_size": 64,
      "worker_threads": 5,
      "rate_limit": 0,
      "enable_sigterm": false
    },
    "rolling_strategy": {
      "max_surge": 1,
      "max_unavailable": 1
    },
    "eas.termination_grace_period": 30,
    "scheduling": {
      "spread": {
        "policy": "host"
      }
    },
    "resource_rebalancing": false
  },
  "features": {
    "eas.aliyun.com/extra-ephemeral-storage": "100Gi"
  },
  "networking": {
    "disable_internet_endpoint": false
  },
  "containers": [
    {
      "image": "registry-vpc.cn-shanghai.aliyuncs.com/xxx/yyy:zzz",
      "prepare": {
        "pythonRequirements": [
          "numpy==1.16.4",
          "absl-py==0.11.0"
        ]
      },
      "command": "python app.py",
      "port": 8000
    }
  ]
}