MLOps Academy · レッスン

Bentoをビルドしてコンテナ化する

コード、モデル、依存関係をデプロイ可能なBentoにまとめます。

レッスン 4/413 ステップ

「Bentoをビルドしてコンテナ化する」はCoddyKit上の無料MLOps Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはMLOps Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 MLOps Academyコースには全4レッスンが含まれています。

Bentoとは

Bentoは、BentoMLが構築するデプロイ可能なバンドルです。サービスのコード、モデル、正確な依存関係を1つのアーカイブにまとめます。📦

bentofile

ビルドの内容はbentofile.yamlに記述します。サービスのエントリーポイントを指定し、含めるものを一覧にします。

service: "service:svc"

ファイルを含める

バンドルに含めるソースファイルをBentoMLに指定します。includeキーではglobを使用できるため、必要なコードだけをパッケージに含められます。

include:
  - "*.py"

Pythonパッケージを固定する

依存関係はbentofileに直接記述します。pythonの下にパッケージを一覧すると、ビルド時に解決されてバンドルに含まれます。

python:
  packages:
    - scikit-learn

Bentoをビルドする

1つのコマンドですべてを組み立てられます。bentoml buildがbentofileを読み込み、バージョン付きのBentoをストアに生成します。

bentoml build

Bentoを一覧表示する

ビルド済みのBentoはモデルと並んで表示されます。bentoml listを実行すると、それぞれの名前とバージョンタグを確認できます。

bentoml list

コンテナ化する理由

Bentoだけではランタイムが必要です。BentoをDockerイメージに変換すると、どのマシンやクラウドでも同じように実行できます。🐳

1つのコマンドでイメージを作る

BentoMLがDockerfileを自動生成します。bentoml containerizeにBentoのタグを渡すと、すぐに実行できるイメージがビルドされます。

bentoml containerize iris_classifier:latest

コンテナを実行する

これで通常のイメージとして扱えます。docker runで起動し、ポートをマッピングして内部のサービスにリクエストが届くようにします。

docker run -p 3000:3000 iris_classifier:latest

どこへでもデプロイする

このイメージがデプロイ可能なアーティファクトです。registryにプッシュすれば、任意のクラウドランタイムやKubernetesクラスターから取得してサービスを提供できます。🚀

Dockerのベースイメージを設定する

イメージの下で使用するランタイムを制御できます。bentofileのdockerセクションで、Pythonのバージョンやベースイメージを選択できます。

docker:
  python_version: "3.11"

確認問題

bentoml buildを実行してBentoを取得しました。bentoml containerizeは、それに何を追加しますか?

まとめ

bentofileを定義し、bentoml buildを実行してコードと依存関係をまとめ、さらにコンテナ化して、どのクラウドにもデプロイできるDockerイメージにしました。最初から最後まで完成です!🙌

無料で開始

AI チューターと学ぶ Python — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「Bentoをビルドしてコンテナ化する」レッスンは無料ですか?

はい。「Bentoをビルドしてコンテナ化する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、MLOps Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 MLOps Academyコースには全4レッスンが含まれています。

「Bentoをビルドしてコンテナ化する」で何を学びますか?

コード、モデル、依存関係をデプロイ可能なBentoにまとめます。 ブラウザで直接実行するハンズオンコードでMLOps Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

MLOps Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのMLOps Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「Bentoをビルドしてコンテナ化する」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このMLOps Academyレッスンでコードを書いて実行できますか?

はい。すべてのMLOps Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. モデルをBento Storeに保存する
  2. サービスとそのAPIを定義する
  3. 適応型マイクロバッチ処理を有効にする
  4. Bentoをビルドしてコンテナ化する
← MLOps Academyに戻る