Четыре шага по развертыванию всего стека инфраструктуры ИИ для изучения или запуска конвейеров CI/CD.

«Дураки игнорируют сложность. Прагматики страдают. Некоторые могут этого избежать. Гении удаляют это». — Алан Перилс.

Введение

Одно из самых больших препятствий в изучении ИИ — как играть с некоторыми из его инструментов.

В большинстве случаев вы в конечном итоге наткнетесь на Jupiter Notebooks или скрипт на Python, который вам в конечном итоге придется выполнять в кластере Kubernetes… не ждать против чего?

О, вы имеете в виду, что мы забыли, что в нашем сверхпростом примере есть масса требований, о которых вы никогда не слышали?

Нравиться:

  • Вам понадобится кластер Kubernetes и наш очень простой манифест…
  • Загрузите и настройте Helm и запустите этот график…. Но не волнуйтесь, это будет очень легко, просто сделайте эти 200 шагов перед тем, как…

Да, вы можете использовать minikube, microk8s, kubeadm или что-то еще… о, да, это очень просто, но я говорил, что вам понадобятся другие зависимости, такие как kubectl, helm или просто знание всего после установки этих инструментов?? Также вы получили правильную версию тех?
Ваша цель — сосредоточиться на ИИ, но такой подход подразумевает изучение основ инфраструктуры еще до того, как вы сможете развернуть интересующие вас инструменты ИИ, и, очевидно, вы наткнетесь на все возможные ошибки и ошибки…

Итак, вот в чем дело:
Можем ли мы сделать это проще? да мы можем

Введите вариант использования

Алекс любопытный человек и хочет научиться машинному обучению. Он нашел MLFlow и хотел бы начать верить в это. Просматривая документацию, он обнаружил, что может запускать ее как библиотеку Python либо в Conda, либо в образе докера (который нужно собрать), либо прямо на своем ноутбуке.
Это здорово, но Алекс — DevOps, который пытается стать MLOp, поэтому он уже знает, что его «целью» будет Kubernetes.
В идеале цель Алекса — получить поток, который выглядит следующим образом:

  1. Развертывание Kubernetes

2. Развертывание MLFlow (на K8s?)

3. Возьмите общедоступный пример MLFlow и запустите его на недавно развернутом сервере MLFLow.

Все, не беспокоясь об инфраструктуре, развертывании, манифесте и т. д.

Первая проблема заключается в том, что «локальные» решения, такие как minikube или microk8s, хороши, но Алекс хочет чего-то более гибкого, может быть, даже не обязательно локального.

Алекс знает простой и легкий инструмент, который позволяет ему экспериментировать.

Инструмент называется K3ai.

Используя K3ai, он знает, что может создать кластер Kubernetes, развернуть выбранные инструменты искусственного интеллекта и, наконец, выполнить код для обучения, но еще лучше, поскольку K3ai работает на любом вышестоящем K8, позже его можно будет легко встроить в среду Alex CI/CD.

Итак, вот шаг, который может выполнить каждый, чтобы реализовать сценарий использования Алекса.

Шаг 1 — Настройка K3ai

Перво-наперво, верно?

Давайте загрузим K3ai на нашу машину с Linux:

curl -sfL https://get.k3ai.in | sh -

или просто посмотрите видео:

Хорошо, мы установили K3ai, теперь давайте перейдем к настройке.

k3ai up

или, опять же, давайте посмотрим видео:

Шаг 2 — Разверните кластер

Нет ничего проще, чем развернуть полный кластер K8s

k3ai cluster deploy --type k3s --name mycluster

Да, и можно даже выбирать между вариантами, проверьте их с помощью:

k3ai cluster list --all

Давайте посмотрим на развертывание кластера:

Шаг 3 — Разверните MFLow

Итак, кластер запущен, и нам не нужно учиться ничему, кроме одной команды, но давайте развернем MLFLow на нашем только что созданном кластере.

k3ai plugin deploy --name mlflow --target mycluster

А что касается кластеров, давайте проверим список плагинов с помощью:

k3ai plugin list --all

О, кстати, плагин был завершен? Да, поэтому вы можете войти в систему по адресу https://‹YOUR LAPTOP IP›:3500.

Хорошо, давайте повторим этот шаг с помощью видео:

Шаг 4 — Запустите на нем наш код

Так что же мы будем бегать? Как насчет учебника по xgboost от MLFLOW здесь?

Что ж, чтобы сделать вашу жизнь супер легкой, K3ai как ее клон для быстрого старта здесь

Итак, давайте просто напечатаем:

k3ai run --source https://github.com/k3ai/quickstart --backend mlflow --target mycluster

Подождите минуту или около того, теперь обеспокоенный K3ai скажет вам, как только вы все сделали и проверите свой MLFLOW пользовательский интерфейс ... вы будете благодарить меня, как это сделал Алекс!

Еще не убедился, позвольте мне показать это вам:

Да, 4 шага, обучение кода с помощью выбранного вами инструмента, теперь можно действительно сказать, что изучать ИИ очень просто!

K3ai — это проект с открытым исходным кодом, поддерживаемый одним человеком, поэтому, если вам понравилось то, что вы только что прочитали, и вам понравилась идея, пожалуйста, добавьте звезду к проекту, это много значит для меня! Проверьте проект на https://github.com/k3ai/k3ai