CatBoost¶
关于此页面
这是 BentoML 中 CatBoost 的 API 参考。有关如何在 BentoML 中使用 CatBoost 的更多信息,请参阅 CatBoost 指南。
- bentoml.catboost.save_model(name: Tag | str, model: cb.CatBoost, *, signatures: dict[str, ModelSignatureDict] | None = None, labels: dict[str, str] | None = None, custom_objects: dict[str, t.Any] | None = None, external_modules: t.List[ModuleType] | None = None, metadata: dict[str, t.Any] | None = None) bentoml.Model ¶
将 CatBoost 模型实例保存到 BentoML 模型仓库。
- 参数:
name – 在 BentoML 仓库中给模型的名称。这必须是一个有效的
Tag
名称。model – 要保存的 CatBoost 模型。
signatures – 要使用的预测方法的签名。如果未提供,签名默认为
{"predict": {"batchable": False}}
。更多详细信息请参阅ModelSignature
。labels – 与模型关联的一组默认管理标签。例如
{"training-set": "data-1"}
。custom_objects –
与模型一起保存的自定义对象。例如
{"my-normalizer": normalizer}
。自定义对象目前使用 cloudpickle 序列化,但此实现可能会更改。
external_modules (
List[ModuleType]
, 可选, 默认为None
) – 与模型或自定义对象一起保存的用户定义的附加 python 模块,例如分词器模块、预处理器模块、模型配置模块metadata –
与模型关联的元数据。例如
{"max_depth": 2}
。元数据旨在用于模型管理 UI 的显示,因此必须是默认的 Python 类型,例如
str
或int
。
- 返回:
一个
tag
,格式为 name:version,其中 name 是用户定义的模型名称,version 是 BentoML 生成的版本。- 返回类型:
Tag
示例
import bentoml import numpy as np from catboost import CatBoostClassifier, Pool # initialize data train_data = np.random.randint(0, 100, size=(100, 10)) train_labels = np.random.randint(0, 2, size=(100)) test_data = catboost_pool = Pool(train_data, train_labels) model = CatBoostClassifier(iterations=2, depth=2, learning_rate=1, loss_function='Logloss', verbose=True) # train the model model.fit(train_data, train_labels) # save the model to the BentoML model store bento_model = bentoml.catboost.save_model("my_catboost_model", model)
- bentoml.catboost.load_model(bento_model: str | Tag | Model) catboost.CatBoost ¶
从本地 BentoML 模型仓库加载给定标签的 CatBoost 模型。
- 参数:
bento_model (
str
|
Tag
|
Model
) – 要从仓库中获取的模型标签,或者一个 BentoML ~bentoml.Model 实例,用于从中加载模型。- 返回:
从模型仓库或 BentoML
Model
加载的 CatBoost 模型。- 返回类型:
CatBoost
示例
import bentoml # target model must be from the BentoML model store booster = bentoml.catboost.load_model("my_catboost_model")
- bentoml.catboost.get(tag: t.Union[Tag, str], *, _model_store: ModelStore = <simple_di.providers.SingletonFactory object>, model_aliases: t.Dict[str, str] = <simple_di.providers.Static object>) Model ¶
通过标签获取模型。如果标签是字符串,它将在 model_aliases 字典中查找。
- bentoml.catboost.get_service(model_name: str, **config: Unpack[ServiceConfig]) Service[t.Any] ¶
获取指定名称的 catboost 模型的 BentoML 服务。
- 参数:
model_name (
str
) – 要获取服务的模型名称。**config (
Unpack[ServiceConfig]
) – 服务的配置选项。
- 返回:
包装 CatBoost 模型的 BentoML 服务实例。
示例
import bentoml service = bentoml.catboost.get_service("my_catboost_model")