Voltar as noticias
Memória Episódica no LangGraph
MCP ProtocolAltaEN

Memória Episódica no LangGraph

Dev.to - MCP·13 de agosto de 2026

Recentemente, encontrei um problema frustrante com um bot de suporte que eu havia construído usando o LangGraph. O bot foi projetado para ajudar os usuários a solucionar problemas comuns com seus dispositivos de casa inteligente. No entanto, percebi que ele frequentemente esquecia o contexto da conversa, pedindo ao usuário para repetir informações que já haviam sido fornecidas. Isso não era apenas irritante - também era um grande obstáculo para fornecer um suporte eficaz. A incapacidade do bot de reter conhecimento dependente do contexto em múltiplas interações fazia parecer que ele estava começando do zero toda vez que o usuário fazia uma pergunta de acompanhamento.

Depois de investigar o código, percebi que o problema estava na forma como eu estava lidando com a memória episódica do bot. Memória episódica refere-se à capacidade de um agente de recordar eventos ou experiências específicas do passado. No caso do meu bot de suporte, isso significava lembrar os detalhes das interações anteriores do usuário, como o dispositivo que eles estavam tentando solucionar e os passos que já haviam sido tomados. Eu estava usando um armazenamento simples em memória para acompanhar essas informações, que eram perdidas sempre que a conversa terminava ou o bot era reiniciado.

Para corrigir esse problema, decidi usar o recurso primitivo do Protocolo de Contexto de Modelo (MCP) para persistir e recuperar a memória episódica do bot. O recurso primitivo permite que você defina um contexto compartilhado que pode ser acessado e atualizado por múltiplos componentes dentro de um agente. Isso o tornava ideal para armazenar a memória episódica do bot, pois me permitiria persistir a memória em várias conversas e interações com o usuário.

Aqui está um exemplo de como implementei a memória episódica do bot usando o recurso primitivo:

import langgraph as lg
from mcp import Resource

# Defina um recurso para armazenar a memória episódica do bot
memory_resource = Resource("episodic_memory")

# Defina uma função para atualizar a memória episódica
def update_memory(user_id, conversation_history):
    memory_resource.update(user_id, conversation_history)

# Defina uma função para recuperar a memória episódica
def get_memory(user_id):
    return memory_resource.get(user_id)

# Crie um agente LangGraph que usa a memória episódica
class SupportBot(lg.Agent):
    def __init__(self):
        super().__init__()
        self.memory_resource = memory_resource

    def respond(self, user_id, input_text):
        # Recupere o histórico de conversas do usuário da memória episódica
        conversation_history = get_memory(user_id)

        # Atualize o histórico de conversas com a nova entrada
        if conversation_history is None:
            conversation_history = []
        conversation_history.append(input_text)
        update_memory(user_id, conversation_history)

        # Use o histórico de conversas para informar a resposta do bot
        if "troubleshoot" in input_text:
            # Recupere o tipo de dispositivo do histórico de conversas
            device_type = None
            for message in conversation_history:
                if "device type" in message:
                    device_type = message.split(" ")[-1]
                    break

            # Forneça etapas de solução de problemas com base no tipo de dispositivo
            if device_type == "thermostat":
                return "Tente reiniciar o termostato e verificar as configurações de temperatura."
            elif device_type == "light bulb":
                return "Tente substituir a lâmpada e verificar a fonte de energia."

        # Se o bot não entender a entrada, peça esclarecimentos
        return "Eu não entendi isso. Você pode reformular, por favor?"

# Crie uma instância do bot de suporte e teste-o
bot = SupportBot()
print(bot
Contexto Triplo Up

A implementação de memória episódica em bots de suporte pode melhorar significativamente a experiência do usuário, permitindo interações mais fluidas e contextuais. Isso é essencial para empresas que buscam oferecer suporte automatizado eficiente e personalizado. A adoção de protocolos como o MCP pode ser um diferencial competitivo no mercado.

Noticias relacionadas

Gostou do conteudo?

Receba toda semana as principais novidades sobre WebMCP.