Invocar modelos de compreensão do Amazon Nova
Os modelos de compreensão multimodal do Amazon Nova estão disponíveis para uso na inferência por meio da API Invoke (InvokeModel, InvokeModelWithResponseStream) e da API Converse (Converse e ConverseStream). Para criar aplicações de conversação, consulte Carry out a conversation with the converse API operations. Ambos os métodos de API (Invoke e Converse) seguem um padrão de solicitação muito semelhante, conforme detalhado abaixo.
As principais diferenças entre a API Invoke e a API Converse são as seguintes:
-
Parâmetros de inferência como topK não são compatíveis na Converse e precisam ser transmitidos em
additionalModelRequestFields
, enquanto na API Invoke eles podem ser transmitidos diretamente nos parâmetros de inferência. -
A opção Documentos de apoio é limitada somente à API Converse e não é compatível com a API Invoke.
-
Os formatos de análise de resposta são diferentes entre os conceitos da API Invoke e da API Converse.
-
O streaming de resposta é diferente entre
ConverseStream
eInvokeModelWithStreaming
.
Para invocar os modelos do Amazon Nova, você precisa solicitar acesso a um modelo de base do Amazon Bedrock em cada região na qual pretende usar os modelos.
Tópicos
Visão geral da API Messages do da
Os modelos de compreensão do Amazon Nova utilizam a API Messages, que permite o envio de listas estruturadas de mensagens de entrada contendo texto, imagens, vídeos e documentos. O modelo então gera a próxima mensagem na conversa. A API Messages é compatível com consultas únicas e conversas sem estado em vários turnos, permitindo a criação de chatbots e aplicações de assistente virtual. A API gerencia as trocas de conversas entre um usuário e um modelo do Amazon Nova (assistente).
Os modelos do Amazon Nova são treinados para operar em turnos alternados de conversação do usuário e do assistente. Ao criar uma mensagem, você especifica os turnos de conversação anteriores com o parâmetro messages. O modelo então gera as próximas mensagens na conversa.
Cada mensagem de entrada deve ser um objeto contendo um perfil e um conteúdo. Os usuários podem especificar uma única mensagem com o perfil de usuário ou incluir várias mensagens com os perfis de usuário e assistente. No entanto, a primeira mensagem deve sempre usar o perfil do usuário. Se a técnica de pré-preenchimento da resposta do Amazon Nova for empregada (incluindo uma mensagem final com o perfil de assistente), o modelo continuará sua resposta do conteúdo fornecido. Essa abordagem ainda resultará em uma resposta com o perfil de assistente.
A imagem abaixo representa uma única mensagem do usuário:
[{ "role": "user", "content": [{"text":"Hello, Nova"}] }]
Confira abaixo um exemplo com vários turnos de conversação:
[ {"role": "user", "content": [{"text": "Hello there."}]}, {"role": "assistant", "content": [{"text": "Hi, I'm Chatbot trained to answer your questions. How can I help you?"}]}, {"role": "user", "content": [{"text": "Can you explain LLMs in plain English?"}]} ]
Confira abaixo um exemplo com uma resposta parcialmente preenchida do Amazon Nova:
[ {"role": "user", "content": [{"text":"Please describe yourself using only JSON"}]}, {"role": "assistant", "content": [{"text":"Here is my JSON description:\n{"}]} ]
Para obter informações sobre como criar prompts para modelos do Amazon Nova, consulte Práticas recomendadas para criação de prompts de compreensão de texto.
Utilizar o prompt do sistema
Você também pode incluir um prompt do sistema na solicitação. Um prompt do sistema permite que você forneça contexto e instruções para o Amazon Nova, como especificar uma meta ou um perfil específico. Especifique um prompt do sistema no campo system
, conforme mostrado no seguinte exemplo:
[ {"text": "You are an expert SaS analyst......"} ]
Veja as seções a seguir para obter exemplos de como incluir um prompt do sistema: