为用例或数据表定制详细信息
您可以通过编程方式自定义AI用例中事实表所收集的信息。 将定制化信息表纳入您的AI治理策略。
通过编程方式更新模型或人工智能用例
您可能需要更新用例或信息表,添加更多信息。 例如,某些公司会为模型用例或模型事实配套一套标准的详细信息。
目前,您必须通过修改使用数据和人工智能通用核心API 更新资产的用户属性,来更新租户级别的资产类型。
开始之前
要运行代码示例,您必须拥有一个API承载令牌,该令牌需生成并导出为 ${MY_TOKEN} 环境变量。 有关更多信息,请参阅生成 API 授权令牌。
更新自定义资产类型
请按照以下步骤更新自定义资产类型:
为该
getcatalogtype方法提供查询bss_account_id参数。请
asset_type像更新的model_entry_user属性一样提供model_entry。 请modelfacts_userasset_type像更新模型事实的属性那样提供。使用方法
getcatalogtype检索当前资产类型定义,其中asset_type可以是 或modelfacts_usermodel_entry_user。通过将自定义属性添加到属性JSON对象中,更新当前资产类型定义,添加方式需遵循API文档中定义的架构。 以下类型的属性可在模型用例或模型的用户界面中查看和编辑:
- 字符串
- 日期
- 整数
在 JSON 更新了新属性后,使用 方法
replaceassettype启动更改。 提供asset_type、 和请求bss_account_id负载。
更新完成后,您可以在AI用例详情页和模型详情页查看自定义属性。
示例 1:检索和更新资产 model_entry_user 类型
此示例更新用例用户数据。 您可以使用相同的格式,但替换 modelfacts_user 为以检索和更新模型数据表的详细信息。
此 curl 命令检索资产类型 model_entry_user:
curl -X GET --header 'Accept: application/json' --header "Authorization: ZenApiKey ${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: ZenApiKey ${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"
}
}
}
为自定义事实分配显示顺序
在“创建自定义事实定义”方法中的该 Order 字段,可用于为自定义事实分配显示顺序。 这使您能够更好地控制信息表中事实的组织方式。
请按照以下步骤将订单分配给自定义事实。
- 编辑自定义事实定义文件,添加一个带整数值的"顺序"字段以控制排序。 例如:

- 使用此方法加载定义文件:
facts_client.assets.create_custom_facts_definitions("Asset_type_definition.csv", overwrite=True)
使用 Python 客户端更新用户详细信息
您还可以通过 Python 脚本更新并替换具有属性的资产类型。 详情请参阅数据表要素说明。
在更新资产类型定义并添加自定义属性后,您可通过AI用例概述和AI数据表页面为这些属性提供值。 您还可以使用以下 Python API客户端方法更新自定义属性的值:
为模型捕获细胞信息
当数据科学家在笔记本中开发模型时,他们会为关键模型细节生成可视化图表,例如ROC曲线、混淆矩阵、熊猫分析报告,或是任何单元格执行的输出结果。 要将这些事实作为模型用例的一部分进行捕获,请使用 AI Factsheets 客户端库中的 `capture_cell_facts` 函数。 Python
自定义字段故障排除
在您自定义字段并将其提供给用户后,当用户尝试更新模型详情中 “附加详情 ”部分的字段时,可能会收到以下错误:
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在模型存在的位置输入catalog_id或space_idproject_id或。
了解更多
通过查阅 IBM_AIGOV_FACTS_CLIENT 文档 ,了解如何通过编程方式操作库存。