本文介绍智能媒体管理IMM提供的工作流模板ID(TemplateId)及其对应支持的算子。
简介
在创建IMM项目或数据集时,可以为项目或数据集设置工作流模板(Template),模板定义了部分接口所需要执行的工作流。在为存储在对象存储(OSS)、相册与网盘服务(PDS)等产品中的文件建立元数据索引时,引擎将根据配置的工作流模板来决定要执行的算子操作,算子对元数据进行采集并将元数据索引到元数据存储引擎中。
注意事项
在通过绑定OSS Bucket或调用IndexFileMeta - 索引文件元信息、BatchIndexFileMeta - 批量索引文件元信息接口建立元数据索引时,根据数据集和项目配置的工作流模板来决定要执行的算子操作。
在数据集中建立元数据索引时,数据集的模板优先级高于项目设置的模板。当数据集模板为空时,则使用项目设置的模板。
工作流模板不会对用户主动使用其他API(例如视频转码、图片人脸检测、图片打分、人脸聚类等)产生限制,但可能因为索引中不存在对应元数据,实际不产生效果。
建立索引过程会产生算子计费和索引存储费用。费用详情请参见计费项。
工作流模板
IMM提供的工作流模板如下表所示。
TemplateId | 说明 |
Official:DefaultEmptyId | 空模板。 在建立元数据索引时,所有算子都不操作,不会产生元数据信息。 |
Official:OSSBasicMeta | OSS基本元数据模板。 在建立元数据索引时,执行OSSMeta算子,采集OSS基本元数据。 |
Official:AllFunction | 全功能模板(仅供测试)。 在建立元数据索引时,执行所有算子,采集OSS基本元数据、MIME信息、人脸信息、标签检测、图片打分、地址位置信息、视频信息、图片EXIF信息、办公文档正文内容等数据。 重要 该模板包含IMM提供的全部能力。仅供测试使用,IMM会根据功能上线情况随时增减该模板算子,因此可能引起计费项增减,请在使用时注意。如果您有特定功能需求,请选择其他模板。 |
Official:FaceManagement | 人脸识别模板。 在建立元数据索引时,对图片类文件的人脸进行检测和索引。可配合人脸聚类相关接口实现人物相册,或配合人脸搜索接口实现门禁、考勤打卡能力。 |
Official:ImageManagement | 图片管理模板。 在建立元数据索引时,对图片进行分析,获取其尺寸、拍摄位置、人脸、标签等信息,用于构建全功能智能相册。 |
Official:CognitionImageManagement | 图片语义搜索模板。 在建立元数据索引时,除对图片进行分析,获取其尺寸、拍摄位置、人脸、标签等信息外,增加对图片的理解能力。配合 SemanticQuery - 自然语言查询 接口的语义搜索功能,提供更加准确优质的图片内容检索能力。帮助您构建大模型时代智能相册。 重要 该模板目前仅在北京地域支持,且目前处于免费邀测状态。若您希望使用,请联系您的客户经理或通过工单联系我们。 |
Official:DocumentManagement | 文档全文检索模板。 在建立元数据索引时,提取文档类文件的文本并进行索引。配合搜索接口实现文档的全文检索能力。 |
Official:MediaMeta | 媒体信息管理模板。 在建立元数据索引时,提取图片、视频等文件的多媒体信息,如尺寸、拍摄时间、地点、时长、编码格式等。可用于媒体文件的分类管理、统计等场景。 |
Official:CognitionDocumentManagement | 文档语义搜索模板。 在建立元数据索引时,通过大模型能力,对文档内的文本进行分析和理解。配合 SemanticQuery - 自然语言查询 接口的语义搜索功能,实现基于语义的智能文档检索。 重要 该模板目前仅在北京地域支持,且目前处于免费邀测状态。若您希望使用,请联系您的客户经理或通过工单联系我们。 |
算子
IMM支持的算子如下表所示。
使用算子可能产生对应计费项目,详情请参考:算子与计费项对应关系。
算子 | 说明 |
OSSMeta算子 | 产生OSS文件的文件名、文件类型、文件大小、文件HASH、文件修改时间、ETag、标签等数据。 |
MIME算子 | 产生MIME数据。 |
FaceDetection算子 | 产生人脸信息数据。 |
LabelClassification算子(图片) | 产生图片标签信息数据。 |
LabelClassification算子(视频) | 产生视频标签信息数据。 |
ImageScoring算子 | 产生图片打分数据。 |
ExtractImageEmbeddings算子 | 产生图片特征信息数据。 |
ReGEO算子 | 产生地址位置信息数据。 |
MediaMeta算子 | 产生视频信息数据。 |
EXIF算子 | 产生图片EXIF信息数据。 |
ExtractDocumentText算子 | 产生办公文档信息数据。 |
工作流模板与算子的对应关系
IMM提供的TemplateId及其对应的算子如下表所示,其中支持表示在建立元数据索引时会执行该算子操作,不支持表示在建立元数据索引时不会执行该算子操作。
TemplateId | 算子 | |||||||||
OSSMeta(OSS 元信息) | MIME (文件类型) | FaceDetection (人脸检测) | LabelClassification算子 (标签检测) | ImageScoring (图片打分) | ExtractImageEmbeddings (图片特征提取) | ReGEO (地理位置) | MediaMeta (视频信息) | EXIF (图片信息) | ExtractDocumentText (文档信息) | |
Official:DefaultEmptyId | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
Official:OSSBasicMeta | 支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
Official:AllFunction | 支持 | 支持 | 支持(包括视频文件和图片文件) | 支持(包括视频文件和图片文件) | 支持 | 不支持 | 支持 | 支持 | 支持 | 支持 |
Official:FaceManagement | 支持 | 不支持 | 支持(包括视频文件和图片文件) | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
Official:ImageManagement | 支持 | 支持 | 支持 | 支持 | 支持 | 不支持 | 支持 | 不支持 | 支持 | 不支持 |
Official:CognitionImageManagement | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 不支持 | 支持 | 不支持 |
Official:DocumentManagement | 支持 | 支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 支持 |
Official:MediaMeta | 支持 | 支持 | 不支持 | 不支持 | 不支持 | 不支持 | 支持 | 支持 | 支持 | 不支持 |
Official:CognitionDocumentManagement | 支持 | 支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
工作流模板使用示例
如下以使用全功能模板(Official:AllFunction)建立图片元数据索引为例,介绍如何使用工作流模板。
调用CreateDataset - 创建数据集接口在IMM项目test-project下使用Official:AllFunction模板,创建名称为allfunction的数据集。具体操作,请参见创建数据集。
请求示例
{ "ProjectName": "test-project", "DatasetName": "allfunction", "Description": "全功能模板数据集", "TemplateId": "Official:AllFunction" }
返回示例
{ "RequestId": "9AB4BD43-C4E5-06AA-A8AB-****", "Dataset": { "FileCount": 0, "BindCount": 0, "ProjectName": "test-project", "CreateTime": "2022-07-08T10:43:32.429344821+08:00", "DatasetMaxTotalFileSize": 90000000000000000, "DatasetMaxRelationCount": 100000000000, "DatasetMaxFileCount": 100000000, "DatasetName": "allfunction", "DatasetMaxBindCount": 10, "UpdateTime": "2022-07-08T10:43:32.429344821+08:00", "DatasetMaxEntityCount": 10000000000, "TotalFileSize": 0, "TemplateId": "Official:AllFunction" } }
调用IndexFileMeta - 索引文件元信息接口为OSS文件oss://test-bucket/test-object.jpg建立元数据索引。具体操作,请参见建立元数据索引。
请求示例
{ "ProjectName": "test-project", "DatasetName": "allfunction", "File": { "URI": "oss://test-bucket/test-object.jpg", "CustomLabels": { "category": "人物" } }, "Notification": { "MNS": { "TopicName": "test-topic" } } }
返回示例
{ "RequestId": "5AA694AD-3D10-0B6A-86B4-****", "EventId": "17C-1Kofq1mlJxRYF7vNGF****" }
调用GetFileMeta - 获取文件元数据接口查询OSS文件oss://test-bucket/test-object.jpg的元数据信息。具体操作,请参见查询文件信息。
请求示例
{ "ProjectName": "test-project", "URI": "oss://test-bucket/test-object.jpg", "DatasetName": "allfunction" }
返回示例
{ "RequestId": "F79E92D5-FA41-0AD6-8948-****", "Files": [ { "ProduceTime": "2020-08-19T17:11:11+08:00", "ObjectACL": "default", "ContentType": "image/jpeg", "ProjectName": "test-project", "Size": 22868, "URI": "oss://test-bucket/test-object.jpg", "Addresses": [ { "Language": "zh-Hans", "Township": "塘沟镇", "AddressLine": "江苏省宿迁市沭阳县塘沟镇陈龙庄", "Country": "中国", "City": "宿迁市", "District": "沭阳县", "Province": "江苏省" } ], "ObjectType": "file", "CustomLabels": { "category": "照片" }, "OwnerId": "****", "FileModifiedTime": "2021-05-13T10:22:44+08:00", "ImageWidth": 270, "OSSStorageClass": "Standard", "MediaType": "image", "ObjectId": "75d5de2c50754e3dadd5c35dbca5f9949369e****", "CreateTime": "2022-07-08T14:34:01.400716231+08:00", "Filename": "1.jpg", "Labels": [ { "CentricScore": 0.859000027179718, "Language": "zh-Hans", "LabelConfidence": 1, "LabelName": "女士", "LabelLevel": 2, "ParentLabelName": "面部" }, { "CentricScore": 0.7770000100135803, "Language": "zh-Hans", "LabelConfidence": 1, "LabelName": "服装", "LabelLevel": 2, "ParentLabelName": "衣服" }, { "CentricScore": 0.8809999823570251, "Language": "zh-Hans", "LabelConfidence": 1, "LabelName": "长发", "LabelLevel": 2, "ParentLabelName": "外貌特征" }, { "CentricScore": 0.8899999856948853, "Language": "zh-Hans", "LabelConfidence": 1, "LabelName": "黑发", "LabelLevel": 2, "ParentLabelName": "外貌特征" }, { "CentricScore": 0.8330000042915344, "Language": "zh-Hans", "LabelConfidence": 1, "LabelName": "肖像摄影", "LabelLevel": 2, "ParentLabelName": "艺术品" }, { "CentricScore": 0.8299999833106995, "Language": "zh-Hans", "LabelConfidence": 0.9879999756813049, "LabelName": "美人", "LabelLevel": 2, "ParentLabelName": "外貌特征" }, { "CentricScore": 0.8399999737739563, "Language": "zh-Hans", "LabelConfidence": 0.9589999914169312, "LabelName": "人物特写", "LabelLevel": 2, "ParentLabelName": "其他场景" }, { "CentricScore": 0.8429999947547913, "Language": "zh-Hans", "LabelConfidence": 0.949999988079071, "LabelName": "人像", "LabelLevel": 2, "ParentLabelName": "面部" }, { "CentricScore": 0.8519999980926514, "Language": "zh-Hans", "LabelConfidence": 0.925000011920929, "LabelName": "人", "LabelLevel": 2, "ParentLabelName": "面部" }, { "CentricScore": 0.8859999775886536, "Language": "zh-Hans", "LabelConfidence": 0.9129999876022339, "LabelName": "女孩", "LabelLevel": 2, "ParentLabelName": "面部" }, ... ], "Orientation": 1, "Figures": [ { "Beard": "none", "MaskConfidence": 0.6959999799728394, "Gender": "female", "Boundary": { "Left": 70, "Top": 75, "Height": 134, "Width": 101 }, "BeardConfidence": 1, "FigureId": "b51a7c91-1ce7-44d8-ae53-****", "Mouth": "close", "Emotion": "none", "Age": 25, "MouthConfidence": 0.996999979019165, "FigureType": "face", "GenderConfidence": 1, "HeadPose": { "Pitch": 21.562999725341797, "Roll": 12.322999954223633, "Yaw": 11.529999732971191 }, "Mask": "none", "EmotionConfidence": 0.9819999933242798, "HatConfidence": 1, "GlassesConfidence": 0.9990000128746033, "Sharpness": 1, "FigureClusterId": "figure-cluster-id-unavailable", "FaceQuality": 0.9990000128746033, "Attractive": 0.9819999933242798, "AgeSD": 5, "Glasses": "none", "FigureConfidence": 0.9980000257492065, "Hat": "none" } ], "EXIF": "{\"Compression\":{\"value\":\"6\"},\"DateTime\":{\"value\":\"2020:08:19 17:11:11\"},\"DateTimeOriginal\":{\"value\":\"2020:08:19 17:11:11\"},\"ExifTag\":{\"value\":\"82\"},\"FileSize\":{\"value\":\"22868\"},\"Format\":{\"value\":\"jpg\"},\"GPSLatitude\":{\"value\":\"34deg \"},\"GPSLatitudeRef\":{\"value\":\"North\"},\"GPSLongitude\":{\"value\":\"119deg \"},\"GPSLongitudeRef\":{\"value\":\"East\"},\"GPSMapDatum\":{\"value\":\"WGS-84\"},\"GPSTag\":{\"value\":\"120\"},\"GPSVersionID\":{\"value\":\"2 2 0 0\"},\"ImageHeight\":{\"value\":\"270\"},\"ImageWidth\":{\"value\":\"270\"},\"JPEGInterchangeFormat\":{\"value\":\"294\"},\"JPEGInterchangeFormatLength\":{\"value\":\"2700\"},\"Orientation\":{\"value\":\"1\"},\"ResolutionUnit\":{\"value\":\"2\"},\"XResolution\":{\"value\":\"72/1\"},\"YResolution\":{\"value\":\"72/1\"}}", "ContentMd5": "HZwoCnxPZ/fvhz4o****==", "ImageHeight": 270, "ImageScore": { "OverallQualityScore": 0.6140000224113464 }, "ETag": "\"1D9C280A7C4F67F7EF873E28****\"", "DatasetName": "allfunction", "FileHash": "\"1D9C280A7C4F67F7EF873E28****\"", "CustomId": "abc", "UpdateTime": "2022-07-08T14:34:01.400716231+08:00", "OSSCRC64": "56344477456500****", "OSSTaggingCount": 0, "LatLong": "34.000000,119.000000", "OSSObjectType": "Normal" } ] }