O que é janela de contexto e por que o chatbot esquece?
A janela de contexto é a quantidade fixa de texto, contada em tokens, que um modelo de linguagem vê de uma vez: suas mensagens, as respostas dele, arquivos colados e instruções escondidas. Quando a conversa passa disso, as partes mais antigas não cabem e o modelo não as usa. Ele não lembra de conversas antigas, a não ser que um app as traga de volta.
▶ PratiquePor que isso importa
Um modelo não tem memória entre mensagens: ele relê a conversa inteira a cada vez, e só o que cabe na janela. Por isso conversas longas perdem os detalhes do começo.
Em 6 minutos você vai conseguir
- A janela guarda suas mensagens, as respostas do modelo, arquivos colados e as instruções do app.
- Quando a conversa fica longa demais, as partes mais antigas caem fora e o modelo não consegue usá-las.
- Numa conversa longa, repita os detalhes importantes ou comece outra com um resumo curto.
O que você vai praticar
O que está na janela?
Cada vez que você manda uma mensagem, o modelo lê a janela do zero. Quais destas coisas ocupam espaço nela?
- Suas mensagens nesta conversa
- As próprias respostas do Vireo nesta conversa
- Um documento que você cola
- Instruções escondidas do app
- Todos os livros com que o Vireo foi treinado
- Uma conversa que você teve com o Vireo mês passado
Arrume a janela
Rode a conversa da Camila e veja a janela deslizar. Depois ajude o Vireo a responder. As contagens de tokens são exemplos arredondados e inventados.
O que o Vireo vê: 600 · A janela do Vireo comporta 600 tokens. Aperte Rodar a conversa e veja o que acontece quando a conversa fica maior que ela.
- Camila: Me ajuda a planejar uma festa surpresa para minha irmã Juliana! É no sábado, 12 de abril, e ela tem alergia a amendoim. (40 tok)
resumo: Festa: sáb. 12 de abril. Juliana tem alergia a amendoim. (14 tok) - Vireo: Que legal! Vamos começar pela lista de convidados e pelo lugar. (30 tok)
resumo: Perguntou sobre convidados e lugar. (8 tok) - Camila: convidados.txt: 24 nomes, telefones e quem leva o quê (520 tok)
resumo: Lista: 24 convidados. (8 tok) - Vireo: Com 24 convidados, um salão de festas ou um quintal grande funcionam bem. (60 tok)
resumo: Salão ou quintal para 24. (9 tok) - Camila: Desculpa, meu gato acabou de andar no teclado 😹 (20 tok)
resumo: Gato no teclado. (5 tok) - Vireo: Aqui vai uma comparação detalhada do salão e do quintal: preço, espaço, clima, estacionamento… (300 tok)
resumo: Camila escolheu o salão de festas. (8 tok) - Camila: Sobre o bolo: de limão com framboesa, o favorito dela! (25 tok)
resumo: Falaram do bolo. (6 tok) - Vireo: Ideias de playlist: 40 músicas dos anos 90, separadas por clima… (280 tok)
resumo: Playlist: músicas dos anos 90. (6 tok) - Camila: Agora escreva o pedido do bolo para a confeitaria: data, número de convidados, sabor e alergias. (30 tok)
✗ Vireo: Pedido: um bolo de limão com framboesa, para umas 10 pessoas. Data de retirada: não sei. Alergias: nenhuma mencionada.
A data, a alergia e o número de convidados estavam em mensagens antigas que deslizaram para fora da janela. O Vireo não foi descuidado: ele simplesmente não conseguia mais vê-las.
✓ Vireo: Pedido: bolo de limão com framboesa para 24 pessoas, retirada no sábado, 12 de abril. Totalmente sem amendoim, por favor: a aniversariante tem alergia.
Tudo cabe, e cada detalhe de que a confeitaria precisa sobreviveu. É o que os apps fazem nos bastidores de conversas longas: cortar, resumir e guardar o que importa.
- Camila: Me ajuda a planejar uma festa surpresa para minha irmã Juliana! É no sábado, 12 de abril, e ela tem alergia a amendoim. (40 tok)
Janela ou treino?
De onde o Vireo tira isto: da janela de contexto, do treino ou de nenhum dos dois?
- Seu nome, que você disse dez mensagens atrás → Janela de contexto
- Que a água ferve a 100 °C ao nível do mar → Treino
- O PDF que você enviou há um minuto → Janela de contexto
- O que você perguntou em outra conversa semana passada → Nenhum
- Como escrever um e-mail educado → Treino
- As notícias de hoje de manhã, sem busca na web → Nenhum
Lembre-se
Um modelo só vê o que cabe na janela de contexto. Conversas longas empurram os detalhes do começo para fora, então repita ou resuma o que importa.
A janela de contexto é toda a memória de curto prazo do modelo. O que não cabe, ele não vê.
Fatos principais
- O GPT-3, um dos primeiros modelos de linguagem muito grandes, lia uma janela de contexto de 2.048 tokens de uma vez. · Fonte: Brown et al., Language Models are Few-Shot Learners, OpenAI, 2020
- Os modelos Llama 3.1 da Meta aceitam uma janela de contexto de 128.000 tokens, o bastante para um livro inteiro. · Fonte: Meta, The Llama 3 Herd of Models, 2024
- Num transformer, cada token presta atenção a todos os outros, então o trabalho da atenção cresce com o quadrado do tamanho do texto. Esse é um dos motivos de as janelas serem limitadas. · Fonte: Vaswani et al., Attention Is All You Need, Google, 2017
- Pesquisadores descobriram que os modelos usam melhor a informação do começo e do fim de um contexto longo do que a que fica enterrada no meio. · Fonte: Liu et al., Lost in the Middle: How Language Models Use Long Contexts, 2023
Atualizado:
Perguntas frequentes
O que é janela de contexto na IA?
É a quantidade máxima de texto, medida em tokens, que um modelo de linguagem consegue receber de uma vez. Inclui suas mensagens, as respostas do modelo, arquivos enviados e as instruções escondidas do app.
Por que o chatbot esquece o que eu disse antes?
Se a conversa fica maior que a janela de contexto, as mensagens mais antigas não cabem mais e o modelo não as vê. Repetir os detalhes importantes ou começar uma conversa nova com um resumo ajuda.
Chatbots de IA lembram de conversas anteriores?
O modelo em si, não: cada conversa começa com a janela vazia. Alguns apps têm um recurso de memória que salva anotações e as coloca de volta na janela em conversas futuras.
Uma janela de contexto maior é sempre melhor?
Ela permite ler documentos e conversas mais longos, mas custa mais poder de computação, e os modelos ainda podem deixar passar detalhes enterrados no meio de textos muito longos.
Termos relacionados
