Aprendizagem pessoal com IA
e orientação prática
Espelho de desenho CyberKnife

Cline lança o 'Memory Bank': diga adeus à amnésia do assistente de IA e nunca perca o contexto do projeto

Você já teve a experiência de trabalhar lado a lado com um assistente talentoso, que sempre consegue entender rapidamente suas necessidades e lhe dar respostas sutis, mas que, após um breve intervalo, parece ter amnésia e você precisa explicar novamente o histórico do projeto, a arquitetura técnica e até mesmo os requisitos mais básicos desde o início? Para os engenheiros que dependem de assistentes de codificação de IA para o desenvolvimento de software, isso não é uma fantasia; os assistentes de IA são poderosos, mas seu "esquecimento" inerente limita a eficiência e a fluência do trabalho até certo ponto.

Assim como o detetive do filme "Memory Pieces", que perdia a memória todas as noites e tinha que tatuar informações importantes em seu corpo e confiar em Polaroids para criar um sistema de memória a fim de resolver o caso, o mundo da tecnologia tem procurado uma solução para o problema da "memória de curto prazo" dos assistentes de IA. Recentemente, um assistente de IA chamado Cline O assistente de codificação de IA da empresa introduziu de forma inovadora um recurso chamado "Memory Bank", que transforma de forma inteligente o "esquecimento" da IA em uma vantagem, proporcionando aos desenvolvedores uma experiência de desenvolvimento sem precedentes.


 

"Memory Bank": criando memórias duradouras para assistentes de IA

"O Memory não é um produto autônomo, mas sim um conjunto de comandos personalizáveis e orientados pela comunidade que podem ser adicionados às configurações do Cline. A ideia central é simples e eficiente: permitir que o assistente de IA "leia" e "compreenda" o contexto de um projeto antes de começar a trabalhar e armazene as principais informações em um "banco de memória" predefinido. em um "banco de memória" predefinido.

Especificamente, quando um desenvolvedor ativa um "banco de memória" para um projeto, o Cline primeiro verifica se existe uma pasta chamada memory-bank/ no diretório do projeto. Se não existir, ele cria automaticamente a pasta e inicializa um conjunto de documentos Markdown com base em uma estrutura predefinida. Se a pasta já existir, o Cline lerá ativamente esses documentos para reconstruir rapidamente sua compreensão do contexto do projeto, da pilha de tecnologia, do design da arquitetura e de outras informações importantes.

Para garantir que o "banco de memória" seja estruturado e de fácil manutenção, a Cline usou inteligentemente os fluxogramas do Mermaid. Esses fluxogramas não apenas visualizam as relações entre os documentos, mas também são incorporados diretamente aos comandos personalizados que orientam Cline sobre como criar e manter o sistema de documentos. Quando o assistente de IA atinge o limite superior de sua janela de contexto ou abre uma nova sessão, ele pode, como o protagonista de MEMORY PIECES, recuperar rapidamente um entendimento completo do projeto consultando os documentos em seu "banco de memória", conectando-se perfeitamente ao progresso do trabalho.

 

Entendendo a "memória" da IA: os limites das janelas contextuais

Para entender a importância dos "bancos de memória", precisamos primeiro entender a natureza da "memória" nos assistentes de IA. Os principais assistentes de IA atuais, incluindo o Cline, dependem da chamada "janela de contexto" para processar informações. A janela de contexto pode ser interpretada como o limite superior da quantidade de histórico de diálogo e código que um assistente de IA pode "lembrar" ao se envolver em um diálogo ou geração de código. O tamanho dessa janela é limitado, geralmente na faixa de alguns milhares a algumas centenas de milhares tokens entre, dependendo do modelo.

Ao lidar com projetos de software complexos, os desenvolvedores rapidamente se deparam com as limitações das janelas de contexto. As soluções tradicionais geralmente parecem desajeitadas e ineficientes:

  • Reiniciar o diálogo: isso significa que todas as informações contextuais são perdidas e é ineficiente precisar explicar novamente o contexto e as metas do projeto para o assistente de IA.
  • Gerenciamento manual do conteúdo do Prompt: os desenvolvedores precisam filtrar cuidadosamente as informações contidas em cada Prompt para evitar exceder a janela de contexto, o que é incômodo e fácil de perder informações importantes.
  • Compressão do contexto usando técnicas de resumo: embora seja possível comprimir informações, o processo de resumo pode perder detalhes e afetar a capacidade do assistente de IA de entender o projeto em um nível mais profundo.

Por outro lado, o "banco de memória" oferece uma solução mais elegante e completa, que resolve fundamentalmente o problema de "esquecimento" dos assistentes de IA sem a necessidade de os desenvolvedores fazerem um gerenciamento manual tedioso.

 

Arquitetura do "banco de memória": sistemas de conhecimento estruturado

A essência do "MEMORY" é seu gerenciamento estruturado de informações. Ele cria um sistema de conhecimento de projeto claro por meio de arquivos Markdown predefinidos e fluxogramas Mermaid, ajudando os assistentes de IA a organizar e recuperar informações de forma eficiente.

O diagrama a seguir mostra a estrutura do documento principal do banco de memória:

fluxograma TD
PB [projectbrief.md] --> PC [productContext.md]
PB --> SP[systemPatterns.md]
PB --> TC[techContext.md]
PC --> AC[activeContext.md]
SP --> AC
TC --> AC
AC --> P[progress.md]

Apresentação visual do código do gráfico da sereia acima 👇

Cline lança o "Memory Bank": diga adeus à amnésia do assistente de IA e nunca mais perca o Project Context-1

O projectbrief.md é a base e a fonte de informações de todos os outros documentos do diagrama

Essa estrutura não é projetada aleatoriamente; cada documento assume uma função específica e, juntos, eles constroem o gráfico de conhecimento completo do projeto:

  • projectbrief.md (Resumo do projeto): O documento principal do resumo do projeto que define os objetivos, o escopo e as principais restrições do projeto e é a base de todos os outros documentos.
  • productContext.md (contexto do produto): descreve o produto do ponto de vista comercial e do usuário, incluindo usuários-alvo, posicionamento no mercado, funcionalidade principal e assim por diante.
  • systemPatterns.md (Padrões do sistema): registra a arquitetura técnica, os padrões de design, as principais decisões técnicas etc. do projeto para ajudar os assistentes de IA a entender a estrutura técnica geral do projeto.
  • techContext.md (contexto técnico): descreve o ambiente de desenvolvimento, a pilha de tecnologia, as versões de bibliotecas dependentes, etc., para garantir que o assistente de IA compreenda os detalhes específicos da implementação técnica do projeto.
  • activeContext.md (contexto dinâmico): registra o status atual do desenvolvimento, as tarefas em andamento, os problemas pendentes etc., refletindo o progresso em tempo real do projeto.
  • progress.md (Progresso do projeto): rastreia o progresso do projeto, a conclusão de tarefas, os nós de marcos etc., ajudando o assistente de IA a entender a linha do tempo geral do projeto.

 

O ciclo de vida do "banco de memória": aprendizado e atualização contínuos

"A memória não é uma configuração única, mas sim um processo de aprendizado contínuo e iterativo. Ela segue um ciclo de leitura, verificação, execução e atualização, garantindo que o assistente de IA possa sempre trabalhar com as informações mais recentes do projeto.

O diagrama abaixo ilustra o ciclo de vida completo de um "banco de memória":

Cline lança o "Memory Bank": diga adeus à amnésia do assistente de IA e nunca mais perca o Project Context-2

O código acima renderiza esse gráfico do Mermaid.

Fase de configuração inicial:

  • O Cline cria automaticamente o diretório memory-bank/ quando o projeto ativa pela primeira vez os "bancos de memória".
  • Inicialize todos os documentos Markdown necessários.
  • Oriente o usuário a preencher as informações básicas sobre o projeto.
  • Criar um sistema de documentação básica para o projeto.

Desenvolvimento em andamento:

  • Leitura: Antes de iniciar qualquer trabalho, Cline lerá primeiro todos os documentos no "banco de memória".
  • Validação: valida a integridade e a precisão das informações contextuais para garantir um entendimento completo do projeto.
  • Execução: com base no contexto e no esquema estabelecidos, executa as instruções do usuário para geração de código, resposta a perguntas, etc.
  • Rastreamento: rastreamento contínuo das alterações e decisões tomadas durante o processo de desenvolvimento.
  • Monitor: monitora o uso da janela de contexto e atualiza o "banco de memória" para manter o contexto válido.

Após grandes mudanças:

  • Atualização: quando ocorrerem mudanças importantes no projeto (por exemplo, ajustes arquitetônicos, mudanças nos requisitos, etc.), atualize os documentos relevantes no "banco de memória" em tempo hábil.
  • Consistência: assegure-se de que as informações sejam consistentes em todos os documentos para evitar informações conflitantes.
  • Prepare: prepare-se para possíveis redefinições de contexto para garantir um rápido retorno ao estado de trabalho, mesmo que a sessão seja interrompida.

 

Prompt visual: Orientando a IA com fluxogramas

Cline lança o "Memory Bank": diga adeus à amnésia do assistente de IA e nunca mais perca o Project Context-3

A maneira tradicional de escrever Prompts para sistemas geralmente usa formatos de texto como Markdown, JSON ou XML. No entanto, a comunidade Cline demonstrou que os fluxogramas do Mermaid também são adequados para a redação de Prompts, especialmente quando se trata de orientar assistentes de IA em fluxos de trabalho complexos.

Em comparação com longas descrições de texto, os fluxogramas, com sua natureza intuitiva e estruturada, podem expressar a lógica do processo de forma mais clara e precisa. Para os assistentes de IA, essas informações estruturadas podem ser mais fáceis de entender e executar do que a linguagem natural.

Por exemplo, o seguinte fluxograma da Mermaid é usado para orientar o fluxo de trabalho de Cline nas instruções de personalização da "Memória":

fluxograma TD
Início --> ReadFiles
ReadFiles --> CheckFiles{Integridade do arquivo?}
CheckFiles --> |No| Plan [Criar plano]
Plan --> Document[Registrar no diálogo]
CheckFiles -->|Yes| Verify[Verificar contexto]
Verify --> Strategy [Desenvolver estratégia]
Estratégia --> Apresentar

Cada nó, linha de conexão e ponto de decisão no fluxograma define claramente as etapas e a lógica do processo, eliminando as ambiguidades que podem existir nas descrições em linguagem natural. É como dar ao assistente de IA um mapa preciso em vez de direções ambíguas.

 

resumos

A função de "banco de memória" do Cline é, sem dúvida, uma tentativa inovadora de resolver a "amnésia" dos assistentes de codificação de IA. Ela usa de forma inteligente documentos estruturados e fluxogramas visuais para criar um sistema de memória de contexto de projeto persistente e de fácil manutenção para assistentes de IA, o que melhora significativamente a eficiência e a fluência do desenvolvimento. Mais importante ainda, a prática bem-sucedida do "Memory Bank" também nos fornece uma revelação importante: para nos comunicarmos com a IA, não devemos nos limitar à linguagem natural, e a expressão de informações estruturadas, como fluxogramas, pode ser uma "linguagem de IA" mais eficiente e precisa. Linguagem de IA". Com o desenvolvimento contínuo da tecnologia de IA, temos motivos para esperar o surgimento de mais inovações semelhantes e trabalhar juntos para criar ferramentas de desenvolvimento mais inteligentes e humanas.

CDN1
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Cline lança o 'Memory Bank': diga adeus à amnésia do assistente de IA e nunca perca o contexto do projeto

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil