注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

媒体集(非结构化数据)

一个媒体集是具有共同模式的媒体文件的集合,例如相同格式的文件。媒体集旨在处理大规模的非结构化数据,并支持处理音频、图像、视频和文档等媒体项。媒体集支持灵活的存储、计算优化和模式特定的变换,以增强媒体工作流和管道。

媒体集支持导入音频、图像、视频和文档。

媒体集工作流示例包括:

  • 通过管道构建器从PDF中提取文本以支持内容分析
  • 在地图应用中使用栅格切片(TIFF,NITF)进行地理空间分析
  • 使用管道构建器处理医学影像文件(DICOM格式)

要开始搭建管道,请按照以下步骤操作:

支持的媒体集文件类型

以下文件类型支持作为媒体集:

  • 音频
    • WAV (.wav)
    • MP3 (.mp3)
    • NIST SPHERE (.sph)
    • FLAC (.flac)
  • 文档
    • PDF (.pdf)*
  • 图像
    • PNG (.png)
    • JPEG (.jpg, .jpeg)
    • JP2K (.jp2)
    • BMP (.bmp)
    • TIFF (.tiff, .tif)
    • NITF (.nitf)
    • DICOM (.dcm)
  • 视频
    • MP4 (.mp4)
    • MOV (.mov)
    • TS (.ts)
PDF支持

需要专有功能查看或受密码、数字签名或加密保护的PDF文件不支持。

导入媒体

可以通过直接上传、在数据连接中与外部源系统的连接、API发布和变换(包括外部变换)配置媒体集以进行导入。

直接上传

要通过直接上传将媒体文件导入媒体集,请将文件拖放到您的新媒体集中。文件必须符合创建媒体集时指定的预期文件类型才能上传到媒体集。

  1. 首先,通过在项目中选择新建并从搜索栏中选择媒体集来创建一个新的媒体集,如下所示。

从项目创建媒体集

  1. 接下来,为新的媒体集选择所需的媒体文件类型,然后选择创建媒体集

选择媒体文件类型

  1. 创建媒体集后,可以通过将媒体拖放到空的媒体集上或选择从计算机中选择提示上传媒体。

从空媒体集上传

数据连接

可以使用数据连接与外部源的同步导入媒体集。在媒体集同步文档中可以找到详细的操作步骤。

要创建新的媒体集同步,请导航到所需概览选项卡。

创建同步后,在媒体集视图中触发搭建以使媒体出现在您的媒体集中。

您也可以通过选择源选项将现有源连接到新的媒体集中。

将现有源添加到媒体集

虚拟存储

对于支持的源类型,媒体集可以选择配置为直接从外部源系统读取,因此无需将数据复制到Foundry的后台存储中(“虚拟媒体集”)。

目前,虚拟媒体集仅支持某些源类型。如果您对其他源类型的虚拟存储感兴趣,请联系Palantir支持。

存储策略

外部变换

对于具有REST API的源,可以通过外部变换将媒体导入媒体集。

管道构建器

媒体集也可以直接导入到管道构建器中。了解在管道构建器中可用的上传方法。

保留策略

您可以为媒体集配置基于时间的保留策略,例如14天,以便不需要永久存在的数据。媒体项仅在保留窗口内可访问,之后将被永久删除。这是一个有助于最小化存储成本的选项。

一旦媒体项的保留窗口到期,它将永远无法再次访问,并将被删除。例如:

  • 当保留窗口从30天减少到7天时,所有超过新窗口(7天)天数的媒体项将立即无法访问。
  • 当保留窗口从7天扩展到30天时,之前过期的媒体项(7天零1秒)将不会再次可访问。即使保留期更改为“永久”,也是如此。

在Foundry中变换媒体

管道构建器

管道构建器中提供了常见的媒体集变换。了解如何在管道构建器中搭建带有媒体集的批处理管道。

以下是一个在PDF上使用的文本提取(OCR选项)面板的示例:

在管道构建器上的文本提取

如果您对当前不可用的变换感兴趣,请联系您的Palantir代表。

代码仓库

媒体集也支持通过导入transforms-media在Python变换中使用的专门变换,如PDF文本提取、光学字符识别(OCR)、图像切片和元数据解析。

可以在使用Python变换的媒体集文档中找到常见变换。

以下是您如何在代码仓库中开始使用媒体集的示例:

Copied!
1 2 3 4 5 6 7 8 9 10 from transforms.api import transform from transforms.mediasets import MediaSetInput, MediaSetOutput # 使用装饰器 @transform 来定义一个数据转换函数 @transform( images=MediaSetInput('/examples/images'), # 输入媒体集路径 output_images=MediaSetOutput('/examples/output_images') # 输出媒体集路径 ) def translate_images(images, output_images): ...

此代码中,使用了 transforms 库中的功能来处理媒体数据集。translate_images 函数被装饰器 @transform 修饰,表示这是一个数据转换函数。MediaSetInputMediaSetOutput 分别定义了输入和输出的媒体集路径。

访问模式

高级用户和开发人员可以利用媒体集的访问模式,这些模式是预先配置的变换,可以按需在媒体集中的媒体项上执行。访问模式具有存储和优化调整的持久性策略,提供在每次请求时重新计算、首次请求后无限期保留输出或缓存一段时间的选项。

Foundry平台利用访问模式以最佳方式处理或呈现媒体集项。例如:

  • Workshop中的PDF缩略图和预览
  • Preview应用中的缓冲音频波形
  • Map中的瓦片化卫星影像

默认可用的访问模式集是根据配置的媒体集模式确定的。额外的变换通过API调用注册为媒体集的访问模式。

媒体引用

媒体集中的项可以使用媒体引用进行引用。媒体引用使您可以在Foundry中使用媒体项,而无需复制媒体项本身。

使用媒体引用在数据集中引用媒体集项。这对于将媒体项与元数据或其他信息以表格格式关联很有用。例如,您可以将原始PDF与其文件名、页数和提取的文本关联为附加列。

您还可以将媒体引用用作模型适配器的批量推理管道的输入。

要为您的媒体集生成媒体引用列表,请在Pipeline Builder中使用Get media references函数。您还可以通过导入transforms-media库并调用list_media_items_by_path_with_media_reference方法,在Python变换中生成媒体引用:

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 from pyspark.sql import functions as F from transforms.api import transform, Input, Output from transforms.mediasets import MediaSetInput @transform( metadata_out=Output("{YOUR_OUTPUT_METADATA_DATASET}"), # 指定输出数据集 mediaset_in=MediaSetInput("{YOUR_MEDIA_SET_RID}") # 指定输入媒体集资源ID ) def compute(ctx, mediaset_in, metadata_out): # 获取媒体项目的路径及其引用 media_references = mediaset_in.list_media_items_by_path_with_media_reference(ctx) # 定义列的类型,'mediaReference' 是引用类型,这样可以在数据集中启用内联缩略图 column_typeclasses = {'mediaReference': [{'kind': 'reference', 'name': 'media_reference'}]} # 将数据写入输出数据集,同时指定列类型 metadata_out.write_dataframe(media_references, column_typeclasses=column_typeclasses)

使用媒体引用对媒体进行Ontology化

使用媒体引用对象属性在构建于Ontology的应用中高效显示您的媒体。优化包括在Workshop或Object Explorer中更快和互动的预览,以及在Map中用于地理空间图像的平铺。

使用媒体引用属性的自定义逻辑

对象函数中使用具有媒体引用对象属性的对象。

您可以直接读取原始媒体项。此外,您还可以对媒体项执行常见的特定类型操作,例如:

  • 对文档进行OCR
  • 从文档中提取文本
  • 音频转录
  • 读取媒体项元数据

从媒体集中删除媒体项

您可以通过选择要删除的媒体项,并选择删除操作,从媒体集中删除媒体项。为了防止意外删除,此操作将要求您在弹出窗口中再次选择确认删除以确认您删除媒体项的意图。

删除媒体项

一旦您成功删除了该项目,媒体集将刷新并显示成功消息。您现在可以查看没有被删除媒体项的媒体集。

成功删除

媒体集计算使用

媒体集为平台带来了许多先进的开箱即用变换。除了通过变换和管道触发外,还可以通过前端与媒体项交互(例如,预览媒体项)触发媒体变换。此外,下载或流式传输媒体项的全部内容也是有成本的。

使用情况以Foundry计算秒为单位进行跟踪。下表描述了每个可用的变换,以及按每GB处理量的计算秒的使用率。

如果您与Palantir签订了企业合同,请在进行使用计算之前联系您的Palantir代表。

变换

使用率以每GB的计算秒为单位衡量

全部

变换使用率
下载 / 流式传输2

图像

变换使用率
旋转40
调整大小40
生成PDF40
调整对比度75
裁剪 / 切片75
灰度75
地理平铺75
渲染DICOM图像层75
提取文本(OCR)275
加密 / 解密75

音频

变换使用率
转码75
波形生成75
转录275

视频

变换使用率
获取场景帧的时间戳40
提取音频75
在时间戳提取帧75
提取所有场景帧275
使用HLS流式传输275
转码275

文档

变换使用率
将页面渲染为图像40
在边界框内将页面渲染为图像40
获取PDF页面尺寸40
切分PDF范围75
提取表单字段75
提取目录75
提取页面上的文本(原始)75
提取所有文本(原始)75
提取文本(OCR)275

媒体集限制

  • 事务性媒体集每个事务的项目限制为10,000个。
  • 非事务性媒体集没有项目限制。
  • 媒体集中项目的路径不能超过256个字符。尝试将路径长度超过256个字符的项目添加到媒体集中将导致MediaSet:MediaItemPathInvalid错误。