TwelveLabs Marengo Embed 2.7 - Amazon Bedrock

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

TwelveLabs Marengo Embed 2.7

该TwelveLabs Marengo Embed 2.7模型根据视频、文本、音频或图像输入生成嵌入内容。这些嵌入可用于相似度搜索、聚类和其他机器学习任务。该模型支持通过 StartAsyncInvoke API 进行异步推理。

  • 提供商 — TwelveLabs

  • 类别-嵌入式、多式联运

  • 型号编号 — twelvelabs.marengo-embed-2-7-v1:0

  • 输入模式-视频、文本、音频、图像

  • 输出模式-嵌入式

  • 最大视频大小-2 小时长视频(< 2GB 文件大小)

TwelveLabs Marengo Embed 2.7请求参数

下表描述了TwelveLabs Marengo Embed 2.7模型的输入参数:

TwelveLabs Marengo Embed 2.7请求参数
字段 类型 必需 描述
inputType 字符串 嵌入模式。有效值:videotextaudioimage
inputText 字符串 inputType是时要嵌入的文本text。如果 inputTypetext,则必需。S3 URI 不能使用文本输入,只能通过inputText字段输入。
startSec double 从视频或音频的开头开始处理起始偏移量(以秒为单位)。指定 0 表示从媒体的开头开始。默认值:0,最小值:0。
lengthSec double 视频或音频的处理时间长度(以秒为单位)startSec。默认:媒体时长,最大:媒体时长。
useFixedLengthSec double 仅用于audiovideo输入。平台为其生成嵌入内容的每个片段所需的固定时长(以秒为单位)。最小:2,最大:10。如果缺失,则对于视频:片段通过镜头边界检测动态分割;对于音频:片段平均分割到最接近 10 秒(因此,如果是 50 秒的片段,则将是 5 个片段,每个片段 10 秒,但如果是 16 秒的片段,则为 2 个片段,每个片段 8 秒)。
textTruncate 字符串 仅供text输入。指定平台如何截断超过 77 个标记的文本。有效值:end(截断文本的结尾)、none(如果文本超过限制则返回错误)。默认值:end
embeddingOption 列表 仅供video输入。指定要检索的嵌入类型。有效值:visual-text(针对文本搜索进行了优化的视觉嵌入)、visual-image(针对图像搜索进行了优化的视觉嵌入)、audio(音频嵌入)。如果未提供,则返回所有可用的嵌入内容。
mediaSource object 描述媒体来源。输入类型为必填项:imagevideo、和audio
mediaSource.base64String 字符串 媒体的 Base64 编码字节字符串。最大容量:36MB。如果使用,mediaSources3Location必须提供base64String或。
mediaSource.s3Location.uri 字符串 可以从中下载媒体的 S3 URI。对于视频,最长:2 小时(文件大小小于 2GB)。如果使用,则为必填项s3Location
mediaSource.s3Location.bucketOwner 字符串 存储桶拥有者的 AWS 账户 ID。
minClipSec 整数 仅供video输入。设置最小片段秒数。注意:useFixedLengthSec应大于此值。默认值:4,最小值:1,最大值:5。

TwelveLabs Marengo Embed 2.7 响应字段

下表描述了TwelveLabs Marengo Embed 2.7模型的输出字段:

TwelveLabs Marengo Embed 2.7 响应字段
字段 类型 描述
embedding 双打名单 嵌入值
embeddingOption 字符串 多向量输出的嵌入类型(仅适用于视频)。有效值:visual-text(视觉嵌入与文本嵌入紧密对齐)、visual-image(视觉嵌入与图像嵌入紧密对齐)、audio(音频嵌入)。
startSec double 片段的起始偏移量。不适用于文本和图像嵌入。
endSec double 片段的末端偏移量。不适用于文本和图像嵌入。

TwelveLabs Marengo Embed 2.7请求和回应

以下示例说明如何使用具有不同输入类型的TwelveLabs Marengo Embed 2.7模型。请注意,TwelveLabs Marengo Embed 2.7使用 StartAsyncInvoke API 进行处理。

Request

以下示例显示了使用 StartAsyncInvoke API 的TwelveLabs Marengo Embed 2.7模型的请求格式。

文本输入:

{ "modelId": "twelvelabs.marengo-embed-2-7-v1:0", "modelInput": { "inputType": "text", "inputText": "Spiderman flies through a street and catches a car with his web" }, "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "s3://your-bucket-name" } } }

带有 S3 位置的图像输入:

{ "modelId": "twelvelabs.marengo-embed-2-7-v1:0", "modelInput": { "inputType": "image", "mediaSource": { "s3Location": { "uri": "s3://your-image-object-s3-path", "bucketOwner": "your-image-object-s3-bucket-owner-account" } } }, "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "s3://your-bucket-name" } } }

使用 base64 编码的图像输入:

{ "modelId": "twelvelabs.marengo-embed-2-7-v1:0", "modelInput": { "inputType": "image", "mediaSource": { "base64String": "base_64_encoded_string_of_image" } }, "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "s3://your-bucket-name" } } }

带有 S3 位置的视频输入:

{ "modelId": "twelvelabs.marengo-embed-2-7-v1:0", "modelInput": { "inputType": "video", "mediaSource": { "s3Location": { "uri": "s3://your-video-object-s3-path", "bucketOwner": "your-video-object-s3-bucket-owner-account" } } }, "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "s3://your-bucket-name" } } }

采用 base64 编码和时间范围的视频输入:

{ "modelId": "twelvelabs.marengo-embed-2-7-v1:0", "modelInput": { "inputType": "video", "mediaSource": { "base64String": "base_64_encoded_string_of_video" }, "startSec": 0, "lengthSec": 13, "useFixedLengthSec": 5, "embeddingOption": ["visual-text", "audio"] }, "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "s3://your-bucket-name" } } }

带有 S3 位置的音频输入:

{ "modelId": "twelvelabs.marengo-embed-2-7-v1:0", "modelInput": { "inputType": "audio", "mediaSource": { "s3Location": { "uri": "s3://your-audio-object-s3-path", "bucketOwner": "your-audio-object-s3-bucket-owner-account" } } }, "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "s3://your-bucket-name" } } }

采用 base64 编码和时间范围的音频输入:

{ "modelId": "twelvelabs.marengo-embed-2-7-v1:0", "modelInput": { "inputType": "audio", "mediaSource": { "base64String": "base_64_encoded_string_of_audio" }, "startSec": 0, "lengthSec": 13, "useFixedLengthSec": 10 }, "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "s3://your-bucket-name" } } }
Response

以下示例显示了TwelveLabs Marengo Embed 2.7模型的响应格式。由于此模型使用 StartAsyncInvoke,因此响应将传送到中指定的 S3 输出位置outputDataConfig

文本嵌入响应:

{ "embedding": [0.123, -0.456, 0.789, ...], "embeddingOption": null, "startSec": null, "endSec": null }

图像嵌入响应:

{ "embedding": [0.234, -0.567, 0.890, ...], "embeddingOption": null, "startSec": null, "endSec": null }

视频嵌入响应(单个片段):

{ "embedding": [0.345, -0.678, 0.901, ...], "embeddingOption": "visual-text", "startSec": 0.0, "endSec": 5.0 }

视频嵌入响应(具有不同嵌入类型的多个片段):

[ { "embedding": [0.123, -0.456, 0.789, ...], "embeddingOption": "visual-text", "startSec": 0.0, "endSec": 5.0 }, { "embedding": [0.234, -0.567, 0.890, ...], "embeddingOption": "visual-text", "startSec": 5.0, "endSec": 10.0 }, { "embedding": [0.345, -0.678, 0.901, ...], "embeddingOption": "audio", "startSec": 0.0, "endSec": 10.0 } ]

音频嵌入响应(多个片段):

[ { "embedding": [0.456, -0.789, 0.012, ...], "embeddingOption": null, "startSec": 0.0, "endSec": 10.0 }, { "embedding": [0.567, -0.890, 0.123, ...], "embeddingOption": null, "startSec": 10.0, "endSec": 13.0 } ]