Pular para o conteúdo

Aula 5 de 6 · 6 min · +100 XP

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.

▶ Pratique

Por 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

  1. 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
  2. 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.

    1. 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)
    2. Vireo: Que legal! Vamos começar pela lista de convidados e pelo lugar. (30 tok)
      resumo: Perguntou sobre convidados e lugar. (8 tok)
    3. Camila: convidados.txt: 24 nomes, telefones e quem leva o quê (520 tok)
      resumo: Lista: 24 convidados. (8 tok)
    4. 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)
    5. Camila: Desculpa, meu gato acabou de andar no teclado 😹 (20 tok)
      resumo: Gato no teclado. (5 tok)
    6. 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)
    7. Camila: Sobre o bolo: de limão com framboesa, o favorito dela! (25 tok)
      resumo: Falaram do bolo. (6 tok)
    8. Vireo: Ideias de playlist: 40 músicas dos anos 90, separadas por clima… (280 tok)
      resumo: Playlist: músicas dos anos 90. (6 tok)
    9. 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.

  3. 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