

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Modelos da TwelveLabs
<a name="model-parameters-twelvelabs"></a>

Esta seção descreve os parâmetros de solicitação e os campos de resposta dos modelos da TwelveLabs. Use essas informações para fazer chamadas de inferência para modelos da TwelveLabs. O TwelveLabs Pegasus 1.2 modelo suporta [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)operações [InvokeModelWithResponseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html)(de streaming). Os TwelveLabs Marengo Embed 3.0 modelos TwelveLabs Marengo Embed 2.7 e suportam [StartAsyncInvoke](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_StartAsyncInvoke.html)as operações. Esta seção também inclui exemplos de código que mostram como chamar modelos da TwelveLabs. Para usar um modelo em uma operação de inferência, o ID do modelo é necessário. Para obter o ID do modelo, consulte [Modelos de base compatíveis no Amazon Bedrock](models-supported.md).

A TwelveLabs é uma fornecedora líder de modelos de IA multimodais especializada em compreensão e análise de vídeo. Seus modelos avançados permitem recursos sofisticados de pesquisa, análise e geração de conteúdo de vídeo por meio de tecnologias de visão state-of-the-art computacional e processamento de linguagem natural.

O Amazon Bedrock oferece três TwelveLabs modelos:
+ TwelveLabs Pegasus 1.2fornece compreensão e análise abrangentes de vídeo.
+ TwelveLabs Marengo Embed 2.7gera incorporações de alta qualidade para conteúdo de vídeo, texto, áudio e imagem.
+ TwelveLabs Marengo Embed 3.0é o modelo de incorporação mais recente com desempenho e recursos aprimorados.

Esses modelos ajudam você a criar aplicativos que processam, analisam e obtêm insights de dados de vídeo em grande escala.

**TwelveLabs Pegasus 1.2**

Um modelo multimodal que fornece recursos abrangentes de compreensão e análise de vídeo, como reconhecimento de conteúdo, detecção de cenas e compreensão contextual. O modelo pode analisar conteúdo de vídeo e gerar descrições textuais, insights e respostas a perguntas feitas ao vídeo.

**TwelveLabs Marengo Embed 2.7**

Um modelo de incorporação multimodal que gera representações vetoriais de alta qualidade de conteúdo de vídeo, texto, áudio e imagem para pesquisa por similaridade, agrupamento e outras tarefas de machine learning. O modelo aceita várias modalidades de entrada e oferece incorporações especializadas otimizadas para diferentes casos de uso.

**TwelveLabs Marengo Embed 3.0**

Um modelo de incorporação multimodal aprimorado que amplia os recursos do Marengo 2.7 com suporte para a modalidade de entrada intercalada de texto e imagem. Esse modelo gera representações vetoriais de alta qualidade de vídeo, texto, áudio, imagem e conteúdo de texto-imagem intercalado para pesquisa por similaridade, agrupamento e outras tarefas de aprendizado de máquina.

**Topics**
+ [TwelveLabs Pegasus 1.2](model-parameters-pegasus.md)
+ [TwelveLabs Marengo Embed 2.7](model-parameters-marengo.md)
+ [TwelveLabs Marengo Embed 3.0](model-parameters-marengo-3.md)

# TwelveLabs Pegasus 1.2
<a name="model-parameters-pegasus"></a>

O modelo TwelveLabs Pegasus 1.2 oferece recursos abrangentes de compreensão e análise de vídeo. Ele pode analisar conteúdo de vídeo e gerar descrições textuais, insights e respostas a perguntas feitas ao vídeo.

Use essas informações para fazer chamadas de inferência para TwelveLabs modelos com as operações InvokeModel, InvokeModelWithResponseStream (streaming).
+ Fornecedor — TwelveLabs
+ Categorias: compreensão e análise de conteúdo de vídeo
+ ID de modelo: `twelvelabs.pegasus-1-2-v1:0`
+ Modalidade de entrada: vídeo
+ Modalidade de saída: texto
+ Duração máxima do vídeo: vídeo de 1 hora (tamanho de arquivo < 2 GB)

## Parâmetros de solicitação do TwelveLabs Pegasus 1.2
<a name="model-parameters-pegasus-request"></a>

A seguinte tabela descreve os parâmetros de entrada para o modelo TwelveLabs Pegasus 1.2.


**Parâmetros de solicitação do TwelveLabs Pegasus 1.2**  

| Campo | Tipo | Obrigatório | Descrição | 
| --- | --- | --- | --- | 
| inputPrompt | string | Sim | Prompt para analisar o vídeo. Máximo: 2 mil tokens. | 
| temperature | double | Não | Temperatura do modelo. Controla a randomização na saída. Padrão: 0,2; Mín.: 0; Máx.: 1. | 
| responseFormat | Objeto | Não | Permite que os usuários especifiquem o formato de saída estruturado. No momento, aceita somente json\$1schema. | 
| mediaSource | objeto | Sim | Descreve a fonte de mídia. É necessário fornecer base64String ou s3Location. | 
| mediaSource.base64String | string | Não | String de bytes codificada em base64 para o vídeo. Máximo: 25MB. | 
| mediaSource.s3Location.uri | string | Não | URI do S3 no qual o vídeo pode ser baixado. Máx.: vídeo de 1 hora (tamanho de arquivo < 2 GB). | 
| mediaSource.s3Location.bucketOwner | string | Não | O ID da conta da AWS do proprietário do bucket. | 
| maxOutputTokens | integer | Não | O número máximo de tokens a serem gerados. Máx: 4.096. | 

## Campos de resposta TwelveLabs Pegasus 1.2
<a name="model-parameters-pegasus-response"></a>

A tabela a seguir descreve os campos para o modelo TwelveLabs Pegasus 1.2.


**Campos de resposta TwelveLabs Pegasus 1.2**  

| Campo | Tipo | Description | 
| --- | --- | --- | 
| message | string | Mensagem de saída contendo a análise do vídeo pelo modelo. | 
| finishReason | string | Motivo da interrupção que descreve por que a saída foi encerrada. Valores válidos: stop (a API exibiu os preenchimentos completos sem atingir nenhum limite), length (a geração ultrapassou o limite de max\$1tokens). | 

## Solicitação e reposta do TwelveLabs Pegasus 1.2
<a name="model-parameters-pegasus-examples"></a>

Os exemplos a seguir mostram como usar o modelo TwelveLabs Pegasus 1.2 com diferentes fontes de entrada.

------
#### [ Request ]

Os exemplos a seguir mostram os formatos de solicitação para o modelo TwelveLabs Pegasus 1.2.

**Usar vídeo codificado em base64:**

```
{
  "inputPrompt": "tell me about the video",
  "mediaSource": {
      "base64String": "<BASE64 STRING OF VIDEO FILE>"
  },
  "temperature": 0
}
```

**Usar vídeo armazenado no S3:**

```
{
    "inputPrompt": "Tell me about this video",
    "mediaSource": {
        "s3Location": {
            "uri": "s3://path-to-video-object-in-s3",
            "bucketOwner": "bucket-owner-account-id"
        }
    },
    "temperature": 0
}
```

**Usar o formato de saída estruturada:**

```
{
    "inputPrompt": "Analyze this video and provide a structured summary",
    "mediaSource": {
        "s3Location": {
            "uri": "s3://path-to-video-object-in-s3",
            "bucketOwner": "bucket-owner-account-id"
        }
    },
    "temperature": 0.2,
    "maxOutputTokens": 2048,
    "responseFormat": {
        "type": "json_schema",
        "json_schema": {
            "name": "video_analysis",
            "schema": {
                "type": "object",
                "properties": {
                    "summary": {"type": "string"},
                    "key_scenes": {"type": "array", "items": {"type": "string"}},
                    "duration": {"type": "string"}
                },
                "required": ["summary", "key_scenes"]
            }
        }
    }
}
```

------
#### [ Response ]

Os exemplos a seguir mostram os formatos de resposta do modelo TwelveLabs Pegasus 1.2.

**Resposta padrão:**

```
{
  "message": "This video shows a person walking through a park during sunset. The scene includes trees, a walking path, and golden lighting from the setting sun. The person appears to be enjoying a peaceful evening stroll.",
  "finishReason": "stop"
}
```

**Resposta com saída estruturada:**

```
{
  "message": "{\"summary\": \"A peaceful evening walk through a park at sunset\", \"key_scenes\": [\"Person entering the park\", \"Walking along tree-lined path\", \"Sunset lighting through trees\", \"Person sitting on bench\"], \"duration\": \"Approximately 2 minutes\"}",
  "finishReason": "stop"
}
```

**Resposta quando o máximo de tokens foi atingido:**

```
{
  "message": "This video contains multiple scenes showing various activities. The first scene shows...",
  "finishReason": "length"
}
```

------

# TwelveLabs Marengo Embed 2.7
<a name="model-parameters-marengo"></a>

O modelo TwelveLabs Marengo Embed 2.7 gera incorporações com base em entradas de vídeo, texto, áudio ou imagem. Essas incorporações podem ser usadas para pesquisa por similaridade, agrupamento e outras tarefas de machine learning.
+ Fornecedor — TwelveLabs
+ ID de modelo: twelvelabs.marengo-embed-2-7-v1:0

O modelo TwelveLabs Marengo Embed 2.7 permite as operações do Amazon Bedrock Runtime descritas na tabela a seguir. 
+ Para ter mais informações sobre casos de uso para diferentes métodos de API, consulte [Saiba mais sobre os casos de uso para diferentes métodos de inferência do modelo.Diferentes métodos de inferência](inference-methods.md).
+ Para ter mais informações sobre os tipos de modelo, consulte [Como a inferência funciona no Amazon BedrockComo a inferência funciona](inference-how.md).
  + Para obter uma lista de modelos IDs e ver os modelos e AWS regiões compatíveis com, pesquise o modelo na tabela em[Modelos de base compatíveis no Amazon Bedrock](models-supported.md). TwelveLabs Marengo Embed 2.7
  + Para obter uma lista completa do perfil de inferência IDs, consulte[Regiões e modelos que compatíveis com perfis de inferência](inference-profiles-support.md). O ID do perfil de inferência é baseado na AWS região.


****  

| Operação de API | Tipos de modelo compatíveis | Modalidades de entrada | Modalidades de saída | 
| --- | --- | --- | --- | 
|  InvokeModel  | [Perfis de inferência](inference-profiles-support.md) |  Texto Imagem  |  Incorporação  | 
| StartAsyncInvoke | [Modelos básicos](models-supported.md) |  Vídeo Áudio Imagem Texto  |  Incorporação  | 

**nota**  
Use `InvokeModel` para gerar incorporações para consulta de pesquisa. Use `StartAsyncInvoke` para gerar incorporações para ativos em grande escala.

As seguintes cotas se aplicam à saída:


****  

| Modalidade de entrada | Máximo | 
| --- | --- | 
| Texto | 77 tokens | 
| Imagem | 5 MB | 
| Vídeo (S3) | 2 GB | 
| Áudio (S3) | 2 GB | 

**nota**  
Se você definir áudio ou vídeo em linha usando a codificação em base64, a carga útil do corpo da solicitação não deve ultrapassar a cota de invocação de 25 MB do modelo do Amazon Bedrock.

**Topics**
+ [Parâmetros de solicitação do TwelveLabs Marengo Embed 2.7](#model-parameters-marengo-async-request)
+ [Resposta TwelveLabs Marengo Embed 2.7](#model-parameters-marengo-response)
+ [Exemplos de código do TwelveLabs Marengo Embed 2.7](#model-parameters-marengo-examples)

## Parâmetros de solicitação do TwelveLabs Marengo Embed 2.7
<a name="model-parameters-marengo-async-request"></a>

Quando você faz uma solicitação, o campo no qual a entrada específica do modelo é estipulada depende da operação de API:
+ [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)— Na solicitação`body`.
+ [StartAsyncInvoke](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_StartAsyncInvoke.html)— No `modelInput` campo do corpo da solicitação.

O formato da entrada do modelo depende da modalidade de entrada:

------
#### [ Text ]

```
{
    "inputType": "text",
    "inputText": "string",
    "textTruncate": "string
}
```

------
#### [ Inline image ]

```
{
     "inputType": "image",
     "mediaSource": {
          "base64String": "base64-encoded string"
     }
}
```

------
#### [ S3 image ]

```
{
    "inputType": "image",
    "mediaSource": {
        "s3Location": {
            "uri": "string",
            "bucketOwner": "string"
        }
    }
}
```

------
#### [ Inline video ]

```
{
    "inputType": "video",
    "mediaSource": {
        "s3Location": {
            "base64String": "base64-encoded string"
        }
    },
    "startSec": double,
    "lengthSec": double,
    "useFixedLengthSec": double,
    "embeddingOption": "visual-text" | "visual-image" | "audio"
}
```

------
#### [ S3 video ]

```
{
    "inputType": "image",
    "mediaSource": {
        "s3Location": {
           "uri": "string",
           "bucketOwner": "string"
        }
    },
    "startSec": double,
    "lengthSec": double,
    "useFixedLengthSec": double,
    "minClipSec": int,
    "embeddingOption": ["string"]
}
```

------
#### [ Inline audio ]

```
{
    "inputType": "audio", 
    "mediaSource": { 
        "base64String": "base64-encoded string"
    },
    "startSec": double,
    "lengthSec": double,
    "useFixedLengthSec": double
}
```

------
#### [ S3 audio ]

```
{
    "inputType": "audio",
    "mediaSource": {
        "s3Location": {
           "uri": "string",
           "bucketOwner": "string"
        }
    },
    "startSec": double,
    "lengthSec": double,
    "useFixedLengthSec": double
}
```

------

Expanda as seguintes seções para obter detalhes sobre os parâmetros de entrada:

### inputType
<a name="model-parameters-marengo-inputType"></a>

Modalidade para a incorporação.
+ **Tipo:** string
+ **Obrigatório**: Sim
+ **Valores válidos**: `video` \$1 `text` \$1 `audio` \$1 `image`

### inputText
<a name="model-parameters-marengo-inputText"></a>

Texto a ser incorporado.
+ **Tipo:** string
+ **Obrigatório:** sim (para tipos de entrada compatíveis)
+ **Tipos de entrada compatíveis:** texto

### textTruncate
<a name="model-parameters-marengo-textTruncate"></a>

Especifica como a plataforma trunca o texto.
+ **Tipo:** string
+ **Obrigatório**: não
+ **Valores válidos:**
  + `end`: trunca o final do texto.
  + `none`: exibe um erro se o texto exceder o limite.
+ **Valor padrão:** end
+ **Tipos de entrada compatíveis:** texto

### mediaSource
<a name="model-parameters-marengo-mediaSource"></a>

Contém informações sobre a fonte de mídia.
+ **Tipo:** objeto
+ **Obrigatório:** sim (se for do tipo compatível)
+ **Tipos de entrada compatíveis:** imagem, vídeo, áudio

O formato do objeto `mediaSource` no corpo da solicitação depende se a mídia está definida como uma string codificada em base64 ou como um local do S3.
+ **Cadeia de caracteres codificada em Base64**

  ```
  {
      "mediaSource": {
          "base64String": "base64-encoded string"
      }
  }
  ```
  + `base64String`: a string codificada em base64 para a mídia.
+ **Localização do S3** — especifique o URI do S3 e o proprietário do bucket.

  ```
  {
      "s3Location": {
          "uri": "string",
          "bucketOwner": "string"
      }
  }
  ```
  + `uri`: o URI do S3 que contém a mídia.
  + `bucketOwner`— O ID da AWS conta do proprietário do bucket S3.

### embeddingOption
<a name="model-parameters-marengo-embeddingOption"></a>

Especifica quais tipos de incorporação devem ser recuperadas.
+ **Tipo**: lista
+ **Obrigatório**: não
+ **Valores válidos para membros da lista:**
  + `visual-text`: incorporações visuais otimizadas para pesquisa de texto.
  + `visual-image`: incorporações visuais otimizadas para pesquisa de imagens.
  + `audio`: incorporações de áudio no vídeo.
+ **Valor padrão:** [“visual-text”, “visual-image”, “audio”]
+ **Tipos de entrada compatíveis:** vídeo, áudio

### startSec
<a name="model-parameters-marengo-startSec"></a>

O ponto no tempo em segundos do clipe em que o processamento deve começar.
+ **Tipo**: duplo
+ **Obrigatório**: não
+ **Valor mínimo**: 0
+ **Valor padrão:** 0
+ **Tipos de entrada compatíveis:** vídeo, áudio

### lengthSec
<a name="model-parameters-marengo-lengthSec"></a>

O tempo em segundos, contado a partir do ponto `startSec`, após o qual o processamento deve ser interrompido.
+ **Tipo**: duplo
+ **Obrigatório**: não
+ **Valores válidos:** 0 (duração da mídia).
+ **Valor padrão:** duração da mídia.
+ **Tipos de entrada compatíveis:** vídeo, áudio

Exemplo:
+ startSec: 5
+ lengthSec: 20
+ Resultado: O clipe é processado de 0:05 a 0:25 (5 segundos \$1 20 segundos).

### useFixedLengthSec
<a name="model-parameters-marengo-useFixedLengthSec"></a>

A duração de cada clipe para o qual o modelo deve gerar uma incorporação.
+ **Tipo**: duplo
+ **Obrigatório**: não
+ **Parâmetros de valor:** 2-10. Deve ser maior que ou igual a `minClipSec`.
+ **Valor padrão:** depende do tipo de mídia:
  + **Vídeo:** Dividido dinamicamente pela detecção do limite de disparo.
  + **Áudio:** dividido uniformemente com segmentos o mais próximo possível de 10 segundos.

    Exemplos:
    + Um clipe de 50 segundos é dividido em 5 segmentos de 10 segundos.
    + Um clipe de 16 segundos é dividido em 2 segmentos de 8 segundos.
+ **Tipos de entrada compatíveis:**: vídeo, áudio
+ **Observações**: deve ser maior que ou igual a `minClipSec`.

### minClipSec
<a name="model-parameters-marengo-minClipSec"></a>

Define um valor mínimo para cada clipe em segundos.
+ Tipo: inteiro
+ **Obrigatório**: não
+ **Parâmetros de valor:** intervalo: 1-5
+ **Valor padrão:** 4
+ **Tipos de entrada compatíveis:** vídeo
+ **Observações**: deve ser menor que ou igual a `useFixedLengthSec`.

## Resposta TwelveLabs Marengo Embed 2.7
<a name="model-parameters-marengo-response"></a>

A localização das incorporações de saída e dos metadados associados depende do método de invocação:
+ [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)— No corpo da resposta.
+ [StartAsyncInvoke](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_StartAsyncInvoke.html)— No bucket do S3 definido no`s3OutputDataConfig`, após a conclusão do trabalho de invocação assíncrona.

Se houver vários vetores de incorporação, a saída será uma lista de objetos, cada um contendo um vetor e os metadados correspondentes.

O formato do vetor de incorporações de saída é o seguinte:

```
{
    "embedding": ["string"],
    "embeddingOption": "visual-text" | "visual-image" | "audio",
    "startSec": double,
    "endsec": double
}
```

Expanda as seguintes seções para obter detalhes sobre os parâmetros de resposta:

### incorporação
<a name="model-parameters-marengo-embedding"></a>

Representação vetorial de incorporações da entrada.
+ **Tipo**: lista de duplos

### embeddingOption
<a name="model-parameters-marengo-embeddingOption"></a>

O tipo de incorporação.
+ **Tipo:** string
+ **Valores possíveis:**
  + `visual-text`: incorporações visuais otimizadas para pesquisa de texto.
  + `visual-image`: incorporações visuais otimizadas para pesquisa de imagens.
  + `audio`: incorporações de áudio no vídeo.
+ **Tipos de entrada compatíveis:** vídeo

### startSec
<a name="model-parameters-marengo-startSec"></a>

O deslocamento inicial do clipe.
+ **Tipo**: duplo
+ **Tipos de entrada compatíveis:** vídeo, áudio

### endSec
<a name="model-parameters-marengo-endSec"></a>

O deslocamento final do clipe, em segundos.
+ **Tipo**: duplo
+ **Tipos de entrada compatíveis:** vídeo, áudio

## Exemplos de código do TwelveLabs Marengo Embed 2.7
<a name="model-parameters-marengo-examples"></a>

Esta seção mostra como usar o modelo TwelveLabs Marengo Embed 2.7 com diferentes tipos de entrada usando Python. Os exemplos demonstram como definir a entrada específica do modelo e executar invocações do modelo.

**nota**  
InvokeModel suporta somente entrada de texto e imagem. Para entrada de vídeo e áudio, use StartAsyncInvoke.

Organize seu código nas seguintes etapas:

**1. Defina a entrada específica do modelo**  
Defina a entrada específica do modelo dependendo do tipo de entrada:

------
#### [ Text ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-2-7-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-2-7-v1:0"
                            
model_input = {
  "inputType": "text",
  "inputText": "man walking a dog"
}
```

------
#### [ Inline image ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-2-7-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-2-7-v1:0"

model_input = {
   "inputType": "image",
   "mediaSource": {
      "base64String": "example-base64-image"
   }
}
```

------
#### [ S3 image ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-2-7-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-2-7-v1:0"

model_input = {
     "inputType": "image",
     "mediaSource": {
          "s3Location": {
               "uri": "s3://amzn-s3-demo-bucket/my_image.png",
               "bucketOwner": "123456789012"
          }
     }
}
```

------
#### [ Inline video ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-2-7-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-2-7-v1:0"

model_input = {
    "inputType": "video",
    "mediaSource": {
        "base64String": "base_64_encoded_string_of_video"
    },
    "startSec": 0,
    "lengthSec": 13,
    "useFixedLengthSec": 5,
    "embeddingOption": [
        "visual-text", 
        "audio"
    ]
}
```

------
#### [ S3 video ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-2-7-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-2-7-v1:0"

model_input = {
    "inputType": "video",
    "mediaSource": {
        "s3Location": {
            "uri": "amzn-s3-demo-bucket/my-video.mp4",
            "bucketOwner": "123456789012"
        }
    },
    "startSec": 0,
    "lengthSec": 13,
    "useFixedLengthSec": 5,
    "embeddingOption": [
        "visual-text", 
        "audio"
    ]
}
```

------
#### [ Inline audio ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-2-7-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-2-7-v1:0"

model_input = {
    "inputType": "audio", 
    "mediaSource": { 
        "base64String": "base_64_encoded_string_of_audio"
    },
    "startSec": 0,
    "lengthSec": 13,
    "useFixedLengthSec": 10
}
```

------
#### [ S3 audio ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-2-7-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-2-7-v1:0"

model_input = {
    "inputType": "audio",
    "mediaSource": {  
        "s3Location": { 
            "uri": "s3://amzn-s3-demo-bucket/my-audio.wav", 
            "bucketOwner": "123456789012" 
        }
    },
    "startSec": 0,
    "lengthSec": 13,
    "useFixedLengthSec": 10
}
```

------

**2. Execute a invocação do modelo usando a entrada do modelo**  
Em seguida, adicione o trecho de código que corresponde ao método de invocação do modelo de sua preferência.

------
#### [ InvokeModel ]

```
# Run model invocation with InvokeModel
import boto3
import json

# Initialize the Bedrock Runtime client
client = boto3.client('bedrock-runtime')

# Make the request
response = client.invoke_model(
    modelId=inference_profile_id,
    body=json.dumps(model_input)
)

# Print the response body
response_body = json.loads(response['body'].read().decode('utf-8'))

print(response_body)
```

------
#### [ StartAsyncInvoke ]

```
# Run model invocation asynchronously
import boto3
import json

# Initalize the Bedrock Runtime client.
client = boto3.client("bedrock-runtime")

try:
    # Start the asynchronous job
    invocation = client.start_async_invoke(
        modelId=model_id,
        modelInput=model_input,
        outputDataConfig={
            "s3OutputDataConfig": {
                "s3Uri": "s3://&example-s3-destination-bucket;"
            }
        }
    )

    # Print the response JSON
    print("Response:")
    print(json.dumps(invocation, indent=2, default=str))

except Exception as e:
    # Implement error handling here.
    message = e.response["Error"]["Message"]
    print(f"Error: {message}")
```

------

# TwelveLabs Marengo Embed 3.0
<a name="model-parameters-marengo-3"></a>

O TwelveLabs Marengo Embed 3.0 modelo gera incorporações aprimoradas a partir de entradas de vídeo, texto, áudio ou imagem. Essa versão mais recente oferece desempenho e precisão aprimorados para pesquisa por similaridade, agrupamento e outras tarefas de aprendizado de máquina.
+ Fornecedor — TwelveLabs
+ ID de modelo: twelvelabs.marengo-embed-3-0-v1:0

O Marengo Embed 3.0 oferece vários aprimoramentos importantes:
+ **Capacidade de processamento de vídeo estendida** — Processe até 4 horas de conteúdo de vídeo e áudio. Os arquivos podem ter até 6 GB, o dobro da capacidade das versões anteriores. Isso o torna ideal para analisar eventos esportivos completos, vídeos de treinamento estendidos e produções cinematográficas completas.
+ **Análise esportiva aprimorada** — O modelo oferece melhorias significativas. Ele fornece uma melhor compreensão da dinâmica do jogo, dos movimentos do jogador e da detecção de eventos.
+ **Suporte multilíngue global** — Capacidades linguísticas expandidas de 12 para 36 idiomas. Isso permite que organizações globais criem sistemas unificados de busca e recuperação que funcionem perfeitamente em diversas regiões e mercados.
+ **Precisão de pesquisa multimodal** — combine imagens e texto descritivo em uma única solicitação de incorporação. Isso combina semelhança visual com compreensão semântica para fornecer resultados de pesquisa mais precisos e contextualmente relevantes.
+ **Dimensão de incorporação reduzida** — Reduzida de 1024 para 512, o que pode ajudar a reduzir os custos de armazenamento.

O modelo TwelveLabs Marengo Embed 3.0 permite as operações do Amazon Bedrock Runtime descritas na tabela a seguir. 
+ Para ter mais informações sobre casos de uso para diferentes métodos de API, consulte [Saiba mais sobre os casos de uso para diferentes métodos de inferência do modelo.Diferentes métodos de inferência](inference-methods.md).
+ Para ter mais informações sobre os tipos de modelo, consulte [Como a inferência funciona no Amazon BedrockComo a inferência funciona](inference-how.md).
  + Para obter uma lista de modelos IDs e ver os modelos e AWS regiões compatíveis com, pesquise o modelo na tabela em[Modelos de base compatíveis no Amazon Bedrock](models-supported.md). TwelveLabs Marengo Embed 3.0
  + Para obter uma lista completa do perfil de inferência IDs, consulte[Regiões e modelos que compatíveis com perfis de inferência](inference-profiles-support.md). O ID do perfil de inferência é baseado na AWS região.


****  

| Operação de API | Tipos de modelo compatíveis | Modalidades de entrada | Modalidades de saída | 
| --- | --- | --- | --- | 
|  InvokeModel  |  Leste dos EUA (Norte da Virgínia) — [Modelos básicos](models-supported.md) e perfis de [inferência](inference-profiles-support.md) Europa (Irlanda) [— Perfis de inferência](inference-profiles-support.md) Ásia-Pacífico (Seul) - Modelos [básicos](models-supported.md)  |  Texto Imagem **Observação:** texto e imagem intercalados também são suportados.  |  Incorporação  | 
| StartAsyncInvoke | [Modelos básicos](models-supported.md) |  Vídeo Áudio Imagem Texto **Observação:** texto e imagem intercalados também são suportados.  |  Incorporação  | 

**nota**  
Use `InvokeModel` para gerar incorporações para consulta de pesquisa. Use `StartAsyncInvoke` para gerar incorporações para ativos em grande escala.

As seguintes cotas se aplicam à saída:


****  

| Modalidade de entrada | Máximo | 
| --- | --- | 
| Texto | 500 fichas | 
| Imagem | 5 MB por imagem | 
| Vídeo (S3) | 6 GB, 4 horas de duração | 
| Áudio (S3) | 6 GB, 4 horas de duração | 

**nota**  
Se você definir áudio ou vídeo em linha usando a codificação em base64, a carga útil do corpo da solicitação não deve ultrapassar a cota de invocação de 25 MB do modelo do Amazon Bedrock.

**Topics**
+ [Parâmetros de solicitação do TwelveLabs Marengo Embed 3.0](#model-parameters-marengo-3-async-request)
+ [Resposta TwelveLabs Marengo Embed 3.0](#model-parameters-marengo-3-response)
+ [Exemplos de código do TwelveLabs Marengo Embed 3.0](#model-parameters-marengo-3-examples)

## Parâmetros de solicitação do TwelveLabs Marengo Embed 3.0
<a name="model-parameters-marengo-3-async-request"></a>

Quando você faz uma solicitação, o campo no qual a entrada específica do modelo é estipulada depende da operação de API:
+ [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)— Na solicitação`body`.
+ [StartAsyncInvoke](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_StartAsyncInvoke.html)— No `modelInput` campo do corpo da solicitação.

O formato da entrada do modelo depende da modalidade de entrada:

------
#### [ Text ]

```
{
    "inputType": "text",
    "text": {
        "inputText": "string"
    }
}
```

------
#### [ Image ]

```
{
  "inputType": "image",
  "image": {
    "mediaSource": {
      "base64String": "base64-encoded string", // base64String OR s3Location, exactly one
      "s3Location": {
        "uri": "s3://amzn-s3-demo-bucket/folder/dog.jpg",
        "bucketOwner": "123456789012"
      }
    }
  }
}
```

------
#### [ Text & image ]

```
{
  "inputType": "text_image",
  "text_image": {
    "inputText": "man walking a dog",
    "mediaSource": {
      "base64String": "base64-encoded string", // base64String OR s3Location, exactly one
      "s3Location": {
        "uri": "s3://amzn-s3-demo-bucket/folder/dog.jpg",
        "bucketOwner": "123456789012"
      }
    }
  }
}
```

------
#### [ Audio ]

```
{
  "inputType": "audio",
  "audio": {
    "mediaSource": {
      "base64String": "base64-encoded string", // base64String OR s3Location, exactly one
      "s3Location": {
        "uri": "s3://amzn-s3-demo-bucket/audio/a.wav",
        "bucketOwner": "123456789012"
      }
    },
    "startSec": 0,
    "endSec": 6,
    "segmentation": {
      "method": "fixed", 
      "fixed": {
        "durationSec": 6
      }
    },
    "embeddingOption": [
      "audio",
      "transcription"
    ], // optional, default=both
    "embeddingScope": [
      "clip",
      "asset"
    ] // optional, one or both
  }
}
```

------
#### [ Video ]

```
{
  "inputType": "video",
  "video": {
    "mediaSource": {
      "base64String": "base64-encoded string", // base64String OR s3Location, exactly one
      "s3Location": {
        "uri": "s3://amzn-s3-demo-bucket/video/clip.mp4",
        "bucketOwner": "123456789012"
      }
    },
    "startSec": 0,
    "endSec": 6,
    "segmentation": {
      "method": "dynamic", // dynamic OR fixed, exactly one
      "dynamic": {
        "minDurationSec": 4
      }
      "method": "fixed",
      "fixed": {
        "durationSec": 6
      }
    },
    "embeddingOption": [
      "visual",
      "audio", 
      "transcription"
    ], // optional, default=all
    "embeddingScope": [
      "clip",
      "asset"
    ] // optional, one or both
  },
  "inferenceId": "some inference id"
}
```

------

Expanda as seguintes seções para obter detalhes sobre os parâmetros de entrada:

### inputType
<a name="model-parameters-marengo-3-inputType"></a>

Modalidade para a incorporação.
+ **Tipo:** string
+ **Obrigatório**: Sim
+ **Valores válidos**: `text` \$1 `image` \$1 `text_image` \$1 `audio` \$1 `video`

### inputText
<a name="model-parameters-marengo-3-inputText"></a>

Texto a ser incorporado.
+ **Tipo:** string
+ **Obrigatório:** sim (para tipos de entrada compatíveis)
+ **Tipos de entrada compatíveis:** texto

### mediaSource
<a name="model-parameters-marengo-3-mediaSource"></a>

Contém informações sobre a fonte de mídia.
+ **Tipo:** objeto
+ **Obrigatório:** sim (se for do tipo compatível)
+ **Tipos de entrada compatíveis:** imagem, vídeo, áudio

O formato do objeto `mediaSource` no corpo da solicitação depende se a mídia está definida como uma string codificada em base64 ou como um local do S3.
+ **Cadeia de caracteres codificada em Base64**

  ```
  {
      "mediaSource": {
          "base64String": "base64-encoded string"
      }
  }
  ```
  + `base64String`: a string codificada em base64 para a mídia.
+ **Localização do S3** — especifique o URI do S3 e o proprietário do bucket.

  ```
  {
      "s3Location": {
          "uri": "string",
          "bucketOwner": "string"
      }
  }
  ```
  + `uri`: o URI do S3 que contém a mídia.
  + `bucketOwner`— O ID da AWS conta do proprietário do bucket do S3.

### embeddingOption
<a name="model-parameters-marengo-3-embeddingOption"></a>

Especifica quais tipos de incorporação devem ser recuperadas.
+ **Tipo**: lista
+ **Obrigatório**: não
+ **Valores válidos para membros da lista:**
  + `visual`— Incorporações visuais do vídeo.
  + `audio`: incorporações de áudio no vídeo.
  + `transcription`— Incorporações do texto transcrito.
+ **Valor padrão:**
  + Vídeo: ["visual”, “áudio”, “transcrição"]
  + Áudio: ["áudio”, “transcrição"]
+ **Tipos de entrada compatíveis:** vídeo, áudio

### Escopo de incorporação
<a name="model-parameters-marengo-3-embeddingScope"></a>

Especifica o escopo das incorporações a serem recuperadas.
+ **Tipo**: lista
+ **Obrigatório**: não
+ **Valores válidos para membros da lista:**
  + `clip`— Retorna as incorporações de cada clipe.
  + `asset`— Retorna incorporações para todo o ativo.
+ **Tipos de entrada compatíveis:** vídeo, áudio

### startSec
<a name="model-parameters-marengo-3-startSec"></a>

O ponto no tempo em segundos do clipe em que o processamento deve começar.
+ **Tipo**: duplo
+ **Obrigatório**: não
+ **Valor mínimo**: 0
+ **Valor padrão:** 0
+ **Tipos de entrada compatíveis:** vídeo, áudio

### endSec
<a name="model-parameters-marengo-3-endSec"></a>

O momento em segundos em que o processamento deve terminar.
+ **Tipo**: duplo
+ **Obrigatório**: não
+ **Valor mínimo:** StartSec \$1 comprimento do segmento
+ **Valor máximo:** duração da mídia
+ **Valor padrão:** duração da mídia.
+ **Tipos de entrada compatíveis:** vídeo, áudio

### segmentation
<a name="model-parameters-marengo-3-segmentation"></a>

Define como a mídia é dividida em segmentos para geração de incorporação.
+ **Tipo:** objeto
+ **Obrigatório**: não
+ **Tipos de entrada compatíveis:** vídeo, áudio

O objeto de segmentação contém um `method` campo e parâmetros específicos do método:
+ `method`— O método de segmentação a ser usado. Valores válidos: `dynamic` \$1 `fixed`
+ `dynamic`— Para vídeo, usa a detecção de limites de captura para dividir o conteúdo dinamicamente. Contém:
  + `minDurationSec`— Duração mínima para cada segmento em segundos. Tipo: número inteiro. Intervalo: 1-5. Padrão: 4.
+ `fixed`— Divide o conteúdo em segmentos de igual duração. Contém:
  + `durationSec`— Duração de cada segmento em segundos. Tipo: número inteiro. Intervalo: 1-10. Padrão: 6.

**Comportamento padrão**:
+ Vídeo: usa segmentação dinâmica com detecção de limites de disparo.
+ Áudio: usa segmentação fixa. O conteúdo é dividido o mais uniformemente possível com segmentos próximos a 10 segundos.

### ID de inferência
<a name="model-parameters-marengo-3-inferenceId"></a>

Identificador exclusivo para a solicitação de inferência.
+ **Tipo:** string
+ **Obrigatório**: não

## Resposta TwelveLabs Marengo Embed 3.0
<a name="model-parameters-marengo-3-response"></a>

A localização das incorporações de saída e dos metadados associados depende do método de invocação:
+ InvokeModel — No corpo da resposta.
+ StartAsyncInvoke — No bucket S3 definido em`s3OutputDataConfig`, após a conclusão do trabalho de invocação assíncrona.

Se houver vários vetores de incorporação, a saída será uma lista de objetos, cada um contendo um vetor e os metadados correspondentes.

O formato do vetor de incorporações de saída é o seguinte:

```
{
  "data": {
    "embedding": [
    0.111, 0.234, ...
    ],
    "embeddingOption": ["visual", "audio", "transcription" (for video input) | "audio", "transcription" (for audio input)],
    "embeddingScope": ["asset" | "clip"],
    "startSec": 0,
    "endSec": 4.2
  }
}
```

As incorporações são retornadas como uma matriz de flutuadores.

O local em que você vê essa resposta depende do método de API usado:
+ InvokeModel — Aparece no corpo da resposta.
+ StartAsyncInvoke — Aparece no local do S3 que você especificou na solicitação. A resposta retorna um`invocationArn`. Você pode usar isso para obter metadados sobre a invocação assíncrona. Isso inclui o status e a localização do S3 em que os resultados são gravados.

Expanda as seguintes seções para obter detalhes sobre os parâmetros de resposta:

### incorporação
<a name="model-parameters-marengo-3-embedding"></a>

Representação vetorial de incorporações da entrada.
+ **Tipo**: lista de duplos

### embeddingOption
<a name="model-parameters-marengo-3-embeddingOption-response"></a>

O tipo de incorporação.
+ **Tipo:** string
+ **Valores possíveis:**
  + visual — Incorporações visuais do vídeo.
  + áudio — Incorporações do áudio no vídeo.
  + transcrição — Incorporações do texto transcrito.
+ **Tipos de entrada compatíveis:** vídeo, áudio

### Escopo de incorporação
<a name="model-parameters-marengo-3-embeddingScope"></a>

Especifica o escopo das incorporações a serem recuperadas.
+ **Tipo:** string

Você pode incluir um ou mais dos seguintes valores:
+ clipe: retorna as incorporações de cada clipe.
+ ativo: retorna incorporações para todo o ativo.

### startSec
<a name="model-parameters-marengo-3-startSec-response"></a>

O deslocamento inicial do clipe.
+ **Tipo**: duplo
+ **Tipos de entrada compatíveis:** vídeo, áudio

### endSec
<a name="model-parameters-marengo-3-endSec-response"></a>

O deslocamento final do clipe. Não aplicável para incorporações de texto, imagem e text\$1image.
+ **Tipo**: duplo
+ **Tipos de entrada compatíveis:** vídeo, áudio

## Exemplos de código do TwelveLabs Marengo Embed 3.0
<a name="model-parameters-marengo-3-examples"></a>

Esta seção mostra como usar o modelo TwelveLabs Marengo Embed 3.0 com diferentes tipos de entrada usando Python. Os exemplos demonstram como definir a entrada específica do modelo e executar invocações do modelo.

**nota**  
InvokeModel suporta texto, imagem e texto com entrada intercalada de imagem. Para entrada de vídeo e áudio, use StartAsyncInvoke.

Organize seu código nas seguintes etapas:

**1. Defina a entrada específica do modelo**  
Defina a entrada específica do modelo dependendo do tipo de entrada:

------
#### [ Text ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-3-0-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-3-0-v1:0"

model_input = {
    "inputType": "text",
    "text": {
        "inputText": "man walking a dog"
    }
}
```

------
#### [ Image ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-3-0-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-3-0-v1:0"

model_input = {
    "inputType": "image",
    "image": {
        "mediaSource": {
            "s3Location": {
                "uri": "s3://amzn-s3-demo-bucket/my_image.png",
                "bucketOwner": "123456789012"
            }
        }
    }
}
```

------
#### [ Text & image ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-3-0-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-3-0-v1:0"

model_input = {
    "inputType": "text_image",
    "text_image": {
        "inputText": "man walking a dog",
        "mediaSource": {
            "s3Location": {
                "uri": "s3://amzn-s3-demo-bucket/my_image.jpg",
                "bucketOwner": "123456789012"
            }
        }
    }
}
```

------
#### [ Audio ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-3-0-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-3-0-v1:0"
 
model_input = {
    "inputType": "audio",
    "audio": {
        "mediaSource": {  
            "s3Location": { 
                "uri": "s3://amzn-s3-demo-bucket/my-audio.wav", 
                "bucketOwner": "123456789012" 
            }
        },
        "startSec": 0,
        "endSec": 5,
        "segmentation": {
            "method": "fixed",
            "fixed": {
                "durationSec": 5
            }
        },
        "embeddingScope": ["clip", "asset"],
        "embeddingOption": ["audio"]
    }
}
```

------
#### [ Video ]

```
# Create the model-specific input
model_id = "twelvelabs.marengo-embed-3-0-v1:0"
# Replace the us prefix depending on your region
inference_profile_id = "us.twelvelabs.marengo-embed-3-0-v1:0"
 
model_input = {
    "inputType": "video",
    "video": {
        "mediaSource": {
            "s3Location": {
                "uri": "s3://amzn-s3-demo-bucket/my-video.mp4",
                "bucketOwner": "123456789012"
            }
        },
        "startSec": 10,
        "endSec": 20,
        "segmentation": {
            "method": "fixed",
            "fixed": {
                "durationSec": 5
            }
        },
        "embeddingOption": [
            "visual", 
            "audio"
        ],
        "embeddingScope": [
            "clip",
            "asset"
        ]
    }
}
```

------

**2. Execute a invocação do modelo usando a entrada do modelo**  
Em seguida, adicione o trecho de código que corresponde ao método de invocação do modelo de sua preferência.

------
#### [ InvokeModel ]

```
# Run model invocation with InvokeModel
import boto3
import json

# Initialize the Bedrock Runtime client
client = boto3.client('bedrock-runtime')

# Make the request
response = client.invoke_model(
    modelId=inference_profile_id,
    body=json.dumps(model_input)
)

# Print the response body
response_body = json.loads(response['body'].read().decode('utf-8'))

print(response_body)
```

------
#### [ StartAsyncInvoke ]

```
# Run model invocation asynchronously
import boto3
import json

# Initalize the Bedrock Runtime client.
client = boto3.client("bedrock-runtime")

try:
    # Start the asynchronous job
    invocation = client.start_async_invoke(
        modelId=model_id,
        modelInput=model_input,
        outputDataConfig={
            "s3OutputDataConfig": {
                "s3Uri": "s3://amzn-s3-demo-bucket"
            }
        }
    )

    # Print the response JSON
    print("Response:")
    print(json.dumps(invocation, indent=2, default=str))

except Exception as e:
    # Implement error handling here.
    message = e.response["Error"]["Message"]
    print(f"Error: {message}")
```

------