Blog

Amazon Bedrock é uma base AI generativa confiável.

O Amazon Bedrock facilita o desenvolvimento de aplicativos de inteligência artificial generativa com engenharia rápida e RAG, oferecendo uma ampla seleção de modelos de texto, chat e base de imagem.

shutterstock 2024657870 glacially sculpted granite bedrock green valley and mountains in distance
Imagem: astrovariable/Flickr

O Amazon Bedrock é um serviço da Amazon Web Services que possibilita a criação, implementação e escalabilidade de aplicações de inteligência artificial generativa. Ele fornece modelos de base prontos para uso, suporta a geração aprimorada de recuperação e incorporações vetoriais, além de hospedar bases de conhecimento. Também permite ajustar modelos de base e continuar o pré-treinamento de modelos selecionados.

A Amazon Bedrock amplia a gama de cerca de 30 serviços de aprendizado de máquina da Amazon, que incluem o Amazon Q e o assistente de IA generativa AWS.

Atualmente, o Amazon Bedrock apresenta seis características principais.

  • Experimente diferentes modelos ao testar vários prompts e configurações com diferentes tipos de base, utilizando a API ou a interface gráfica no console.
  • Integrar informações provenientes de fontes externas: Aprimorar a geração de respostas ao incluir dados de fontes externas nas bases de conhecimento, que podem ser consultadas para enriquecer as respostas dos modelos principais.
  • Elaborar programas de assistência ao cliente: Desenvolva aplicativos que empreguem modelos de base, integrações de API e bancos de dados de conhecimento para tomar decisões e realizar atividades em benefício dos clientes.
  • Recriar modelos: Ajustar um modelo de base para necessidades ou áreas específicas, utilizando informações de treinamento para personalização ou preparação prévia adicional.
  • Melhore o desempenho da aplicação: Aumente a eficiência de aplicações que utilizam modelos de base ao adquirir rendimento adicional.
  • Selecione o modelo mais apropriado: Avalie as saídas de diferentes modelos com conjuntos de dados padrão ou personalizados para determinar qual deles atende melhor às necessidades da sua aplicação.

Um concorrente significativo do Amazon Bedrock é o Azure AI Studio, que, embora ainda esteja em fase de pré-visualização e em desenvolvimento, atende à maioria dos requisitos para um construtor de aplicativos de inteligência artificial generativa. O Azure AI Studio é uma opção interessante para selecionar modelos de inteligência artificial generativa, utilizando recursos como RAG com incorporações vetoriais, pesquisa vetorial e dados, e refinamento dos modelos para criar os chamados co-pilotos, ou agentes de inteligência artificial, conforme descrito pela Microsoft.

Outra forte concorrência é o Generative AI Studio do Google Vertex AI, que possibilita a personalização de modelos base com seus próprios dados, através de recursos como ajuste de adaptador e aprendizado de reforço de feedback humano (RLHF), além de estilo e ajuste de assunto para criação de imagens. O Generative AI Studio atua em conjunto com os modelos base do Vertex AI, funcionando como APIs.

Outras potenciais empresas concorrentes são LangChain (e LangSmith), Poe e o ChatGPT GPT Builder. Para utilizar LangChain, é necessário ter conhecimento em programação.

Modelo de Amazon Bedrock – Configuração

Há duas etapas de configuração necessárias para o Bedrock: a configuração do modelo e a configuração da API. É preciso obter permissão para acessar os modelos antes de utilizá-los. Além disso, se desejar utilizar a interface de linha de comando AWS ou qualquer um dos SDKs AWS, será necessário instalar e configurar o CLI ou SDK correspondente.

Não me preocupei com a configuração da API, já que estou focado em utilizar o console para os objetivos desta avaliação. Preencher o formulário de solicitação de acesso ao modelo foi mais simples do que eu imaginava, e obtive acesso aos modelos mais rapidamente do que previa.

amazon bedrock 02
Imagem: xsix/PixaBay

Você precisa obter autorização antes de usar um modelo no Amazon Bedrock. Normalmente, os fornecedores concedem acesso rapidamente. No entanto, em alguns casos, como o do antrópico, pode ser necessário preencher um breve questionário sobre o uso pretendido. A captura de tela foi feita antes da autorização para acessar os pedidos de Claude.

Interpretação dos dados do modelo Amazon Bedrock.

A Amazon Bedrock utiliza critérios levemente distintos para regular a performance de modelos em comparação com a OpenAI. Bedrock gerencia a variação e diversidade por meio da temperatura da distribuição de probabilidade, o topo K e o topo P. Além disso, controla o tamanho da saída com o comprimento da resposta, penalidades e paradas de sequência.

A temperatura influencia a chance do próximo token. Uma temperatura baixa resulta em respostas mais previsíveis, enquanto uma temperatura alta leva a respostas mais aleatórias. Em resumo, ao optar por uma temperatura baixa, aumenta-se a probabilidade de tokens com maior probabilidade e diminui-se a de tokens com menor probabilidade; já ao escolher uma temperatura alta, aumenta-se a probabilidade de tokens menos prováveis e diminui-se a de tokens mais prováveis. Por exemplo, uma temperatura elevada permitiria que a frase “Eu ouço as batidas de casco de” incluísse animais como unicórnios, enquanto uma temperatura baixa tenderia a gerar saídas com ungulados mais prováveis, como cavalos.

O Top K refere-se à quantidade de candidatos semelhantes que o modelo leva em consideração para o próximo token. Quando o valor é baixo, as opções são limitadas a saídas mais prováveis, como cavalos. Por outro lado, valores mais altos possibilitam que o modelo opte por saídas menos prováveis, como unicórnios.

Topo P se refere à porcentagem dos candidatos mais semelhantes considerados pelo modelo para a próxima previsão de token. Assim como no topo K, valores menores restringem as opções para previsões mais prováveis, enquanto valores maiores permitem que o modelo escolha entre menos previsões prováveis.

O tamanho da resposta influencia a quantidade de palavras na resposta produzida. Penalidades podem ser impostas ao tamanho, repetição de palavras, frequência e tipo de palavras em uma resposta. Sequências de parada são conjuntos de caracteres que impedem o modelo de continuar gerando palavras.

RELACIONADO:  Como Criar uma Página de Produto no Magento

Amazon Bedrock pede exemplos e áreas de lazer.

O Amazon Bedrock disponibiliza atualmente 33 casos de utilização do modelo de Inteligência Artificial generativa e oferece três ambientes de teste. Esses ambientes permitem que você experimente a inferência em execução em vários modelos e configurações. Você pode optar por iniciar em um dos ambientes (chat, texto ou imagem), escolher um modelo, criar um prompt e ajustar os metaparâmetros. Alternativamente, você pode começar com um exemplo e carregá-lo no ambiente correspondente com o modelo e metaparâmetros já selecionados, além do prompt já preenchido. É importante ressaltar que é necessário ter acesso a um modelo antes de utilizá-lo em um dos ambientes de teste.

Exemplos do Amazon Bedrock ilustram solicitações e configurações para diversos modelos e funções suportadas. As funções abrangem sumarização, resposta a questões, resolução de problemas, criação de código, geração de texto e produção de imagens. Cada exemplo exibe um modelo, prompt, configurações e resposta, e inclui um botão para acessar o exemplo em um ambiente de testes. Os resultados obtidos no ambiente de testes podem variar em relação ao que é mostrado no exemplo, especialmente se as configurações permitirem tokens de baixa probabilidade.

Nosso exemplo inicial demonstra a resolução de problemas matemáticos de palavras através da utilização de um prompt de compra e o modelo Llama 2 Chat 70B v1. Este exemplo apresenta diversos pontos de interesse. Inicialmente, ele utiliza um modelo de chat de código aberto relativamente pequeno. Além disso, a sequência de pensamento é desencadeada por uma simples adição ao prompt, “Vamos pensar passo a passo”. É importante notar que a remoção dessa linha frequentemente leva o modelo a gerar uma resposta incorreta. Há também um exemplo relacionado que emprega um modelo de parâmetro 7B (bilhão) em vez do modelo 70B utilizado aqui, e que também é eficaz.

amazon bedrock 03
Imagem: Peggychoucair/DepositPhotos

O exemplo de solução de problemas em sequência envolve a utilização do modelo de chat Llama 2 e aborda uma questão comum envolvendo problemas matemáticos de segundo ou terceiro grau. O início do prompt inclui o bloco [INST]Você é um…[/INST], que parece ser exclusivo do Llama. Outros modelos podem responder a diferentes formatos para estabelecer instruções ou prompts do sistema.

amazon bedrock 04
Imagem: stephmcblack/Burst

Paráfrase do texto: O exemplo de solução de problemas de raciocínio sequencial em ação no parque de jogos Amazon Bedrock Chat. Esse conjunto específico de instruções e configurações normalmente produz respostas corretas, embora não necessariamente no mesmo formato sempre. Se a parte do prompt “Vamos pensar passo a passo” for removida, as respostas tendem a ser incorretas. A configuração de temperatura de 0.5 introduz uma certa aleatoriedade na distribuição de probabilidade, e um valor P maior que 0.9 possibilita ao modelo considerar resultados menos prováveis.

No nosso segundo caso de exemplo, é apresentado o processo de identificação de elementos contratuais por meio do modelo de geração de texto do Comando Cohere. Os modelos de linguagem grande, como os LLMs de texto, frequentemente oferecem diversas capacidades para processamento de texto.

amazon bedrock 05
Imagem: xsix/PixaBay

Amazon Bedrock firmou um contrato com uma entidade de extração como exemplo utilizando o modelo de geração de texto do Comando Cohere. É importante observar que a instrução inicial do contrato precede o seu conteúdo.

amazon bedrock 06
Imagem: GernotBra/FreePik

Exemplo de identificação de informações importantes em um contrato em andamento no Amazon Bedrock text park. Foi observada uma possibilidade de interação adicional no parque infantil, que não foi mencionada no exemplo. Enquanto a temperatura desta execução foi de 0.9, o modelo de comando da Cohere aceita valores de temperatura até 5. O valor superior de p é estabelecido em 1 (mostrado como 0.99) e o parâmetro k superior não foi especificado. Esses aspectos possibilitam uma alta aleatoriedade no texto produzido.

Nosso último exemplo ilustra a técnica de pintura de imagem, que é uma aplicação da geração de imagem que utiliza uma imagem de referência e uma máscara para criar uma nova imagem. Até o momento, realizei o processo de preenchimento de imagem por inteligência artificial no Adobe Photoshop, que possui essa capacidade há algum tempo.

amazon bedrock 07
Imagem: karvanth/ShutterStock

O Amazon Bedrock utiliza o modelo Titan Image Generator G1 para criar pinturas de imagens. Observe a imagem de referência e a máscara na configuração da imagem.

amazon bedrock 08
Imagem: karvanth/Flickr

Para escolher adequadamente as flores a serem pintadas, foi necessário deslocar a máscara de seleção da mochila para a região onde estão as flores brancas na imagem de referência. Caso contrário, flores laranja seriam criadas na frente da mochila.

amazon bedrock 09
Imagem: GernotBra/KaboomPics

Pintura bem-sucedida no Amazon Bedrock foi realizada com êxito. Uma opção alternativa seria utilizar o prompt de máscara para aprimorar a seleção de máscaras em áreas não adjacentes, como as flores e os livros, por exemplo. Os links Info estão disponíveis para informações detalhadas sobre cada hiperparâmetro.

Orquestra Amazônia Rocha Matriz.

No momento, a plataforma Amazon Bedrock oferece a possibilidade de importar dados de fontes de conhecimento para configurar o RAG e desenvolver agentes capazes de realizar ações. Essas são duas das estratégias fundamentais para desenvolver aplicações de IA generativa, que se encontram entre opções de engenharia rápidas e simples, e processos mais caros e demorados de pré-treinamento ou ajuste fino.

RELACIONADO:  O instante de desencanto da inteligência artificial.

O processo de usar bases de conhecimento envolve várias etapas. Inicie importando suas fontes de dados em um repositório Amazon S3. Ao fazer isso, defina o tamanho dos pedaços de dados desejado. O valor padrão é de cerca de 300 tokens por pedaço, porém você pode personalizar esse tamanho. Em seguida, configure a sua loja vetorial e modelo de incorporação no banco de dados de sua escolha, ou permita que a AWS utilize o Amazon OpenSearch Serverless. Posteriormente, crie a sua base de conhecimento no console Bedrock, ingira as suas fontes de dados e realize testes. Por fim, conecte a sua base de conhecimento a um modelo de RAG, ou dê o próximo passo e conecte-a a um agente. Um vídeo de uma hora sobre o assunto, ministrado por Mani Khanuja durante a AWS re:Invent 2023, está disponível.

Os agentes coordenam a comunicação entre diferentes elementos, como modelos de fundação, fontes de dados, softwares e instruções, além de acionar APIs para realizar ações. Além disso, os agentes podem obedecer a comandos, utilizar um esquema do OpenAPI para especificar as APIs disponíveis e/ou executar uma função Lambda.

amazon bedrock 10
Imagem: Peggychoucair/KaboomPics

O processo de criação e teste da base de conhecimento Amazon Bedrock começa nesta tela, havendo ainda alguns passos a serem seguidos.

Avaliação e implementação do modelo Amazon Bedrock serão realizadas.

O painel de Avaliação e Implementação no Amazon Bedrock inclui recursos para avaliar modelos e prever a produtividade.

A análise do modelo permite a avaliação automatizada de um único modelo, a avaliação manual de até dois modelos com sua própria equipe e a avaliação manual de múltiplos modelos com uma equipe gerenciada pela AWS. A avaliação automatizada utiliza métricas sugeridas, que variam de acordo com a tarefa a ser avaliada, e pode empregar seus próprios dados de prompt ou conjuntos de dados de prompt integrados.

A entrada disponível oferece a possibilidade de adquirir capacidade exclusiva para implementar seus modelos, com o custo variando de acordo com o modelo utilizado e o nível de comprometimento selecionado.

amazon bedrock 11
Imagem: Chakkree_Chantakad/StockVault

Seleção automática de modelos de avaliação no Amazon Bedrock inclui a capacidade de configurar avaliações de modelos feitas por humanos. Os conjuntos de dados e métricas empregados são adaptados de acordo com a natureza da tarefa de avaliação.

amazon bedrock 12
Imagem: JonPauling/Burst

O Amazon Bedrock não é econômico e não está disponível para todos os modelos. Aqui está uma estimativa do custo mensal para fornecer cinco unidades do modelo Llama 2 Chat 13B por um mês, que é de $77.3 mil. Se você optar por seis meses, o custo mensal seria de $47.7 mil. Uma vez adquirido, não é possível alterar as unidades ou a duração do modelo provisionado.

Formas de personalizar o modelo.

É válido debater estratégias de adaptação de modelos de forma mais detalhada neste momento. A seguir, abordaremos de maneira específica as técnicas de personalização utilizadas no Amazon Bedrock.

A engenharia de prompts é uma forma simples de personalizar um modelo de inteligência artificial generativa. Geralmente, esses modelos respondem a dois tipos de prompts: um do usuário e outro do sistema, gerando uma saída com base neles. O prompt do usuário é alterado com frequência, enquanto o prompt do sistema define as características gerais desejadas para o modelo. Essa técnica é muitas vezes suficiente para direcionar a resposta do modelo em tarefas específicas, como escrever textos em estilos determinados ou responder a perguntas. Por exemplo, você pode criar um prompt para o “Dia de Falar como um Pirata”. Avante, companheiro!

A geração aprimorada do RAG facilita a conexão dos modelos de linguagem com fontes específicas, que geralmente não foram consideradas durante o treinamento original dos modelos. Os três passos do RAG envolvem a recuperação de uma fonte específica, a expansão do prompt com o contexto obtido da fonte e, por fim, a geração de texto usando o modelo e o prompt expandido.

Os procedimentos RAG frequentemente utilizam a técnica de incorporação para reduzir o tamanho e aprimorar a relevância do contexto recuperado. Basicamente, uma função de incorporação transforma uma palavra ou frase em um vetor de números de ponto flutuante, que são armazenados em um banco de dados com suporte a um índice de pesquisa vetorial. Na etapa de recuperação, é feita uma busca de similaridade semântica, geralmente calculando o cosseno do ângulo entre a incorporação da consulta e os vetores armazenados, a fim de encontrar informações “próximas” a serem usadas na expansão da consulta. Os mecanismos de busca geralmente empregam essa técnica para encontrar suas respostas.

Agentes de recuperação de conversação são uma extensão de LLMs conversacionais, utilizando uma variedade de recursos como ferramentas, código de execução, incorporações e lojas vetoriais. Em resumo, eles representam uma evolução do RAG com funcionalidades adicionais. Esses agentes são frequentemente empregados para personalizar LLMs para áreas específicas e ajustar suas saídas. Empresas como Azure Copilots, Google e Amazon se referem a esses agentes. LangChain e LangSmith simplificam o desenvolvimento de pipelines e agentes RAG.

Aprimorar modelos de linguagem complexos é um procedimento de aprendizado supervisionado que implica ajustar os parâmetros do modelo para uma tarefa específica. Esse processo envolve treinar o modelo em um conjunto de dados mais limitado e especializado, rotulado com exemplos pertinentes à tarefa em questão. Esse aprimoramento geralmente demanda horas ou até dias, utilizando várias GPUs de alto desempenho, e requer centenas ou até milhares de exemplos marcados. Apesar disso, ainda é consideravelmente mais rápido do que um extenso pré-treinamento.

RELACIONADO:  Spin 1.0 tem como objetivo tornar mais simples a utilização de Microserviços WebAssembly.

Pré-treinamento é o processo de ensino não supervisionado em grandes quantidades de dados de texto para instruir modelos de linguagem sobre conceitos básicos, gerando um modelo genérico. O pré-treinamento estendido ou contínuo envolve a inclusão de conjuntos de dados específicos de um determinado domínio ou tarefa para personalizar o modelo, como a adição de vocabulário em um idioma, termos especializados em áreas como medicina ou a capacidade de gerar código. O pré-treinamento contínuo, feito por meio de aprendizagem não supervisionada, geralmente é seguido por um refinamento adicional por meio de aprendizagem supervisionada.

Adaptando os modelos em Amazon Bedrock com refinamento e treinamento prévio contínuo.

Tanto a otimização detalhada quanto a preparação contínua prévia são procedimentos dispendiosos e demorados. Até mesmo a organização dos dados para esses processos pode representar um obstáculo. No caso da otimização detalhada, a dificuldade reside em realizar a rotulação dentro das limitações orçamentárias. Já para a preparação contínua prévia, o desafio está em encontrar um conjunto de dados adequado ao seu campo de interesse, sem introduzir preconceitos ou toxicidade.

amazon bedrock 13
Imagem:
chsyys/GettyImages

Amazon Bedrock tem a capacidade de desenvolver modelos personalizados através de um processo contínuo de pré-treinamento e/ou ajuste fino. Nesta plataforma, é possível gerenciar os modelos e os processos de treinamento. É importante ressaltar que é necessária a aquisição de uma taxa de transferência provisionada para implementar o modelo personalizado.

amazon bedrock 14
Imagem: Peggychoucair/FreeImages

Realizando um trabalho minucioso de ajuste em Amazon Bedrock. É importante mencionar que, no momento, somente alguns modelos podem passar por ajustes: quatro modelos Amazon, dois modelos Cohere e dois modelos Meta.

amazon bedrock 15
Imagem: GernotBra/iStock

Você tem a opção de controlar os seus projetos de treinamento de modelo personalizado e os modelos personalizados no Amazon Bedrock. Observe os três status possíveis para os projetos: falha, interrupção e conclusão. Somente os projetos finalizados terão um link com o nome do modelo personalizado. Todos os projetos terão links com os seus nomes.

amazon bedrock 16
Imagem: wal_172619/FreePik

Analisar um projeto de treinamento em Amazon Bedrock revela as informações sobre sua fonte, início, situação atual e diversos parâmetros e hiperparâmetros.

amazon bedrock 17
Imagem: TomasHa73/KaboomPics

Após personalizar seus modelos na plataforma Amazon Bedrock, é possível administrá-los na seção de modelos. Lá, é viável provisioná-los, visualizá-los no playground, removê-los e acessar suas informações detalhadas.

amazon bedrock 18
Imagem: Peggychoucair/Flickr

Os pormenores do modelo parecem semelhantes aos detalhes do processo de treinamento no Amazon Bedrock, embora haja algumas distinções, como a inclusão de opções de compra e administração de entrada provisionada.

amazon bedrock 19
Imagem: timmossholder/PixaBay

Embora o processo de configurar um trabalho de pré-treinamento contínuo possa parecer similar ao de ajuste fino, existem algumas diferenças significativas entre eles. O pré-treinamento contínuo é um tipo de aprendizado não supervisionado que requer uma grande quantidade de dados não rotulados e um longo período de tempo. Por outro lado, o ajuste fino é um tipo de aprendizado supervisionado que requer menos dados (porém rotulados) e menos tempo.

Criação de inteligência artificial de baixo código com PartyRock.

Para complementar o Amazon Bedrock, a AWS apresentou uma plataforma de baixo código principalmente gratuita para explorar inteligência artificial generativa e criar aplicativos de pequeno porte baseados em IA. O artigo de introdução no blog PartyRock foi escrito por Jeff Barr, que encoraja os leitores a se envolverem no assunto e disponibiliza links para materiais de aprendizagem do PartyRock ao final do texto. Mesmo que não tenha interesse em desenvolver um aplicativo por conta própria, é possível experimentar os aplicativos criados por outros usuários.

Desenvolvimento de um aplicativo de inteligência artificial generativa em Bedrock.

A Amazon Bedrock é um competidor confiável do Azure AI Studio. Se você usa AWS em vez de Microsoft Azure ou Google Cloud, Bedrock é uma boa opção para desenvolver e expandir aplicações de inteligência artificial generativa. Embora ofereça menos modelos de base que o Azure AI Studio e não tenha acesso a modelos OpenAI, Bedrock é adequado para a maioria dos aplicativos de IA generativa. No momento, Bedrock está um pouco atrás do Azure AI Studio em termos de filtros de conteúdo, mas essa situação pode mudar no futuro.

Observa-se que os custos associados à implementação de aplicativos de inteligência artificial generativa podem compensar os custos de desenvolvimento. O emprego do Amazon Bedrock para engenharia rápida e criação de aplicativos RAG costuma ser economicamente viável, sem considerar os custos humanos, e os custos de testar esses aplicativos nos playgrounds Bedrock geralmente são insignificantes. Por outro lado, o custo de ajustes finos pode ser um obstáculo para pequenas empresas, assim como o custo de treinamento contínuo pode representar um desafio para médias empresas. No entanto, ao implantar um aplicativo com um modelo personalizado em larga escala para atender a uma grande audiência com baixa latência por um longo período de tempo, os custos reais entram em jogo.

Lo siento, pero necesito que proporciones un texto específico para poder parafrasearlo. ¡Estoy aquí para ayudarte en lo que necesites!

Custo: O valor é determinado pelo modelo, a quantidade de tokens de entrada e saída, e se você adquiriu o desempenho fornecido pelo modelo. Para mais detalhes, acesse a página Fornecedores do Modelo no console Amazon Bedrock.

Plataforma: Navegador baseado, alojado na AWS. A API pode ser acessada.

Artigos relacionados

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button