본문 바로가기
WIKI 기술 지식 베이스

Undeploy Model API

원문 보기 위키 갱신

출처: 문서

본문

모델 배포 해제(Undeploy) API

모델을 메모리에서 배포 해제하려면 undeploy 작업을 사용하세요.

이 API에 대한 사용자 액세스 정보는 모델 액세스 제어 고려 사항을 참조하세요.

엔드포인트

POST /_plugins/_ml/models/{model_id}/_undeploy

예제 요청: 모든 ML 노드에서 모델 배포 해제하기

POST /_plugins/_ml/models/MGqJhYMBbbh0ushjm8p_/_undeploy

{% include copy-curl.html %}

예제 요청: 특정 노드에서 특정 모델 배포 해제하기

POST /_plugins/_ml/models/_undeploy
{
  "node_ids": ["sv7-3CbwQW-4PiIsDOfLxQ"],
  "model_ids": ["KDo2ZYQB-v9VEDwdjkZ4"]
}

{% include copy-curl.html %}

예제 요청: 모든 노드에서 특정 모델 배포 해제하기

{
  "model_ids": ["KDo2ZYQB-v9VEDwdjkZ4"]
}

{% include copy-curl.html %}

예제 응답

{
  "sv7-3CbwQW-4PiIsDOfLxQ" : {
    "stats" : {
      "KDo2ZYQB-v9VEDwdjkZ4" : "UNDEPLOYED"
    }
  }
}

TTL 기반 모델 자동 배포 해제

모델은 마지막으로 액세스되거나 사용된 시점을 기준으로 미리 정의된 TTL(time-to-live)에 따라 메모리에서 자동으로 배포 해제될 수 있어요. 모델을 자동으로 배포 해제하는 TTL을 정의하려면 머신러닝(ML) 모델에 다음 ModelDeploySetting을 포함하세요. 모델 TTL은 syn_up cron 작업이 주기적으로 확인하므로, 모델이 메모리에 머무는 최대 시간은 TTL + sync_up_job_ 간격이 될 수 있다는 점에 유의하세요. cron 작업의 기본 간격은 10초예요. cron 작업을 내부적으로 업데이트하려면 다음 클러스터 설정을 사용하세요:

PUT /_cluster/settings
{
    "persistent": {
        "plugins.ml_commons.sync_up_job_interval_in_seconds": 10
    }
}

예제 요청: TTL이 있는 모델 생성하기

POST /_plugins/_ml/models/_register
 {
   "name": "Sample Model Name",
   "function_name": "remote",
   "description": "test model",
   "connector_id": "-g1nOo8BOaAC5MIJ3_4R",
   "deploy_setting": {"model_ttl_minutes": 100}
 }

예제 요청: 모델이 배포 해제될 때 TTL로 모델 업데이트하기

PUT /_plugins/_ml/models/COj7K48BZzNMh1sWedLK
{
    "deploy_setting": {"model_ttl_minutes" : 100}
}

더 알아보기 (Learn more)