Olá! Meu nome é Lucas, sou instrutor na Alura e dou as boas-vindas a este curso.
Audiodescrição: Lucas é uma pessoa branca, usa óculos, tem barba e cabelo preto. Está nos estúdios da Alura, que possuem uma luz roxa de fundo, e há uma estante com itens decorativos.
Este curso é destinado a quem deseja entender como construir aplicações inteligentes utilizando os modelos de IA generativa disponíveis na OCI, a nuvem da Oracle.
Nós vamos aprender a utilizar os principais serviços e recursos disponíveis na OCI Generative AI, que é o serviço de IA generativa da OCI. Começaremos utilizando o Playground para explorar os modelos disponíveis, entender como podemos variar os parâmetros para o refinamento das respostas e compreender o conceito de Prompt Engineering (Engenharia de Prompt) e como suas práticas podem nos ajudar a otimizar a interação com esses modelos de IA generativa.
Em seguida, vamos colocar a mão na massa, construindo um assistente que interagirá com o modelo de IA generativa na OCI e gerará respostas para a pessoa usuária.
Na construção deste assistente, utilizaremos uma interface gráfica do Streamlit, proporcionando uma experiência agradável de interação. Otimizaremos a memória utilizando o LangChain para armazenar o histórico de conversação, permitindo uma conversa fluida com o assistente inteligente.
Por fim, entenderemos como monitorar os recursos utilizados dentro do serviço de A-generativa da OCI, observando métricas como latência, percentual de utilização, taxas de erro, contagem de entradas e saídas. Também aprenderemos quando e como utilizar modelos de A personalizados, um recurso disponível na OCI.
Como aprenderemos tudo isso? De maneira prática. Exploraremos a OCI, os recursos disponíveis no console da A-generativa, e construiremos uma ferramenta para praticar o processo de encaminhamento de requisições para os serviços da OCI, o tratamento das respostas e o refinamento de um assistente inteligente para otimizar a experiência da pessoa usuária.
Além dos vídeos, preparamos atividades e contamos com o apoio da nossa comunidade no Discord e no fórum. Vamos iniciar nossa jornada pelo mundo da OCI Generative AI? [♪]
Estamos trabalhando em uma organização que utiliza os serviços da OCI, a Oracle Cloud Infrastructure. A OCI é o serviço da Oracle que nos permite trabalhar com computação em nuvem, acessando recursos como banco de dados, deploy de aplicações e também recursos como IA generativa. Na nossa organização, fomos encarregados de explorar esses recursos de IA generativa da Oracle para construir ferramentas e assistentes que possam ajudar as pessoas colaboradoras a serem mais produtivas, reduzindo o número de tarefas repetitivas realizadas no dia a dia.
Para começar, vamos acessar o portal da OCI. Ao digitar OCI no Google, no navegador, chegamos ao portal. Para utilizar esses serviços, é fundamental ter uma conta. Podemos fazer login, se já tivermos uma conta na Oracle Cloud, ou criar uma nova. Existe a opção de testar a OCI gratuitamente, mas é importante estar atento às condições de uso desse serviço.
Vamos fazer login clicando no canto superior direito da tela. Primeiro, inserimos o nome da conta na nuvem, que no nosso caso é "Alura Paracursos". Após clicar em "próximo", uma tela será aberta para inserirmos as credenciais, como nome de usuário e senha. Com tudo preenchido, clicamos em "acessar", localizado no centro da tela. Neste caso, será solicitada uma autenticação de dois fatores, na qual utilizamos o celular para confirmar a identidade. Após permitir o acesso, temos acesso ao console da OCI, que é a página inicial do serviço de computação em nuvem.
No console, temos acesso a todos os recursos da OCI. No menu superior, ao clicar nas barras no canto superior esquerdo, podemos acessar todos os serviços disponíveis, incluindo computação, armazenamento, rede e Oracle Database. Nosso objetivo é explorar os serviços de IA generativa disponíveis na Oracle. Podemos digitar "Generative AI" na barra de pesquisa, e um resultado aparecerá dentro do serviço. Clicamos no resultado "Generative AI", que nos leva ao console desse serviço específico.
No console, temos uma visão geral. No canto esquerdo da tela, encontramos recursos disponíveis, como a visão geral, o playground, clusters de IA dedicados, modelos personalizados e pontos finais. Precisamos conhecer e explorar cada um desses recursos. Embora tenhamos algum conhecimento de Oracle na nossa organização, estamos dando os primeiros passos nesse serviço. Vamos explorar tudo relacionado ao seu uso para construir aplicações utilizando os modelos de IA generativa disponibilizados pela OCI.
O primeiro passo para entendermos quais modelos estão disponíveis e como podemos testá-los é acessar o recurso conhecido como playground, localizado logo abaixo da visão geral no menu lateral. Ao clicar em playground, encontramos dois tipos: o playground de bate-papo e o de incorporação. O de bate-papo funciona de maneira semelhante à experiência de interagir com serviços de IA generativa, como o ChatGPT e o DeepSeek. Neste caso, o modelo selecionado é o Cohere Command na versão 1.7, mas podemos escolher outros. Por exemplo, ao selecionar o Metalhama 3.1 com 40 bilhões de parâmetros, recebemos a mensagem de que o acesso não está permitido, pois o modelo não está disponível na região que estamos acessando. Nossa região está indicada na barra superior do console como Brasil East, São Paulo. Portanto, em São Paulo, esse modelo não está disponível, mas o Cohere, que foi selecionado ao abrir o playground, está.
No campo "Type a Message", localizado na parte inferior da tela, podemos inserir um prompt como entrada para o modelo. Por exemplo, ao descrever o prompt "Descreva a cidade de São Paulo em duas frases" e clicar no botão de submeter, o modelo gera uma resposta concisa: "São Paulo é uma metrópole vibrante e diversificada, com uma história rica e uma influência cultural significativa. A cidade encanta com sua mistura de tradições antigas e modernidade, tornando-se um centro econômico e cultural de destaque no Brasil." Essa descrição é coerente com o prompt de entrada inserido.
No playground, podemos experimentar todos os modelos disponíveis na OCI, daí o termo playground. Também podemos testar usando alguns parâmetros que analisaremos melhor posteriormente. Antes disso, precisamos entender a diferença entre o recurso de playground de bate-papo e o de incorporação. Ao clicar na opção de incorporação, temos uma entrada diferente, com um campo chamado projeção do vetor de saída. Nessa interação, adicionamos sentenças e geramos vetores que representam numericamente essas sentenças de texto. Assim, conseguimos realizar análises semânticas, incluindo a análise de similaridade semântica entre as frases inseridas.
Por exemplo, ao inserir "o céu é azul" e "o mar é verde" como exemplos e executar, obtemos dois vetores de saída. Esses vetores apresentam certa similaridade, mas não coincidem exatamente, pois não expressam a mesma ideia. Se inserirmos "o céu é azul" novamente na segunda sentença e executarmos, obteremos a mesma representação vetorial. Nesse recurso de incorporação, testamos modelos de embeddings, que nos ajudam a capturar o sentido e identificar a similaridade entre sentenças, trabalhando com processamento de textos.
Agora que conhecemos mais sobre as funcionalidades do playground, é hora de explorarmos as configurações dos parâmetros vistos no bate-papo, o que faremos na sequência.
Nós estávamos testando o Playground e o recurso de incorporação dele, mas surgiram dúvidas em relação aos parâmetros que vimos no recurso de bate-papo. Vamos clicar na opção de bate-papo no menu lateral da tela e continuar usando o modelo Correio. Observamos os parâmetros que aparecem em um campo na lateral direita da tela. Vamos ampliar a tela para facilitar a visualização. Ajustamos o zoom para melhorar a visibilidade.
O primeiro parâmetro que analisamos é o máximo de tokens de saída. É importante compreender que, ao trabalhar com IA generativa, medimos o texto de saída e o input fornecido como prompt de entrada em termos de tokens. Tokens não são exatamente palavras ou um número fixo de caracteres; cada IA generativa tem um método próprio de calcular o número de tokens, que equivale a um número de caracteres de acordo com a sentença de entrada.
Para ilustrar como funcionam esses tokens, podemos acessar a ferramenta Tokenizer da OpenAI. Ao digitar no navegador plataform.openai.com.tokenizer
, acessamos a página correspondente. Vamos ampliar a visualização. Se digitarmos, por exemplo, o prompt "a cidade de São Paulo em duas frases", podemos ver quantos tokens utilizamos como entrada. No caso específico do GPT, obtemos 12 tokens usando 46 caracteres. A ferramenta mostra como fez a divisão de caracteres em tokens. Observamos que essa distribuição não segue uma regra fixa, como três caracteres por token. Às vezes, a preposição "A" e a preposição "D", junto com o espaço, ficam dentro de um único token. Sempre que trabalhamos com IA generativa, o termo token refere-se a essa divisão de caracteres em tokens utilizados como entrada.
Voltando à aba do Playground da OCI, o próximo parâmetro é a temperatura. A temperatura está relacionada à criatividade do modelo. Ao atribuir um valor mais alto de temperatura, permitimos que o modelo seja mais criativo na elaboração da resposta, usando termos que não são necessariamente técnicos em relação ao prompt de entrada. Ele pode utilizar termos mais criativos e aleatórios. Se quisermos criar uma ferramenta que ofereça suporte técnico, podemos reduzir a criatividade para que o modelo seja mais técnico, com menor temperatura.
Podemos fazer um teste: vamos diminuir a temperatura para 0.2 e usar o mesmo prompt: "Descreva a cidade de São Paulo em duas frases." Ao submeter novamente, observamos que a resposta foi mais técnica e menos criativa: "A cidade oferece uma experiência urbana dinâmica com uma arquitetura impressionante, uma cena gastronômica vibrante e uma população multicultural."
Ele foi bastante conservador ao fornecer essa resposta. Se colocássemos uma temperatura maior, veríamos que ele usaria termos mais criativos. Temos aqui dois outros parâmetros em sequência: o Top P e o Top K. Ambos são métodos de amostragem. O Top P refere-se a uma probabilidade acumulada, selecionando palavras de acordo com a probabilidade de encaixe no contexto. O Top K atua como um parâmetro na diversificação de palavras utilizadas na formação do prompt de saída. Se colocarmos um valor muito alto para o Top K, aumentaremos a diversidade das palavras, resultando em uma variação maior de termos utilizados.
Além disso, ao lado do termo Top K, temos um ícone "i" que, ao ser clicado, mostra informações e explicações da OCI sobre cada um desses parâmetros. Podemos consultá-lo em caso de dúvidas. É importante lembrar que cada modelo de IA generativa pode ter leves mudanças no sentido e na escala desses parâmetros.
Na sequência, temos a penalidade de frequência, a penalidade de presença e o CID. A penalidade de frequência está relacionada à variação do número de termos utilizados para gerar uma resposta. Penalizar a frequência de um termo significa que queremos variar a quantidade de termos e evitar repetições. A penalidade de presença funciona de forma diferente. Um valor baixo permite que o modelo repita termos sem problemas, enquanto um valor alto penaliza a presença de termos repetitivos, estimulando o uso de novos termos.
O CID é utilizado quando queremos reprodutibilidade na resposta. Sabemos que, ao submeter um prompt a um modelo de IA generativa, geramos uma resposta diferente a cada vez. Para reduzir essa aleatoriedade, usamos o CID para garantir repetibilidade ao utilizar o mesmo prompt e os mesmos parâmetros.
Para refinar esses parâmetros de acordo com a ferramenta que estamos construindo, vamos ao Playground testar os prompts de entrada e as saídas obtidas. Isso nos ajudará a entender como cada parâmetro influencia nosso contexto de uso e a fazer a melhor escolha possível para obter uma resposta agradável e relevante para as pessoas usuárias da aplicação. Seja uma ferramenta que utiliza geração de texto como suporte à construção de um e-mail ou um chatbot para fornecer informações às pessoas da organização em que trabalhamos.
Agora que conhecemos melhor os parâmetros dos modelos do Playground da OCI, é hora de explorarmos também a questão de custos e um termo importante na construção de ferramentas para IA generativa: Prompt Engineering. Vamos explorar isso no próximo passo.
O curso OCI Generative AI e Python: construa agentes inteligentes com IA generativa possui 143 minutos de vídeos, em um total de 44 atividades. Gostou? Conheça nossos outros cursos de IA para Programação em Inteligência Artificial, ou leia nossos artigos de Inteligência Artificial.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.