通过 AI Factsheets,您可以通过编程方式定制有关模型用例或模型的信息,以增强用于跟踪模型生命周期的 Factsheet。 例如,以编程方式附加文件和图像以增强用例。 使用定制的概况介绍作为 AI 监管策略的一部分。
以编程方式更新模型或模型用例
您可能希望使用其他信息更新模型用例或模型概况介绍。 例如,某些公司具有一组标准的详细信息,它们希望与模型用例或模型事实一起使用。
当前,必须通过修改使用 Watson 数据 REST API 来更新资产的用户属性来更新租户级别资产类型。
更新定制资产类型
执行以下步骤以更新定制资产类型:
为
getcatalogtype
方法提供bss_account_id
查询参数。如果要更新
model_entry
的属性,请提供asset_type
作为model_entry_user
。 如果要更新模型事实的属性,请提供asset_type
作为modelfacts_user
。使用
getcatalogtype
方法 检索当前资产类型定义,其中asset_type
是modelfacts_user
或model_entry_user
。使用定制属性更新当前资产类型定义,方法是按照 API 文档中定义的模式将这些属性添加到属性 JSON 对象。 支持从模型用例或模型的用户界面查看和编辑以下类型的属性:
- 字符串
- 日期
- 整数
使用新属性更新 JSON 后,使用
replaceassettype
方法启动更改。 提供asset_type
,bss_account_id
和请求有效内容。
更新完成后,您可以在模型用例详细信息页面和模型详细信息页面中查看定制属性。
示例 1: 检索和更新 model_entry_user
资产类型
此示例更新模型用例用户数据。 您可以使用相同的格式,但可以替换 modelfacts_user
来检索和更新模型构面表的详细信息。
此 curl 命令检索资产类型 model_entry_user
:
curl -X GET --header 'Accept: application/json' --header "Authorization: Bearer ${MY_TOKEN}" 'https://api.dataplatform.cloud.ibm.com:443/v2/asset_types/model_entry_user?bss_account_id=<bss_account_id>'
这是模型用例用户详细信息的样本响应有效内容:
{
"description": "The model use case to capture user defined attributes.",
"fields": [],
"relationships": [],
"properties": {},
"decorates": [{
"asset_type_name": "model_entry"
}],
"global_search_searchable": [],
"localized_metadata_attributes": {
"name": {
"default": "Additional details",
"en": "Additional details"
}
},
"attribute_only": false,
"name": "model_entry_user",
"version": 1,
"scope": "ACCOUNT"
}
此 curl 命令更新 model_entry_user
资产类型:
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer ${MY_TOKEN}" -d '@requestbody.json' 'https://api.dataplatform.cloud.ibm.com:443/v2/asset_types/model_entry_user?bss_account_id=<bss_account_id>'
requestbody.json
内容如下所示:
{
"description": "The model use case to capture user defined attributes.",
"fields": [],
"relationships": [],
"properties": {
"user_attribute1": {
"type": "string",
"description": "User attribute1",
"placeholder": "User attribute1",
"is_array": false,
"required": true,
"hidden": false,
"readonly": false,
"default_value": "None",
"label": {
"default": "User attribute1"
}
},
"user_attribute2": {
"type": "integer",
"description": "User attribute2",
"placeholder": "User attribute2",
"is_array": false,
"required": true,
"hidden": false,
"readonly": false,
"label": {
"default": "User attribute2"
}
},
"user_attribute3": {
"type": "date",
"description": "User attribute3",
"placeholder": "User attribute3",
"is_array": false,
"required": true,
"hidden": false,
"readonly": false,
"default_value": "None",
"label": {
"default": "User attribute3"
}
}
"decorates": [{
"asset_type_name": "model_entry"
}],
"global_search_searchable": [],
"attribute_only": false,
"localized_metadata_attributes": {
"name": {
"default": "Additional details",
"en": "Additional details"
}
}
}
使用 Python 客户机更新用户详细信息
您还可以使用 Python 脚本来更新资产类型并将其替换为属性。 有关详细信息,请参阅 概况介绍元素描述。
使用定制属性更新资产类型定义后,可以从模型用例概述和模型详细信息页面为这些属性提供值。 您还可以使用以下 Python API 客户机方法将值更新为定制属性:
捕获模型的单元格事实
当数据科学家在笔记本中开发模型时,他们会生成关键模型详细信息的可视化,例如 ROC 曲线,混淆矩阵, panda 概要分析报告或任何单元格执行的输出。 要在模型用例中捕获这些事实,请使用 AI Factsheets Python 客户机库中的 ' capture_cell_facts ` 函数。
对定制字段进行故障诊断
定制字段并使其可供用户使用后,尝试更新模型详细信息的 其他详细信息 部分中的字段的用户可能会收到以下错误:
Update failed. To update an asset attribute, you must be a catalog Admin or an asset owner or member with the Editor role. Ask a catalog Admin to update your catalog role or ask an asset member with the Editor role to add you as a member.
如果用户已具有对模型的编辑许可权,并且仍在获取错误消息,请遵循以下步骤进行解决。
对 createassetattributenewv2调用 API 命令。
将此有效内容与以下命令配合使用:
{ "name": "modelfacts_system", "entity": { } }
其中
asset_id
是model_id
。 输入模型所在的project_id
或space_id
或catalog_id
。
了解更多信息
有关更多信息,请参阅 定制资产类型。
通过使用 IBM_AIGOV_FACTS_CLIENT 文档,以编程方式了解如何使用模型清单。
父主题: 管理模型资产的库存。