VK Cloud logo

Cloud ML Platform компоненттерімен жұмыс істеуге арналған әдістер

Бұл әдістер келесі операцияларды орындауға мүмкіндік береді:

  • JupyterHub, MLflow және MLflow Deploy инстанстарын жасауға қажетті ақпаратты алу.
  • JupyterHub, MLflow және MLflow Deploy инстанстарын жасау және оларды басқару.
  • MLflow Deploy инстанстарында ML-модельдерді өрістету және олардың жұмысқа қабілеттілігін тексеру.
  • ML-модельдердің болжамдарын алу.

get_flavors

JupyterHub, MLflow, MLflow Deploy инстанстарын жасауға қолжетімді барлық ВМ конфигурация шаблондарының тізімін алу.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргументтер жоқ.

Қайтарылатын мән

Қолжетімді ВМ конфигурация шаблондарының тізімі. Тізімнің әрбір элементі келесі ақпаратты қамтиды:

  • шаблон ID-і;
  • шаблон атауы;
  • жедел жад көлемі;
  • CPU ядроларының саны;
  • қосымша спецификациялар.

Әдіс сигнатурасы және пайдалану мысалы

get_internal_networks

Жобада қолжетімді барлық стандартты желілердің тізімін алу.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргументтер жоқ.

Қайтарылатын мән

Жобаның стандартты желілерінің тізімі. Тізімнің әрбір элементі ID-ді, атауды, SDN және желінің басқа параметрлерін қамтиды.

Әдіс сигнатурасы және пайдалану мысалы

get_external_networks

Жобада қолжетімді барлық сыртқы желілердің тізімін алу.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргументтер жоқ.

Қайтарылатын мән

Жобаның сыртқы желілерінің тізімі. Тізімнің әрбір элементі ID-ді, атауды, SDN және желінің басқа параметрлерін қамтиды.

Әдіс сигнатурасы және пайдалану мысалы

create_jupyter_hub

JupyterHub инстансын жасау.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

instance_name

(міндетті)

str

JupyterHub инстансының атауы

domain_name

(міндетті емес)

str

Инстанстың домендік атауы. Егер көрсетілмесе, автоматты түрде жасалады.

Домендік атауға қойылатын талаптар:

  • ең үлкен ұзындығы — 63 таңба;
  • тек цифрларды, кіші латын әріптерін және ., - арнайы таңбаларын қамтуы мүмкін;
  • - арнайы таңбасымен басталмауы және аяқталмауы тиіс

jh_admin_name

(міндетті)

str

Инстанс әкімшісінің логині

jh_admin_password

(міндетті)

str

Инстанс әкімшісінің құпиясөзі.

Құпиясөзге қойылатын талаптар:

  • кемінде 8 таңбадан тұруы тиіс;
  • тек цифрларды, !,#,$,%,&,(,),*,+,,,.,:,;,<,=,>,?,@,[,],^,_,{,|,},~,- арнайы таңбаларын, сондай-ақ бас және кіші латын әріптерін қамтуы мүмкін

flavor

(міндетті)

str

Инстанс ВМ-ын жасауға арналған конфигурация шаблонының идентификаторы.

Конфигурация шаблондарының тізімін және олардың идентификаторларын get_flavors әдісі арқылы алуға болады

volumes

(міндетті)

List[MLPlatformVolumeIn]

Инстанс дискілерінің тізімі.

Әрбір диск MLPlatformVolumeIn класының объектісімен сипатталады, оның өрістері:

  • size: диск көлемі, ГБ (түрі int).
  • volume_type: диск түрі. Рұқсат етілген мәндер — VolumeType.ceph_ssd және VolumeType.high_iops.
  • availability_zone: қолжетімділік аймағы. Рұқсат етілген мәндер — AvailabilityZone.GZ1 және AvailabilityZone.MS1.

Диск сипаттамасының мысалы:

MLPlatformVolumeIn(    size=50,    volume_type=VolumeType.ceph_ssd,    availability_zone=AvailabilityZone.GZ1)

networks

(міндетті)

MLPlatformNetworkIn

Инстанс қосылатын желі.

Желі network_id өрісі бар MLPlatformVolumeIn класының объектісімен сипатталады, бұл өріс желі идентификаторын қамтиды. Жобаның стандартты және сыртқы желілерінің тізімдерін және олардың идентификаторларын get_internal_networks және get_external_networks әдістері арқылы алуға болады.

Желі сипаттамасының мысалы:

MLPlatformNetworkIn(network_id="net-12345")

s3fs_bucket

(міндетті емес)

str

Инстансқа қосылатын бакет атауы.

Егер жоқ бакет атауы көрсетілсе, көрсетілген атаумен жаңа бакет жасалады.

Жаңа бакет атауына қойылатын талаптар:

  • тұтастай алғанда VK Object Storage сервисі үшін бірегей болуы тиіс (тек жоба шегінде ғана емес);
  • 4-тен 63-ке дейін таңбаны қамтуы тиіс;
  • тек цифрларды, кіші латын әріптерін және ., - арнайы таңбаларын қамтуы мүмкін;
  • тек кіші латын әріптерімен немесе цифрлармен басталып, солармен аяқталуы тиіс

Қайтарылатын мән

Жасалған JupyterHub инстансы туралы ақпараты бар VmDetailInfo класының объектісі.

Әдіс сигнатурасы және пайдалану мысалы

attach_s3_bucket_to_jh

Бакетті JupyterHub инстансына қосу.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

jh_id

(міндетті)

str

JupyterHub инстансының идентификаторы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың идентификаторларын get_all_instances_info әдісі арқылы алуға болады

s3fs_bucket

(міндетті)

str

Инстансқа қосылатын бакет атауы.

Егер жоқ бакет атауы көрсетілсе, көрсетілген атаумен жаңа бакет жасалады.

Жаңа бакет атауына қойылатын талаптар:

  • тұтастай алғанда VK Object Storage сервисі үшін бірегей болуы тиіс (тек жоба шегінде ғана емес);
  • 4-тен 63-ке дейін таңбаны қамтуы тиіс;
  • тек цифрларды, кіші латын әріптерін және ., - арнайы таңбаларын қамтуы мүмкін;
  • тек кіші латын әріптерімен немесе цифрлармен басталып, солармен аяқталуы тиіс

Қайтарылатын мән

Қайтарылатын мән жоқ.

Әдіс сигнатурасы және пайдалану мысалы

create_mlflow

Бар JupyterHub инстансына қосылған MLflow инстансын жасау.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

instance_name

(міндетті)

str

MLflow инстансының атауы

jh_id

(міндетті)

str

MLflow инстансы қосылатын бар JupyterHub инстансының идентификаторы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың идентификаторларын get_all_instances_info әдісі арқылы алуға болады

domain_name

(міндетті емес)

str

Инстанстың домендік атауы. Егер көрсетілмесе, автоматты түрде жасалады.

Домендік атауға қойылатын талаптар:

  • ең үлкен ұзындығы — 63 таңба;
  • тек цифрларды, кіші латын әріптерін және ., - арнайы таңбаларын қамтуы мүмкін;
  • - арнайы таңбасымен басталмауы және аяқталмауы тиіс

flavor

(міндетті)

str

Инстанс ВМ-ын жасауға арналған конфигурация шаблонының идентификаторы.

Конфигурация шаблондарының тізімін және олардың идентификаторларын get_flavors әдісі арқылы алуға болады

volumes

(міндетті)

List[MLPlatformVolumeIn]

Инстанс дискілерінің тізімі.

Әрбір диск MLPlatformVolumeIn класының объектісімен сипатталады, оның өрістері:

  • size: диск көлемі, ГБ (түрі int).
  • volume_type: диск түрі. Рұқсат етілген мәндер — VolumeType.ceph_ssd және VolumeType.high_iops.
  • availability_zone: қолжетімділік аймағы. Рұқсат етілген мәндер — AvailabilityZone.GZ1 және AvailabilityZone.MS1.

Диск сипаттамасының мысалы:

MLPlatformVolumeIn(    size=50,    volume_type=VolumeType.ceph_ssd,    availability_zone=AvailabilityZone.GZ1)

networks

(міндетті)

MLPlatformNetworkIn

Инстанс қосылатын желі. Ол MLflow инстансы қосылатын JupyterHub инстансының желісімен сәйкес келуі тиіс.

Желі network_id өрісі бар MLPlatformVolumeIn класының объектісімен сипатталады, бұл өріс желі идентификаторын қамтиды. Жобаның стандартты және сыртқы желілерінің тізімдерін және олардың идентификаторларын get_internal_networks және get_external_networks әдістері арқылы алуға болады.

Желі сипаттамасының мысалы:

MLPlatformNetworkIn(network_id="net-12345")

is_mlflow_demo_mode

(міндетті)

bool

MLflow инстансын демо режимінде жасау:

  • True — инстанс демо режимінде жасалады. Инстанс ВМ-ында жергілікті SQLite дерекқоры жасалады.
  • False — инстанс PRO режимінде жасалады. Cloud Databases сервисінде MLflow инстансында қолжетімді PostgreSQL дерекқоры жасалады.

Әдепкі мәні: True.

Қайтарылатын мән

Жасалған MLflow инстансы туралы ақпараты бар VmDetailInfo класының объектісі.

Әдіс сигнатурасы және пайдалану мысалы

create_deploy

Бар MLflow немесе MLflow Standalone инстансына қосылған MLflow Deploy инстансын жасау.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

instance_name

(міндетті)

str

MLflow Deploy инстансының атауы

mlflow_id

(міндетті)

str

MLflow Deploy инстансы қосылатын бар MLflow немесе MLflow Standalone инстансының идентификаторы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың идентификаторларын get_all_instances_info әдісі арқылы алуға болады

username

(міндетті)

str

JupyterHub инстансы немесе MLflow Standalone әкімшісінің логині

password

(міндетті)

str

JupyterHub инстансы немесе MLflow Standalone әкімшісінің құпиясөзі

domain_name

(міндетті емес)

str

Инстанстың домендік атауы. Егер көрсетілмесе, автоматты түрде жасалады.

Домендік атауға қойылатын талаптар:

  • ең үлкен ұзындығы — 63 таңба;
  • тек цифрларды, кіші латын әріптерін және ., - арнайы таңбаларын қамтуы мүмкін;
  • - арнайы таңбасымен басталмауы және аяқталмауы тиіс

flavor

(міндетті)

str

Инстанс ВМ-ын жасауға арналған конфигурация шаблонының идентификаторы.

Конфигурация шаблондарының тізімін және олардың идентификаторларын get_flavors әдісі арқылы алуға болады

volumes

(міндетті)

List[MLPlatformVolumeIn]

Инстанс дискілерінің тізімі.

Әрбір диск MLPlatformVolumeIn класының объектісімен сипатталады, оның өрістері:

  • size: диск көлемі, ГБ (түрі int).
  • volume_type: диск түрі. Рұқсат етілген мәндер — VolumeType.ceph_ssd және VolumeType.high_iops.
  • availability_zone: қолжетімділік аймағы. Рұқсат етілген мәндер — AvailabilityZone.GZ1 және AvailabilityZone.MS1.

Диск сипаттамасының мысалы:

MLPlatformVolumeIn(    size=50,    volume_type=VolumeType.ceph_ssd,    availability_zone=AvailabilityZone.GZ1)

networks

(міндетті)

MLPlatformNetworkIn

Инстанс қосылатын желі. Ол MLflow Deploy инстансы қосылатын JupyterHub немесе MLflow Standalone инстансының желісімен сәйкес келуі тиіс.

Желі network_id өрісі бар MLPlatformVolumeIn класының объектісімен сипатталады, бұл өріс желі идентификаторын қамтиды. Жобаның стандартты және сыртқы желілерінің тізімдерін және олардың идентификаторларын get_internal_networks және get_external_networks әдістері арқылы алуға болады.

Желі сипаттамасының мысалы:

MLPlatformNetworkIn(network_id="net-12345")

is_mlflow_demo_mode

(міндетті)

bool

MLflow Deploy инстансын демо режимінде жасау:

  • True — инстанс демо режимінде жасалады.
  • False — инстанс PRO режимінде жасалады.

Әдепкі мәні: True.

Қайтарылатын мән

Жасалған MLflow Deploy инстансы туралы ақпараты бар VmDetailInfo класының объектісі.

Әдіс сигнатурасы және пайдалану мысалы

get_all_instances_info

Cloud ML Platform-тың барлық инстанстарының тізімін алу: JupyterHub, MLflow және MLflow Deploy.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргументтер жоқ.

Қайтарылатын мән

Жобада бар барлық JupyterHub, MLflow және MLflow Deploy инстанстары туралы ақпараты бар VmDetailInfo класы объектілерінің тізімі.

Әдіс сигнатурасы және пайдалану мысалы

get_instance_info

Cloud ML Platform (JupyterHub, MLflow, MLflow Deploy) инстансы туралы ақпаратты оның идентификаторы бойынша алу.

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

instance_id

(міндетті)

str

Cloud ML Platform инстансының идентификаторы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың идентификаторларын get_all_instances_info әдісі арқылы алуға болады

Қайтарылатын мән

Көрсетілген идентификаторы бар Cloud ML Platform инстансы туралы ақпараты бар VmDetailInfo класының объектісі.

Әдіс сигнатурасы және пайдалану мысалы

delete_instance

Cloud ML Platform инстансын жою (JupyterHub, MLflow немесе MLflow Deploy).

Токеннің қажетті рөлі: Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

instance_id

(міндетті)

str

Cloud ML Platform инстансының идентификаторы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың идентификаторларын get_all_instances_info әдісі арқылы алуға болады

Қайтарылатын мән

Қайтарылатын мән жоқ.

Әдіс сигнатурасы және пайдалану мысалы

create_deployment

Қашықтағы ML-модельді өрістетуді жасау.

Токеннің қажетті рөлі: Пользователь немесе Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

deploy_server_name

(міндетті)

str

Қашықтағы ML-модель өрістетілетін MLflow Deploy инстансының атауы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың атауларын get_all_instances_info әдісі арқылы алуға болады

deployment_name

(міндетті)

str

Қашықтағы ML-модель өрістетуінің атауы

model_uri

(міндетті)

str

MLflow инстансының артефакттар қоймасындағы ML-модельдің URI-і

username

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің логині

password

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің құпиясөзі

model_username

(міндетті)

str

Қашықтағы ML-модель әдістеріне, яғни predict_model және ping_model әдістеріне қол жеткізуге арналған пайдаланушы логині

model_password

(міндетті)

str

Қашықтағы ML-модель әдістеріне қол жеткізуге арналған пайдаланушы құпиясөзі

port_out

(міндетті)

int

Қашықтағы ML-модель қолжетімді болатын MLflow Deploy инстансының порты.

Егер None мәні көрсетілсе, 62000–65000 диапазонындағы бірінші бос порт таңдалады

Қайтарылатын мән

Жасалған ML-модель өрістетуі туралы ақпараты бар DeployOut класының объектісі: оның атауы, мәртебесі және басқа параметрлері.

Әдіс сигнатурасы және пайдалану мысалы

list_deployments

MLflow Deploy инстансында қолжетімді барлық ML-модель өрістетулерінің тізімін алу.

Токеннің қажетті рөлі: Пользователь немесе Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

deploy_server_name

(міндетті)

str

MLflow Deploy инстансының атауы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың атауларын get_all_instances_info әдісі арқылы алуға болады

username

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің логині

password

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің құпиясөзі

Қайтарылатын мән

Көрсетілген инстанста қолжетімді ML-модель өрістетулері туралы ақпараты бар DeployOut класы объектілерінің тізімі: олардың атаулары, мәртебелері және басқа параметрлері.

Әдіс сигнатурасы және пайдалану мысалы

get_deployment

ML-модель өрістетуі туралы ақпаратты оның атауы бойынша алу.

Токеннің қажетті рөлі: Пользователь немесе Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

deploy_server_name

(міндетті)

str

MLflow Deploy инстансының атауы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың атауларын get_all_instances_info әдісі арқылы алуға болады

deployment_name

(міндетті)

str

Қашықтағы ML-модель өрістетуінің атауы.

Барлық өрістетулердің тізімін және олардың атауларын list_deployments әдісі арқылы алуға болады

username

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің логині

password

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің құпиясөзі

Қайтарылатын мән

Көрсетілген ML-модель өрістетуі туралы ақпараты бар DeployOut класының объектісі: оның атауы, мәртебесі және басқа параметрлері.

Әдіс сигнатурасы және пайдалану мысалы

delete_deployment

ML-модель өрістетуін жою.

Токеннің қажетті рөлі: Пользователь немесе Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

deploy_server_name

(міндетті)

str

MLflow Deploy инстансының атауы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың атауларын get_all_instances_info әдісі арқылы алуға болады

deployment_name

(міндетті)

str

ML-модель өрістетуінің атауы.

Барлық өрістетулердің тізімін және олардың атауларын list_deployments әдісі арқылы алуға болады

username

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің логині

password

(міндетті)

str

MLflow Deploy инстансы байланыстырылған JupyterHub инстансы немесе MLflow Standalone әкімшісінің құпиясөзі

Қайтарылатын мән

Қайтарылатын мән жоқ.

Әдіс сигнатурасы және пайдалану мысалы

ping_model

Қашықтағы ML-модельдің жұмысқа дайындығын тексеру.

Токеннің қажетті рөлі: Пользователь немесе Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

deploy_server_name

(міндетті)

str

ML-модель өрістетілген MLflow Deploy инстансының атауы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың атауларын get_all_instances_info әдісі арқылы алуға болады

deployment_name

(міндетті)

str

Қашықтағы ML-модель өрістетуінің атауы.

Барлық өрістетулердің тізімін және олардың атауларын list_deployments әдісі арқылы алуға болады

model_username

(міндетті)

str

create_deployment әдісін шақырғанда көрсетілген қашықтағы ML-модель әдістеріне қол жеткізуге арналған пайдаланушы логині

model_password

(міндетті)

str

create_deployment әдісін шақырғанда көрсетілген қашықтағы ML-модель әдістеріне қол жеткізуге арналған пайдаланушы құпиясөзі

Қайтарылатын мән

Егер модель жұмысқа дайын болса, жаңа жолдың \n символы.

Әдіс сигнатурасы және пайдалану мысалы

predict_model

Берілген кіріс деректері үшін ML-модельдің болжамын алу.

Токеннің қажетті рөлі: Пользователь немесе Администратор. Токен рөлдері туралы толығырақ.

Әдіс аргументтері

Аргумент

Түрі

Сипаттамасы

data

(міндетті)

Dict

ML-модельге арналған кіріс деректері

deploy_server_name

(міндетті)

str

ML-модель өрістетілген MLflow Deploy инстансының атауы.

Cloud ML Platform-тың барлық инстанстарының тізімін және олардың атауларын get_all_instances_info әдісі арқылы алуға болады

deployment_name

(міндетті)

str

Қашықтағы ML-модель өрістетуінің атауы.

Барлық өрістетулердің тізімін және олардың атауларын list_deployments әдісі арқылы алуға болады

model_username

(міндетті)

str

create_deployment әдісін шақырғанда көрсетілген қашықтағы ML-модель әдістеріне қол жеткізуге арналған пайдаланушы логині

model_password

(міндетті)

str

create_deployment әдісін шақырғанда көрсетілген қашықтағы ML-модель әдістеріне қол жеткізуге арналған пайдаланушы құпиясөзі

Қайтарылатын мән

Берілген кіріс деректері үшін Dict[str, Any] форматындағы ML-модель болжамы.

Әдіс сигнатурасы және пайдалану мысалы