Executando verificação de segurança...
11

[VIBE CODING E MCP SERVER] RAG na Veia: Como o CONTEXT7 Aprimora IA para Programação (e a Armadilha dos Tokens)

O CONTEXT7 eh um MCP SERVER lancado recentemente que vem causando surpresas positivas na area de programacao assistida por IA (a.k.a. VIBE CODING), pela melhora na qualidade do codigo gerado.

Mas como ele faz isso ? Qual o segredo do CONTEXT7 ?

Seguem os meus 2 cents:

O QUE EH UM MCP SERVER ?

Os LLMs tem foco no processamento, compreensão e geração de linguagem humana. Estes modelos são treinados em grandes quantidades de dados de texto e aprendem a prever a próxima palavra, ou sequência de palavras, com base no contexto fornecido - ou seja, entender uma pergunta, entender do que se trata e buscar as melhores palavras para gerar uma resposta.

Falo um pouco mais sobre isso aqui:

Mas se os LLMs tem "cerebro" (eh so uma analogia !!! - nao antropomorfisme), eles nao tem bracos ou pernas.

Um MCP Server é um programa que permite aos LLMs (baseado em protocolo proposto inicialmente pela Anthropic para o Claude - mas que esta sendo adotado como padrao) interagirem com ferramentas e dados externos, como bancos de dados, APIs e arquivos.

Ele funciona como um conector, proporcionando aos LLMs acesso a recursos externos que podem ser usados para melhorar a sua capacidade de responder a perguntas e realizar tarefas.

  • Fez uma pergunta para o LLM e para conseguir gerar a resposta ele precisa consultar a internet ? O LLM nao tem acesso a internet sozinho, mas via MCP SERVER o LLM estrutura a pesquisa, envia e recebe o resultado - e usa os dados retornardos para montar a reposta para o usuario.

  • Quer que o LLM verifique algum status do teu github ou faca algo nele ? Sem problema - existe um MCP SERVER que fornece acesso a API do github e assim o LLM consegue manipular o teu repositorio.

Enfim, da ao LLMs bracos e pernas.

A PROGRAMACAO ASSISTIDA POR IA (A.K.A. VIBE CODING) E SEUS PROBLEMAS

Recentemente vimos emergir a onda do VIBE CODING, onde usamos o LLM para ajudar na codificacao e desenvolvimento de aplicativos.

Diversas IDEs (vscode, cursor, windsurf, etc) ja permitem esta integracao - e eh bem legal digitar um prompt tipo "faca um aplicativo de bla bla bla" e ver o codigo "nascendo" ali na tua frente.

Mas se o VIBE CODING permite prototipar um app muito rapido (em horas ao inves de dias) - existe um problema bem chato: a qualidade do codigo gerado.

Este eh um problema intrinseco ao LLM - ele foi treinado com milhares de linhas de codigo, mas nem todo codigo utilizado para este treinamento eh bem estruturado.

Alem disso o LLM so conhece o codigo que foi utilizado no treinamento, entao mudancas/avancos nas APIs e melhorias em templates/boilerplates/etc nao estarao presentes na construcao da aplicacao.

E agora como faz ?

AMPLIANDO/ATUALIZANDO O CONHECIMENTO DE UM LLM VIA RAG

Existe uma tecnica que permite adcionar conhecimento novo ou especifico a um LLM durante a construcao de uma resposta: o RAG !

Mas o que eh RAG ?

  • RAG: Retrieval-Augmented Generation (a chave aqui eh o R de recupecao): a ideia eh complementar o treinamento da IA com os documentos/dados que sejam pertinentes ao assunto da pergunta. Isso diminui alucinacoes, uma vez que prove o conteudo que a IA precisa para gerar as respostas. Estas entradas sao transformados em tokens/embendings e alimentam o prompt inicial, somando conhecimento atualizado para montar a resposta.

A IDEIA DO CONTEXT7

Existe um site com banco de dados com a documentacao de varias linguagens, com trechos de codigo atualizados:

O acesso a estes dados eh feito atraves de uma API disponibilizada gratuitamente.

Eh uma iniciativa mantida por uma empresa (Upstash) - o modelo de negocios (= como ganhar dinheiro) deles eh fornecer estrutura para armazenamento de dados (redis, vector, etc).

Nao sei se a conta fecha (o acesso do context7 deve subir exponencialmente nas proximas semanas, e portanto o custo de manter a infra do projeto ainda que seja basicamente uma API de acesso a cache) - mas aproveitemos enquanto eh de gratis.

Provavelmente devem surgir opcoes de "self hosted" para os dados do CONTEXT7 em breve (basicamente montar um docker com postgres e colocar estes dados).

CONTEXT7 - O MCP SERVER QUE FAZ RAG

Agora vem a magica costurando tudo:

  • O LLM sabe analisar uma pergunta e montar uma resposta

  • Mas nao tem conhecimento especifico atualizado

  • Existe uma tecnica chamada RAG que permite melhorar o conhecimento do LLM sobre um assunto inserindo informacoes (contexto) no prompt.

  • Existe um site com base de dados de linguagens com acesso via API que fornece exemplos de codigo atualizado

  • Existe um padrao (MCP SERVER) que permite ao LLM acessar uma informacao externa

Entao...

Criaram um MCP SERVER - um programa com instrucoes que permite ao LLM acessar a base de dados CONTEXT7 via API e assim recuperar os trechos de codigo mais novos e necessarios a tarefa (RAG) que foi solicitada na IDE.

E presto ! - temos melhoria no codigo gerado pelo LLM.

Ainda eh uma tecnica nova e esta sendo aperfeicoada - mas ja tem resultados signficativos.

Tudo lindo e maravilhoso - qual a pegadinha ?

A ARMADILHA QUE NINGUEM CONTA: TOKENS, TOKENS, TOKENS

O LLM para processar uma interacao (pergunta/tarefa) precisa dois fluxos: entrada e saida.

Os LLMs cobram conforme a quantidade de informacao que voce envia (cobrando por 'input tokens') e recebe (cobrando por 'output tokens').

Ao fazer o RAG a quantidade de tokens de entrada aumenta, entao eh natural que o custo financeiro tambem suba.

Quanto ? Ainda nao existem grandes numeros o bastante para gerar uma estimativa.

CONCLUSAO

A programacao assistida por IA eh uma grande tendencia - de fato ajuda no dia-a-dia.

Infelizmente o nome "VIBE CODING" pegou e uma certa aura negativa junto.

Assim como livrarias, bibliotecas, livros e foruns nos ajudaram no passado a aprender a codar - a IA esta ai para compor este rol de locais onde buscamos informacao.

Use a IA - ela esta disponivel 24/7, eh incansavel e procura responder aos questionamentos da melhor forma possivel.

Mas lembre-se que ela nao eh infalivel - muito pelo contrario.

Vou contar um segredo: voce eh inteligente - muito mais que estes LLMs (eles so sao mais habilidosos em armazenar e recuperar informacoes).

Eles nao tem senso critico (LLM nao pensa !!!).

Voce eh a peca chave para o LLM fazer diferenca no desenvolvimento de aplicacoes - faca valer.

Carregando publicação patrocinada...
2
2

Meus 2 cents:

Nao - o acesso a API do context7 eh gratuito por enquanto.

O uso deste MCP SERVER em si nao tem custo algum - exceto o aumento da quantidade de tokens consumidos no input.

1

Meus 2 cents:

Nao - o acesso a API do context7 eh gratuito por enquanto.

O uso deste MCP SERVER em si nao tem custo algum - exceto o aumento da quantidade de tokens consumidos no input.