Armazenar o histórico e o contexto da conversa em uma sessão - Amazon Bedrock

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á.

Armazenar o histórico e o contexto da conversa em uma sessão

Depois de criar uma sessão, use a CreateInvocationAPI para criar um agrupamento de interações dentro da sessão. Para cada agrupamento, use as operações da PutInvocationStepAPI para armazenar pontos de verificação de estado, incluindo texto e imagens, para cada interação.

A forma como você organiza as etapas de invocação dentro das invocações depende do seu caso de uso. Por exemplo, se você tem um agente que ajude os clientes a fazer reservas de viagens, a invocação e as etapas de invocação podem ser as seguintes:

  • A invocação pode servir como agrupamento para o texto de uma conversa entre um agente e um cliente para verificar a disponibilidade de quartos em um hotel específico para diferentes noites.

  • Cada etapa de invocação pode ser cada mensagem entre o agente e o usuário e cada etapa que o agente executa para recuperar a disponibilidade.

Na sua PutInvocationStepAPI, você pode importar imagens associadas à conversa.

  • É possível incluir até vinte imagens. O tamanho, a altura e a largura de cada imagem não devem exceder 3,75 MB, 8.000 px e 8.000 px, respectivamente.

  • Você pode importar os seguintes tipos de imagem:

    • PNG

    • JPEG

    • GIF

    • WEBP

CreateInvocation exemplo

O exemplo de código a seguir mostra como adicionar uma invocação a uma sessão ativa com o AWS SDK para Python (Boto3). Para o sessionIdentifier, você pode especificar o sessionId ou o nome do recurso da Amazon (ARN) da sessão. Para obter mais informações sobre a API, consulte CreateInvocation.

def create_invocation(session_identifier): try: invocationId = client.create_invocation( sessionIdentifier=session_identifier, description="User asking about weather in Seattle", invocationId="12345abc-1234-abcd-1234-abcdef123456" )["invocationId"] print("invocation created") return invocationId except ClientError as e: print(f"Error: {e}")

PutInvocationSteps exemplo

O exemplo de código a seguir mostra como adicionar uma etapa de invocação a uma sessão ativa com o AWS SDK para Python (Boto3). O código adiciona texto e uma imagem proveniente do diretório de trabalho. Para o sessionIdentifier, você pode especificar o sessionId ou o nome do recurso da Amazon (ARN) da sessão. Para o identificador da invocação, especifique o identificador exclusivo (no formato UUID) da invocação à qual adicionar a etapa de invocação. Para obter mais informações sobre a API, consulte PutInvocationStep.

def put_invocation_step(invocation_identifier, session_identifier): with open('weather.png', 'rb') as image_file: weather_image = image_file.read() try: client.put_invocation_step( sessionIdentifier=session_identifier, invocationIdentifier=invocation_identifier, invocationStepId="12345abc-1234-abcd-1234-abcdef123456", invocationStepTime="2023-08-08T12:00:00Z", payload={ 'contentBlocks': [ { 'text': 'What\'s the weather in Seattle?', }, { 'image': { 'format': 'png', 'source': {'bytes': weather_image} } } ] } ) print("invocation step created") except ClientError as e: print(f"Error: {e}")