一緒に書く習慣を身につけましょう!「ナゲッツデイリーニュープラン・4月更新チャレンジ」に参加して15日目です。クリックしてイベントの詳細をご覧ください。
BentoMLは、モデルとお弁当を管理するための使いやすいローカルストアと集中ストアを提供します。
この記事では、ローカルファイルシステムベースのモデルとお弁当店の使用に焦点を当てています。集中型ストアソリューションの詳細については、 BentoMLYataiを参照してください。
管理モデル
モデルを作成する
以前のスタートガイドから、モデルはフレームワーク固有のsave()
関数。この例では、以下に示すように、ScikitLearnフレームワークのsklearnモジュールのsave()
関数ます。
import bentoml.sklearn
bentoml.sklearn.save("iris_classifier_model", clf)
复制代码
モデルは、サポートされているフレームワーク固有のレジストリからインポートすることもできます。以下の例では、モデルはMLFlowモデルレジストリからインポートされます。
import bentoml.mlflow
bentoml.mlflow.import_from_uri("mlflow_model", uri=mlflow_registry_uri)
复制代码
デフォルトでは、保存およびインポートされたモデルは、$HOME/bentoml/models
ディレクトリ。
モデルのリスト
作成されたすべてのモデルを一覧表示bentoml.models
するlist()
には、モジュールでPython関数またはmodels list
CLIコマンドを使用します。
Python関数の例は次のとおりです。
import bentoml.models
bentoml.models.list() # get a list of all models
# [
# {
# tag: Tag("iris_classifier_model", "vkorlosfifi6zhqqvtpeqaare"),
# framework: "SKLearn",
# created: 2021/11/14 03:55:11
# },
# {
# tag: Tag("iris_classifier_model", "vlqdohsfifi6zhqqvtpeqaare"),
# framework: "SKLearn",
# created: 2021/11/14 03:55:15
# },
# {
# tag: Tag("iris_classifier_model", "vmiqwpcfifi6zhqqvtpeqaare"),
# framework: "SKLearn",
# created: 2021/11/14 03:55:25
# },
# {
# tag: Tag("fraud_detection_model", "5v4pdccfifi6zhqqvtpeqaare"),
# framework: "PyTorch",
# created: 2021/11/14 03:57:01
# },
# {
# tag: Tag("fraud_detection_model", "5xorursfifi6zhqqvtpeqaare"),
# framework: "PyTorch",
# created: 2021/11/14 03:57:45
# },
# ]
bentoml.models.list("iris_classifier_model") # get a list of all versions of a specific model
bentoml.models.list(Tag("iris_classifier_model", None))
# [
# {
# tag: Tag("iris_classifier_model", "vkorlosfifi6zhqqvtpeqaare"),
# framework: "SKLearn",
# created: 2021/11/14 03:55:11
# },
# {
# tag: Tag("iris_classifier_model", "vlqdohsfifi6zhqqvtpeqaare"),
# framework: "SKLearn",
# created: 2021/11/14 03:55:15
# },
# {
# tag: Tag("iris_classifier_model", "vmiqwpcfifi6zhqqvtpeqaare"),
# framework: "SKLearn",
# created: 2021/11/14 03:55:25
# },
# ]
复制代码
コマンドラインの例は次のとおりです。
> bentoml models list # list all models
MODEL FRAMEWORK VERSION CREATED
iris_classifier_model SKLearn vkorlosfifi6zhqqvtpeqaare 2021/11/14 03:55:11
iris_classifier_model SKLearn vlqdohsfifi6zhqqvtpeqaare 2021/11/14 03:55:15
iris_classifier_model SKLearn vmiqwpcfifi6zhqqvtpeqaare 2021/11/14 03:55:25
fraud_detection_model PyTorch 5v4pdccfifi6zhqqvtpeqaare 2021/11/14 03:57:01
fraud_detection_model PyTorch 5xorursfifi6zhqqvtpeqaare 2021/11/14 03:57:45
> bentoml models list iris_classifier # list all version of my-model
MODEL FRAMEWORK VERSION CREATED
iris_classifier_model PyTorch vkorlosfifi6zhqqvtpeqaare 2021/11/14 03:55:11
iris_classifier_model PyTorch vlqdohsfifi6zhqqvtpeqaare 2021/11/14 03:55:15
iris_classifier_model SKLearn vmiqwpcfifi6zhqqvtpeqaare 2021/11/14 03:55:25
复制代码
モデル情報を取得するにbentoml.models
は、get()
ブロックまたはmodels get
CLIコマンドの下の関数を使用します。
Python関数の例は次のとおりです。
import bentoml.models
bentoml.models.get("iris_classifier_model:vmiqwpcfifi6zhqqvtpeqaare")
bentoml.models.get(Tag("iris_classifier_model", "vmiqwpcfifi6zhqqvtpeqaare"))
# Model(
# tag: Tag("iris_classifier_model", "vmiqwpcfifi6zhqqvtpeqaare"),
# framework: "SKLearn",
# created: 2021/11/14 03:55:25
# description: "The iris classifier model"
# path: "/user/home/bentoml/models/iris_classifier_model/vmiqwpcfifi6zhqqvtpeqaare"
# )
复制代码
コマンドラインの例は次のとおりです。
> bentoml models get iris_classifier_model:vmiqwpcfifi6zhqqvtpeqaare
TAG iris_classifier_model:vmiqwpcfifi6zhqqvtpeqaare
FRAMEWORK SKLearn
CREATED 2021/9/21 10:07:45
DESCRIPTION The iris classifier model
PATH /user/home/bentoml/models/iris_classifier_model/vmiqwpcfifi6zhqqvtpeqaare
复制代码
モデルを削除
モデルストア内のモデルを削除するにbentoml.models
は、モジュールの下にあるdelete()
関数またはmodels delete
CLIコマンドを使用します。
Python関数の例は次のとおりです。
import bentoml.models
bentoml.models.delete("iris_classifier_model:vmiqwpcfifi6zhqqvtpeqaare", skip_confirm=True)
复制代码
コマンドラインの例は次のとおりです。
> bentoml models delete iris_classifier_model:vmiqwpcfifi6zhqqvtpeqaare
复制代码
Bentosを管理する
弁当を作成する
Bentosは、bentoビルドプロセスによって作成されます。スタートガイドから、bentosはbuild
CLIコマンドを使用して構築されていることを思い出してください。詳細については、 Bentosの構築を参照してください。
デフォルトでは、組み込みのBentoは、の$HOME/bentoml/bentos
下。
> bentoml build
复制代码
ベントスのリスト
BentoストアでBentosを表示するには、list
CLIコマンドを使用します。
> bentoml list
BENTO VERSION LABELS CREATED
iris_classifier_service v5mgcacfgzi6zdz7vtpeqaare iris,prod 2021/09/19 10:15:50
复制代码
弁当を削除します
BentoストアでBentosを削除するには、delete
CLIコマンドを使用します。
> bentoml delete iris_classifier_service:v5mgcacfgzi6zdz7vtpeqaare
复制代码