Contexto
Agora que você entende como os modelos de IA funcionam, vamos explorar como melhorar a qualidade das respostas.
Você pode pensar que, para melhorar a saída do modelo, basta escrever prompts melhores. Isso certamente ajuda, mas perde o ponto principal: trabalhar com modelos de IA é, acima de tudo, gerenciar o contexto que você fornece a eles.
Pense nisso como cozinhar. Digamos que estamos fazendo uma sopa.
Você tem várias entradas no processo de preparo com todos os ingredientes. Você segue um caminho ou receita, acompanhando o progresso ao longo do processo. E, no final, tem uma sopa saborosa como resultado.
Diferentes chefs podem adicionar ou ajustar ingredientes ao seu gosto e, mesmo seguindo exatamente a mesma receita, o resultado pode ficar ligeiramente diferente no final.
Isso é parecido com trabalhar com modelos de IA! Vamos ver um exemplo semelhante para programação:
- Você pode ter várias entradas, como sua base de código e arquivos atuais, além de um prompt para dizer ao modelo de IA o que deseja alcançar
- Você segue um plano — às vezes criado por humanos ou sugerido pelo próprio modelo — que pode gerar uma lista de tarefas e marcar itens conforme conclui cada etapa
- E, no final, você obtém código gerado que pode aplicar ao seu projeto
Prompts do sistema e do usuário
Suas entradas, assim como as saídas do modelo, tornam-se parte do “contexto”. Pense no contexto como uma lista longa, onde o modelo de IA mantém uma memória de trabalho da conversa.
No início da lista há um prompt do sistema. É assim que o criador da ferramenta pode inserir instruções ou um estilo para o modelo seguir. Isso ajuda a direcionar a saída em um determinado sentido, incluindo definir regras específicas a serem seguidas.
Depois vem a mensagem ou prompt do usuário. Pode ser qualquer instrução que você queira dar ao modelo. Por exemplo, adicionar uma nova rota para gerenciar contas de usuário. Você não precisa usar ortografia ou gramática perfeitas, pois os modelos de IA são surpreendentemente bons em entender o que você quis dizer — mas não custa.
Isso não precisa ser apenas texto. Muitos produtos de IA agora permitem anexar imagens, nas quais o modelo de IA subjacente pode ler e entender o conteúdo e incluir essa representação em texto no contexto.
Quais itens fazem parte do contexto do modelo durante um chat?
Select all that applyIncluindo contexto
Ferramentas como o Cherri Code podem incluir automaticamente outras informações relevantes no contexto de entrada com base no estado da sua base de código. Por exemplo, seus arquivos abertos, a saída do terminal, erros do linter e muito mais.
Depois que você envia as entradas para o modelo, ele gera e retorna uma saída. Para perguntas simples, isso pode ser texto. Para casos de uso de código, podem ser trechos de código para aplicar ao seu projeto. Tudo o que o modelo retorna faz parte do contexto de saída.
Sua conversa pode continuar por muitos “turnos” de ida e volta entre você e o modelo de IA. Cada mensagem na conversa, incluindo entradas e saídas, é armazenada como parte da memória de trabalho no contexto.
Essa lista cresce ao longo do tempo. Isso é importante observar! Assim como em uma conversa com um humano, há um limite de contexto que você consegue manter na cabeça de uma só vez.
À medida que a conversa se estende, fica mais difícil lembrar coisas que as pessoas podem ter dito 3 horas atrás. Por isso, entender e gerenciar contexto será uma habilidade importante a desenvolver.
Limites de contexto
Cada modelo de IA tem um limite de contexto diferente, a partir do qual deixa de aceitar novas mensagens na conversa; por isso, muitas ferramentas de IA informam o usuário sobre quão perto está desse limite ou oferecem maneiras de compactar e resumir a conversa atual para permanecer abaixo dele.
Mais adiante no curso, veremos exemplos práticos de como gerenciar contexto no Cherri Code. Até agora, falamos apenas sobre como podemos fornecer ao modelo o contexto que controlamos, como texto ou imagens. E se quisermos que o próprio modelo recupere dinamicamente o contexto?
É aí que entra o uso de ferramentas.