Skip to main content

Библиотека для работы с api Cloud.ru MLSpace

Project description

О пакетах

Репозиторий содержит инструменты разработчика для работы с Cloud.ru ML Space:

  • mls — CLI-утилита, которая позволяет запускать некоторые сервисы ML Space из терминала.
  • mls-core — Python-библиотека с открытым исходным кодом для использования некоторых сервисов ML Space в своих проектах (SDK).

Установка

Чтобы установить mls на локальную машину, в терминале выполните:

Задавайте версию mls==0.7.3 (есть пакет на https://pypi.org/simple - который не относится к данному проекту)

pip install --index-url https://gitverse.ru/api/packages/cloudru/pypi/simple/ --extra-index-url https://pypi.org/simple --trusted-host gitverse.ru mls==0.7.3

GIF Установка

mls-core установится автоматически.

До использования

Выполните

mls configure

![GIF Установка](Справочник CLI/static/QS6.png)

Примеры использования

Получение списка задач

mls job list

GIF Получение списка задач

Просмотр логов задачи

mls job logs

GIF Просмотр логов задачи

Запуск задачи через библиотеку

from mls_core import TrainingJobApi
# Это будет еще переделываться ()

client = TrainingJobApi(
    'https://api.ai.cloud.ru/public/v2',
    'APIKEY_ID',
    'APIKEY_SECRET',
    'WORKSPACE_ID',
    'X_API_KEY'
)
client.run_job(
        payload={
            'script': '/home/jovyan/hello_world.py',
            'base_image': 'cr.ai.cloud.ru/hello_world:latest',
            'instance_type': 'a100.1gpu.40',
            'region': 'REGION',
            'type': 'pytorch2',
            'n_workers': 1,
            'job_desc': 'Привет, мир'
        }
)

Файловая структура

Файловая структура не является финальной

├── README.md                   # Основная документация проекта.
├── LICENSE                     # Лицензионные условия.
├── install.gif                 # Анимация установки.
├── list.gif                    # Анимация списка.
├── logs.gif                    # Анимация логов.
├── mls
│   ├── cli.py                  # Вход в CLI.
│   ├── manager                 # Логика CLI.
│   │   ├── configure           # Подкоманда: mls configure
│   │   │   ├── cli.py          # Настройка профиля.
│   │   │   ├── help.py         # Помощь для configure.
│   │   │   └── utils.py        # Утилиты профиля.
│   │   └── job                 # Подкоманда: mls job
│   │       ├── cli.py          # Управление задачами ML.
│   │       ├── custom_types.py # Типы задач ML.
│   │       ├── dataclasses.py  # Дата-классы задач.
│   │       ├── help.py         # Помощь для job.
│   │       └── utils.py        # Утилиты задач ML.
│   └── utils                   # Поддержка CLI.
│       ├── cli_entrypoint_help.py # Помощь CLI.
│       ├── common.py           # Общая логика.
│       ├── common_types.py     # Пользовательские типы.
│       ├── execption.py        # Исключения.
│       ├── fomatter.py         # Форматирование справки.
│       ├── settings.py         # Настройки приложения.
│       └── style.py            # Стили CLI.
├── mls_core                    # SDK ядро.
│   ├── client.py               # Клиенты SDK.
│   ├── exeptions.py            # Исключения SDK.
│   └── setting.py              # Настройки SDK.
├── samples
│   ├── template.binary.yaml    # Шаблон бинарных задач.
│   ├── template.binary_exp.yaml# Тестовый шаблон (Нестабильный). TODO 
│   ├── template.horovod.yaml   # Шаблон Horovod.
│   ├── template.nogpu.yaml     # Шаблон задач без GPU.
│   ├── template.pytorch.yaml   # Шаблон PyTorch. (Используйте pytorch2)
│   ├── template.pytorch2.yaml  # Шаблон PyTorch2.(минорно отличается от pytorch)
│   ├── template.pytorch_elastic.yaml # Шаблон PyTorch Elastic.
│   └── template.spark.yaml     # Шаблон Spark.
└── Руководство cli
    ├── FAQ.md                  # FAQ.
    ├── Быстрый старт.md        # Быстрый старт.
    ├── Запуск задачи.md        # Запуск задач.
    └── Настройка автокомплитера.md # Автозаполнение.

zsh Автокомплитер

Пользователям ZSH доступна опция авто заполнения в cli

Добавьте скрипт ниже в zsh профиль

_mls_completion() {
    autocomplete "${COMP_WORDS[@]}"
}
complete -F _mls_completion mls

Примеры

binary YAML binary.

pytorch2 YAML pytorch2.

pytorch_elastic YAML pytorch_elastic.

docs: .gitlab-ci.yml rules

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cloudru_ml_cli-0.7.3.tar.gz (45.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cloudru_ml_cli-0.7.3-py3-none-any.whl (62.4 kB view details)

Uploaded Python 3

File details

Details for the file cloudru_ml_cli-0.7.3.tar.gz.

File metadata

  • Download URL: cloudru_ml_cli-0.7.3.tar.gz
  • Upload date:
  • Size: 45.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for cloudru_ml_cli-0.7.3.tar.gz
Algorithm Hash digest
SHA256 81605125f7293f5d6942e7320554ed4056e7bfc83f6b7e3f892b3c9f8c883cdd
MD5 0f022dc04c743ac9f49805fbe184038c
BLAKE2b-256 a3a3cf7f4b4f5fe691bc5c4c13107e3ad2c4058ed52256d09415b3dc14887376

See more details on using hashes here.

File details

Details for the file cloudru_ml_cli-0.7.3-py3-none-any.whl.

File metadata

  • Download URL: cloudru_ml_cli-0.7.3-py3-none-any.whl
  • Upload date:
  • Size: 62.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for cloudru_ml_cli-0.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 eccd52147e23f7c866ed6ac9dd465db80ee90b2cef9ffe183a4954287b5768c0
MD5 21e44c854b2677f2ba109b96726578bf
BLAKE2b-256 b2fede62e5af68be0809669084facafe845e3f29c0f0ad50ba2f0980f6d3da80

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page