AI Agents · Aula

Memória de curto prazo na janela de contexto

Armazene o histórico da conversa na matriz de mensagens — a forma mais simples de memória — e entenda por que ela tem limites rígidos.

Aula 1 de 413 etapas

Memória de curto prazo na janela de contexto é uma aula grátis de AI Agents no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de AI Agents, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de AI Agents inclui 4 aulas no total.

A memória é apenas uma lista

A "memória" de um LLM no estilo chat é a lista messages enviada em cada chamada. O modelo não tem estado — não sabe nada entre as solicitações.

"Memória de curto prazo" = tudo o que está nessa lista neste momento.

Por que funciona

Você adiciona cada mensagem do usuário e cada resposta do assistente. Quando faz a terceira pergunta, o modelo vê:

messages = [
  {'role': 'system', 'content': 'You are helpful.'},
  {'role': 'user',   'content': 'My name is Alice.'},
  {'role': 'assistant', 'content': 'Nice to meet you, Alice.'},
  {'role': 'user',   'content': 'What is my name?'}
]
# Model replies: 'Alice'
for m in messages:
    print(f"{m['role']}: {m['content']}")
print("Model replies: Alice")

Limites da janela de contexto

Todo modelo tem uma janela de contexto rígida — o número máximo combinado de tokens na entrada e na saída.

  • gpt-4o-mini: 128 mil tokens
  • claude-sonnet-4-5: 200 mil tokens
  • gemini-1.5-pro: 2 milhões de tokens

Se você exceder esse limite, a API retornará um erro.

O custo dos tokens é linear

Você paga por cada token, em cada rodada. Um chat de 30 rodadas, com 500 tokens por rodada, custa 15.000 tokens de entrada apenas na chamada final (LAST) — todo o histórico é reenviado.

As sessões longas ficam caras rapidamente.

O conteúdo perdido no meio

Mesmo com um contexto de 200 mil tokens, os modelos prestam menos atenção (LESS) ao conteúdo no meio de uma instrução longa. Informações importantes devem ficar no início, na mensagem do sistema, ou no fim, na mensagem mais recente do usuário.

Truncamento por janela deslizante

A forma mais simples de gerenciar a memória: mantenha a mensagem do sistema e as últimas N rodadas:

MAX_TURNS = 20  # 10 user + 10 assistant

def trim(messages):
    system = messages[0]
    rest = messages[1:]
    return [system] + rest[-MAX_TURNS:]

demo_messages = [{'role': 'system', 'content': 'sys'}] + [
    {'role': 'user' if i % 2 == 0 else 'assistant', 'content': f'msg {i}'} for i in range(30)
]
trimmed = trim(demo_messages)
print(f"Original messages: {len(demo_messages)}")
print(f"Trimmed messages: {len(trimmed)}")

Corte com base na contagem de tokens

Mais preciso: faça trim pela contagem de tokens, não pela quantidade de rodadas:

import tiktoken
enc = tiktoken.encoding_for_model('gpt-4o-mini')

def trim_by_tokens(messages, max_tokens=8000):
    out = [messages[0]]   # keep system
    tokens_left = max_tokens - len(enc.encode(messages[0]['content']))
    # walk backwards from newest
    for m in reversed(messages[1:]):
        cost = len(enc.encode(m['content'])) + 4
        if cost > tokens_left:
            break
        out.insert(1, m)
        tokens_left -= cost
    return out

Mantenha os pares juntos

Truncar no meio de um par deixa chamadas de ferramentas órfãs. Sempre reduza juntas as interações do usuário e do assistente:

# Bad: cuts after assistant call but before tool result
# Good: trim whole turns (user + all responses)
print("Bad: cuts after assistant call but before tool result")
print("Good: trim whole turns (user + all responses)")

Quando a memória de curto prazo não é suficiente

A memória de curto prazo falha quando:

  • A conversa ultrapassa 20 interações
  • O usuário retorna no dia seguinte esperando recall
  • Vários usuários compartilham o mesmo agente

É necessária uma estratégia diferente — consulte as próximas lições.

A instrução do sistema permanece fixada

A mensagem do sistema deve ser sempre o primeiro item. Nunca a reduza. Ela contém a identidade, as regras e as descrições das ferramentas.

Fixando atualizações recentes do sistema

Se você anexar "remember que o usuário prefere Celsius" como uma observação do sistema, fixe-a no início, como a instrução original do sistema:

SYSTEM_PROMPT = 'You are a helpful assistant.'
messages = [
    {'role': 'system', 'content': SYSTEM_PROMPT},
    {'role': 'system', 'content': 'USER PREFERENCE: Celsius units'},
    {'role': 'user', 'content': 'What is the weather in Paris?'},
    {'role': 'assistant', 'content': 'It is 21C and sunny.'},
]
print('Pinned system messages:')
for m in messages:
    if m['role'] == 'system':
        print(' -', m['content'])
print('Total messages:', len(messages))

Limite de contexto

O que acontece quando você excede a janela de contexto do modelo?

Recapitulação

Memória de curto prazo = a lista de mensagens. Gerencie-a com redução por janela deslizante ou baseada em tokens, fixe a mensagem do sistema e aceite que o custo aumenta com o número de interações.

Grátis para começar

Aprenda AI Agents com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
60
Aulas
239

Perguntas Frequentes

A aula “Memória de curto prazo na janela de contexto” é grátis?

Sim — o texto completo de “Memória de curto prazo na janela de contexto” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de AI Agents, atualize para CoddyKit PRO. O curso de AI Agents inclui 4 aulas no total.

O que vou aprender em “Memória de curto prazo na janela de contexto”?

Armazene o histórico da conversa na matriz de mensagens — a forma mais simples de memória — e entenda por que ela tem limites rígidos. Você pratica AI Agents com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar AI Agents?

Nenhuma experiência prévia é necessária. AI Agents no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Memória de curto prazo na janela de contexto”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de AI Agents?

Sim. Cada aula de AI Agents inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Memória de curto prazo na janela de contexto
  2. Por que contextos longos não escalam
  3. Sumarização como compressão
  4. Armazenamentos simples de memória (chave-valor)
← Voltar para AI Agents