Latest / Entre Chaves / #264 Da engenharia de prompt para engenharia de contexto
Transcript
- 0:02Está começando mais um entre chaves, o seu podcast de
- 0:06desenvolvimento de software. E hoje a gente vai falar sobre
- 0:10um tema que ganhou força a partir do meio do ano passado,
- 0:14que é sobre engenharia de contexto, né?
- 0:17E a gente vai falar sobre um contraponto aí da engenharia de
- 0:20contexto com a engenharia de prompt, que com certeza você que
- 0:23nos ouve no entrechave já deve ter ouvido bastante aqui, né?
- 0:26Da gente falando sobre engenharia de prompt.
- 0:28Tem um episódio sobre isso. Mas hoje a gente vai falar sobre
- 0:31a evolução da engenharia de prompt e como que esse novo
- 0:34termo, né? De engenharia do de contexto,
- 0:37vem ganhando mais. O mercado vem falando, né, vem
- 0:40ganhando mais. É o hype aí da tecnologia quando
- 0:43se fala sobre desenvolvimento com inteligência artificial.
- 0:46Então para hoje, né, para falar desse tema, Rafa está aqui
- 0:50comigo, minha companheira de bancada.
- 0:52E aí, Rafa? E aí, Fernandinha, Bora?
- 0:55Bora para falar sobre isso? E também estamos aqui com o Rami
- 0:59para conversar sobre isso conosco.
- 1:00E aí, Rami, a primeira vez entra chaves.
- 1:02Não, não, não. Acho que eu vim falar do Dora
- 1:04aquela vez, então estou importante, secundário.
- 1:08Ah, coisa boa. Então Bora lá falar sobre isso,
- 1:10né? Então gente, assim como eu
- 1:12falei, para quem os ouve aqui ou enfim trabalha com AIA, com
- 1:16certeza já ouviu falar sobre engenharia de prompt, que é
- 1:18basicamente saber escrever um bom, uma boa entrada, né?
- 1:22Para o modelo de inteligência artificial, para que ela entenda
- 1:25o que você está pedindo e primeiro te.
- 1:27Entregue, né? O que que você?
- 1:29Espera receber exatamente para que ela te dê algum resultado
- 1:32útil, né? Vamos podemos falar que é isso?
- 1:35E nesses últimos anos aí a engenharia de prompt virou
- 1:39disciplina inclusive, né? A gente viu vagas sendo abertas,
- 1:43né? De engenheiro de prompt, né, e
- 1:45pessoas, né. Assim, a gente viu muito isso
- 1:48aqui, falando sobre isso aqui no entre chaves, né?
- 1:50A gente viu várias técnicas surgindo pra como melhorar o seu
- 1:54prompt, né? Como escrever o melhor dos
- 1:57prompts partindo justamente dessa premissa que se você
- 2:00escreve o prompt certo, ALLM vai te entregar o resultado que você
- 2:04quer. Então a arte parece ela.
- 2:07Era isso, né? Saber escrever o melhor dos
- 2:10prompts. Só que aí.
- 2:11Tem várias técnicas, né? Que assim não é.
- 2:14A gente pode simplesmente elaborar um prompt.
- 2:16Mas também existem técnicas avançadas como o Phil short,
- 2:20como o chain of talt, então. Isso aí a gente pode até entrar,
- 2:24a gente vai entrar um pouquinho nessas técnicas, né?
- 2:26Mas o fato é que até meados do ano passado imaginava se que
- 2:31para eu ter uma boa resposta da LLM, bastava eu escrever um bom
- 2:34prompt. E aí que alguns caras aí
- 2:37começaram a falar que espera aí, não é exatamente isso.
- 2:41E aí, assim tudo começou com o CEO da shopify, que falou um
- 2:45tweet dele. Engraçado, né?
- 2:47Que tudo tudo de a começa com o Twitter.
- 2:49E. O cara chegou e falou assim, eu
- 2:53prefiro o termo de contexting de newing do que prompting de
- 2:56newing, porque não é realmente só a instrução que ser dado que
- 2:59importa, mas sim todo contexto que você fornece para que o
- 3:03modelo consiga responder melhor. E aí assim o Andrey, Andrey,
- 3:07carpac, né? Que a gente já falou sobre ele
- 3:09aqui também em alguns episódios que ele é cofundador da open AEA
- 3:13ex Tesla falou sobre software 3.0 foi o cara que cunhou.
- 3:17Vai ver golding também num tweet também.
- 3:20Também endossou, né? Poxa, esse negócio de conta que
- 3:23tingenero me parece legal. E aí esse esse termo começou a
- 3:27virar verdade, aí a antrop que publicou artigo sobre isso e por
- 3:31aí foi, né? Então é justamente isso, conta
- 3:33que tingenero, então só pra gente começar o episódio já
- 3:35sabendo desses 2 termos e a gente ir pra discussão do que
- 3:38que é cada coisa, enfim, o que que é um diferente do outro.
- 3:42O conta que tingenero então é basicamente você decidir, né?
- 3:45Como que o que que entra na janela de contexto da LLMEO que
- 3:49que fica de fora? Justamente porque a janela é
- 3:51limitada, né? Temos aí hoje talvez, né.
- 3:54Acho que o modelo que tem mais é 1000000 de tokens, né?
- 3:57De janela de contexto. Mas a janela é limitada, então
- 4:00eu preciso limitar. Eu preciso decidir o que, o que
- 4:04entra, o que sai. Até do ponto de da janela de
- 4:06contexto, do tamanho do né? Quantos tokens e tudo.
- 4:09A assertividade que ela tem ao longo da população dentro da
- 4:13janela de contexto, cai também, drasticamente.
- 4:16Então, acho que foi o próprio cartaz que.
- 4:19Comentou assim que em algum momento ele falou que era
- 4:23impossível que desenvolvedores iam ser totalmente substituídos
- 4:27porque se perdia 50% da assertividade.
- 4:30Qual que é a chance, né? De um software ser desenvolvido
- 4:32com esse percentual da assertividade?
- 4:34Exatamente. Então então foi isso no final
- 4:35das contas, né? A janela de como se fosse assim,
- 4:37né? O conta que tinha engenheiro.
- 4:38Então essa arte de otimizar o que entra no contexto e no final
- 4:42das contas e desenvolver software igual o Rami falou aqui
- 4:44agora tem muito sobre isso também atualmente, né?
- 4:47Sobre essa arte, do que que eu dou para minha.
- 4:49LM, de contexto, para que ela me retorne o melhor trecho de
- 4:53código que eu quero, né? Porque se eu dou muito contexto,
- 4:56ela pode se perder. Se eu dou pouco contexto, ela
- 4:58também não sabe o que que ela tem que fazer.
- 5:00Então o negócio virou uma arte. É, existem estudos, né?
- 5:04Que comprova essa degradação da resposta baseado em janelas
- 5:08maiores de contexto. Então é, por exemplo, data brics
- 5:102024. Já há bastante tempo fez um
- 5:13primeiro estudo mostrando nessa degradação para contextos
- 5:16maiores ainda, que os modelos estão evoluindo para cada vez
- 5:20mais aceitar mais tokens. Teve outros também que eu acho
- 5:23que o chroma fez um mais recente também mostrando o fenômeno do
- 5:27contex distracting e context work, então são.
- 5:30São alguns termos aí que o pessoal usa, mas essa, esse
- 5:33Contax de stracting é é interessante porque mostra que,
- 5:37apesar de você às vezes fornecer uma janela ali rica, você pode.
- 5:41Ter informações. Adicionais ali que vão degradar.
- 5:44A sua é muito doido isso mesmo. E até as ferramentas também de
- 5:47construção, elas tomam algumas decisões por conta própria pra
- 5:51otimizar o contexto. E aí essa degradação você ainda
- 5:54luta contra? Uma engenharia que também vem do
- 5:58da construção dos agentes em si ou dos agentes agéticos, né?
- 6:02Que também acabam refinando ali. Qual que é o contexto que ele
- 6:05vai carregar? E em algum momento ele pode
- 6:07acabar resumindo esse contexto? Ele pode tomar alguma decisão,
- 6:10seja de resumir, seja de tirar alguma informação.
- 6:14Outra exatamente. Então antes antes da gente
- 6:16entrar mesmo na engenharia de contexto, né?
- 6:18Em tudo isso que a gente acabou de definir aqui, queria dar um
- 6:20passo atrás pra gente falar assim, como que foi, né?
- 6:23Por que que precisou sair da tal da engenharia de.
- 6:26Pronto, que virou um hype muito grande antes de né, de 2025.
- 6:30Ali era um negócio muito falado, mas de repente, por que que
- 6:33vocês acham que houve essa ruptura aí, né?
- 6:37Essa necessidade, talvez de de surgir um negócio diferente?
- 6:41Que que vocês pensam aí sobre isso?
- 6:42A laelima, ela não é capaz de responder tudo, né?
- 6:45Ela é limitada pelo data 7 de treino dela e muitas
- 6:49necessidades envolvem uso de dados proprietários envolvem?
- 6:53É assuntos muito específicos que muitas vezes a única saída seria
- 6:58você fazer um finetune de um modelo, o que é algo muito
- 7:01complexo e que exige conhecimentos altamente
- 7:04especializado. E eu sei disso porque já
- 7:07participei de projetos em que foi tentado ajuste de modelo.
- 7:12E é muito complexo, porque se você não tem um dado que está no
- 7:16formato de pergunta e resposta. Por exemplo, se o seu dado é
- 7:19estruturado é você acaba não tendo, não obtendo um resultado
- 7:24muito bom, e aí surge essa necessidade de beleza, então o
- 7:27treinamento daia não é suficiente, então o que mais que
- 7:30eu posso fazer, né? Então aí você vai começando a
- 7:32colocar coisa dentro do prompt, então você coloca o seu, o seu
- 7:36texto lá dentro, o seu seu dado, e aí é limitados pelo pelo que a
- 7:42janela de contexto. É suporta, você precisa agora
- 7:46começar a se preocupar com como que eu vou pegar exatamente
- 7:50aquilo que a IA precisa, como que eu vou automatizar essa
- 7:53busca? E aí veio a rague, né?
- 7:55Como talvez acho que é o nascimento do da engenharia de
- 7:57contexto, né? Então a rague, de maneira bem
- 7:59simples, é uma técnica onde você vai é ter o seu conhecimento ali
- 8:05armazenado em uma base de dados. E aí no tempo de pergunta, né,
- 8:09no tempo de chamada da LLM. Você vai ir nessa base de dados
- 8:13recuperar somente o que é necessário para aquela pergunta.
- 8:17E aí você vai passar o resultado que você pegou do seu banco para
- 8:21sua LLM dentro do contexto. E aí descobriu se que os bancos
- 8:26vetoriais eram muito úteis para esse tipo de técnica, porque com
- 8:30o banco vetorial a gente consegue utilizar uma busca por
- 8:33similaridade. Então que seriam os embedins,
- 8:36né? O banco vetorial.
- 8:37Você tem uma lista de embedins do seu documento?
- 8:40Eu faço essa busca semântica usando cosseno cos an
- 8:43similarity, várias outras onde eu consigo recuperar todos os
- 8:48documentos que se aproximam semanticamente da minha pergunta
- 8:52e aí eu posso é recuperar, sei lá, 5 10 documentos que mais se
- 8:57aproximam e mandar isso pra llm. Então isso é a rag.
- 9:02É, então você está dizendo assim, né, que antes a gente
- 9:04tinha engenharia de prompt como se fosse assim, eu tenho só o
- 9:07meu prompt. É a única coisa que eu consigo
- 9:09enriquecer o meu modelo, já que ele é foi treinado, né e tal.
- 9:14E então é o meu prompt, é o jeito que eu consigo colocar
- 9:18dados que não fizeram parte do treinamento dele.
- 9:21Aí surgiu a ragg, que é, OPA, tem agora um novo jeito também,
- 9:25né? Que eu vou conseguir inserir na
- 9:27minha janela de contexto um outro negócio aqui.
- 9:30Com dados que eu vou conseguir fazer essas buscas é semânticas.
- 9:34É isso que você está dizendo, né?
- 9:35Que é como se fosse assim, se criou, criou, se uma nova
- 9:38técnica para enriquecer ainda mais esse contexto que não só
- 9:42aquele prompt que a gente escreve lá na mão, eu quero, não
- 9:45sei que haja como fulano, faça isso do jeito ABEC.
- 9:50Né? Isso é OOEO banco vetorial assim
- 9:53é. É interessante porque é como se
- 9:55ele te permitisse. É fazer uma busca no banco.
- 9:58De forma semântica e não, por exemplo, usando um select ali
- 10:01que você vai fazer um filtro de forma objetiva.
- 10:03Então você vai pegar aquilo que tem no banco que é
- 10:06semanticamente. Se aproxima mais da sua
- 10:08pergunta, mas isso é bem limitado, né?
- 10:11É, tem vários problemas que podem acontecer com isso.
- 10:15Eu acho que assim até a dinâmica e quando a gente começou a
- 10:20aplicar LLM dentro do mercado, e eu acho que é isso que é uma
- 10:24coisa louca assim, porque LLM nasceu, parecia.
- 10:28Uma disrupção muito grande. Só que quando ela começa a ser
- 10:31aplicada dentro de organizações, a gente descobre que Oo que foi
- 10:36aplicado lá. O treinamento que ela teve, a
- 10:38informação que ela tinha, não era suficiente pra responder que
- 10:41a gente precisava. Então a gente tentou falar
- 10:44assim, como que eu pego o que eu tenho aqui?
- 10:47Jogo Pra Ela, e dentro de uma caixa preta, porque o formato
- 10:50que Ela Foi construída. Ele me devolve aquilo como uma
- 10:54decisão, cadeia decisória, ou seja, com workflow, ou seja, com
- 10:58a informação. Mas preciso do que eu queria
- 11:00naquele momento. Só que a natureza dos processos
- 11:04dinâmicas do dia a dia, elas não são desse jeito, né?
- 11:07Geralmente, quando você inicia um trabalho, você não tem todas
- 11:10as informações que você deveria ter para resolver aquilo.
- 11:15E a gente acabou construindo os sistemas desse jeito.
- 11:18A gente acabou construindo sistemas muito distribuídos.
- 11:22A gente acabou construindo sistemas realmente desacopados
- 11:25totalmente e até fora da empresa.
- 11:28E jogar um, né? Dar um tiro.
- 11:32É um xote ali e talvez com. Tudo que você precisa para
- 11:38enriquecer aquele contexto EALL me responder, certo, né?
- 11:41Parecia um negócio muito difícil.
- 11:42Né? Exatamente.
- 11:43E aí, e é muito interessante isso que eu estava até é esse
- 11:47final de semana, estava conversando com os amigos, né?
- 11:50Sobre assim, Ah, e aí você usa IA, né?
- 11:52Que não não trabalham aqui na dti, trabalham em outras
- 11:55empresas e perguntando, e aí, como é que você está usando IA
- 11:57lá no seu trabalho, não sei o que.
- 11:59Aí uma das minhas amigas falou assim.
- 12:01Ah, sabe que eu eu fico meio com preguiça, sabe?
- 12:04De ficar usando e ar demais, porque eu tenho uma preguiça
- 12:07danada de escrever um prompt, aquele prompt todo com todas as
- 12:11informações e tal. Aí eu falei assim, uai, mas você
- 12:15não precisa mais escrever esse prompt todo?
- 12:17Mas é isso. Querendo ou não, eu acho que
- 12:19isso é muito representativo, porque em algum momento do
- 12:22passado a gente precisou escrever esses melhores prompts,
- 12:25com todas as informações, com tudo.
- 12:28E se você esquecesse um detalhezinho ALLM te dá 11.
- 12:31Resultado ruim, né? E a gente usava o meta prompt,
- 12:34que era uma coisa que a gente tinha na dti, que era muito
- 12:36legal, que você fazia a própria ya refinar o seu prompt, fazia
- 12:40perguntas para você e ter um loop ali até você obter o melhor
- 12:45prompt, então. Exatamente porque isso era era a
- 12:47arte, né? Era você ter o melhor dos
- 12:50prompts que podia. Você podia fazer, né?
- 12:53Só que isso não é mais verdade, né?
- 12:55Inclusive assim a própria antrópic no artigo dela quando
- 12:58ela fala de contact Engineering, ela fala assim que existem
- 13:01algumas técnicas que inclusive de de prompting que hoje talvez
- 13:06não faça nem tanta diferença. Sabe assim, por exemplo, você
- 13:09colocar o é tag XML no seu prompt CT, né?
- 13:13O seu ator, não sei o que nanan que talvez são técnicas que
- 13:16foram muitíssimo importantes em algum momento da nossa vida.
- 13:20Mas que agora, com os modelos mais novos, eles estão evoluindo
- 13:23demais. E sem contar que a engenharia de
- 13:25contexto dá outros contextos, né?
- 13:27E que faz com que isso não seja não seja mais verdade.
- 13:30Tem vez que eu converso com o modelo em formato de query, que
- 13:33o formato de query é. Quando você, por exemplo, limpa
- 13:36uma, você tá tem uma frase, aí você limpa tudo da frase que não
- 13:40é extremamente importante, tipo substantivos.
- 13:43Você tira os conectores e eu já já cheguei nesse nível.
- 13:46De gasta menos token, né? E menos, né?
- 13:49Você? Eu tenho a mesma resposta.
- 13:51Uma outra coisa que eu também achei curioso desse mesmo
- 13:54negócio, né? É, é justamente que ela falou
- 13:57assim, Ah, porque ALM é muito boa com o teste unitário, né?
- 14:01Que é justamente talvez, o que era mais fácil de dar.
- 14:04LM, gerar seu comprompt só sabe muito.
- 14:07Legal isso total que você passava ali é OA classe.
- 14:10Exato que era um contexto muito pequeno, né?
- 14:13É, e o e o contexto era pequeno, que era assim uma classe, né?
- 14:16Um negócio muito pequeno que ela conseguia gerir, né?
- 14:19EE, eu acho que isso que que causa ali aquela aquela
- 14:22constante e aí, Ah, é uma bolha ou não?
- 14:25Que é isso que a. Não resolveu alucinou?
- 14:28Alucinou. Mas virou a palavra da vez.
- 14:31A alucinação da LLME era justamente essa parte não tem
- 14:36informação suficiente para funcionar bem, né?
- 14:39Então isso foi foi bem engraçado.
- 14:42E como que isso vai se repetindo ao longo do tempo e até falando
- 14:46agora de de contexto? Existe o contexto que ele é on
- 14:50Prime, né? Que ele não é nem eu, eu falo
- 14:53que é o contexto on Prime. Que são os arquivos que estão
- 14:57dentro desses, né? Desses agentes agéticos que você
- 15:00orienta ele a como agir também em determinada parte do seu
- 15:04contexto. E isso daí pode ser um guia
- 15:06essencial para você indicar para ele o caminho certo a seguir,
- 15:10porque você não precisa dar o contexto todo para ele para
- 15:13tomar uma decisão suficiente. Então, a medida que ele for
- 15:16evoluindo dentro do workflow que você esteja montando e
- 15:20programação, é assim, né? Você vai evoluindo por camadas
- 15:24ou por passos. Você vai alimentando ele com um
- 15:26contexto suficiente para ele tomar a próxima decisão.
- 15:29Então, acho que essa parte de também aproveitar mecanismos que
- 15:35podem estar na própria cadeia de decisão, mas que eu não preciso
- 15:38carregar para sempre para executar.
- 15:40Eu acho que é uma parte do contexto também que começa a
- 15:45quase que brigar, né? Não é só contexto, não é só
- 15:48texto, mas é uma arquitetura de sistema.
- 15:51Da mesma forma que você construiu a construía, né?
- 15:54Eu não preciso de camada de dados no front end e.
- 15:57Foi. É por isso que eu acho
- 15:59realmente, né? Que AA engenharia de contexto
- 16:01ela é. Tem essa arte, né, de
- 16:03otimização, mas ela tem, eu concordo com ser um caráter
- 16:07também arquitetural, que é de você entender justamente o que
- 16:10que você tem que dar para o seu contexto, para.
- 16:13Para que as respostas sejam assertivas, sejam fazendo essas
- 16:16técnicas que a Rafa mencionou, né?
- 16:18Por exemplo, de de mecanismo de algum, algum mecanismo de
- 16:20atenção sobre o seu, seu imenso, sua imensa base de dados para
- 16:24falar o que que é importante, o que que não é, seja selecionar
- 16:28os seus documentos certos, seja criar os seus MCPS, porque
- 16:31também é outra coisa que o deve tem, provavelmente tem
- 16:34dificuldade aí hoje. Que ele tem 1000000 de mcps pra
- 16:37usar. E se você coloca todos os mcps
- 16:40em jogo, provavelmente eles estão consumindo o seu contexto.
- 16:44E eles estão provavelmente poluindo o seu contexto, né?
- 16:48E estão tirando a atenção do que do que realmente importa.
- 16:51Se néia, se você está colocando a memória 100% persistente, como
- 16:55se fosse assim, é não tirando na hora certa, igual você acabou de
- 16:59mencionar. Você provavelmente está
- 17:01colocando mais coisa do que precisa, então assim é está
- 17:04distraindo seu contexto, seu agente, ele precisa ser ativado
- 17:08com aquele contexto que ele tem na hora certa dele ser ativado.
- 17:12Enquanto ele não, não precisa dele, não precisa de manter
- 17:15aquilo ali no contexto, né? Então é, é realmente eu
- 17:18concordei com você que ele é realmente uma quase como se
- 17:21fosse uma arquitetura, você hoje criar agentes para otimizar e
- 17:26ter eficiência na produção de código.
- 17:28Tem um caráter arquitetural de você entender o que que você
- 17:32precisa dar de munição para ele nas melhores momentos, sabe?
- 17:36Assim, então é é muito sobre isso, eu acho.
- 17:39A engenharia de contexto quando fala de.
- 17:40Software, né? Um ponto interessante é que eu
- 17:44até costumo falar, né, com a com o pessoal que tá começando a
- 17:48trabalhar com seja construir, né?
- 17:50Os agentes. Assim falei, trata como se eu
- 17:54fosse você quebra em problemas menores, você vai lidar.
- 17:58Bem, muito melhor, com problemas menores.
- 18:00Então você vai quebrando a as etapas, vai quebrando, como você
- 18:04vai decidindo em problemas menores e só aciona aquele
- 18:08conhecimento no momento necessário.
- 18:10Exato, é. É igual.
- 18:11Aqui no próprio artigo da antrropic também eles falam,
- 18:14eles fazem esse paralelo com humano também, que é justamente
- 18:17isso. É como se assim, né?
- 18:19Imagina que você tem OALL, é tipo a gente mesmo assim, né?
- 18:23É, imagina que você está buscando uma informação no meio
- 18:26de um livro gigantesco de 500000 páginas, que você não sabe muito
- 18:30bem onde essa informação está. Então você vai ter dificuldade
- 18:33mesmo e às vezes você vai encontrar informação errada, vai
- 18:35achar que está certa e é isso, né?
- 18:38E segue, vida ELLM é a mesma coisa se você tem o dependendo
- 18:42do que que você está colocando no seu contexto, você está
- 18:44distraindo ela com certas coisas, você está dando coisas
- 18:47que ela não precisa para responder.
- 18:49Aquela pergunta que você tá fazendo e isso só tá criando
- 18:52confusão na cabeça dela, né? Entre muitas aspas.
- 18:55É um pouco como a nossa memória funciona também, né?
- 18:58Você não se lembra tudo de a todo tempo e às vezes você tem
- 19:01dificuldade pra lembrar uma coisa e aí você vai
- 19:03concentrando, pensando, e você consegue se lembrar da letra de
- 19:05uma música, sei lá. E é rede neural.
- 19:08Ela não chama rede neural. Ela Foi inspirada na forma como
- 19:11a sinapses ocorre, então. E isso é legal assim, porque
- 19:16acho que. Quase 10 anos atrás eu criei um
- 19:19joguinho que replicava aquele gênios, não sei se vocês, se era
- 19:23época de. Vocês, mas, mas.
- 19:25Na época, a gente, eu, eu, os meus amigos que a gente criou, a
- 19:28gente queria validar o quanto que em algum momento a gente
- 19:31sabia que o ser humano não IA conseguir carregar essa
- 19:34informação pra acertar, porque a nossa memória ela É Ela é
- 19:40dividida em shotter memori e lonster memori.
- 19:44E a gente só carrega para essa short, que é essa lembrança, que
- 19:47a gente tem acionamento rápido até 7 chanks.
- 19:51É a maioria assim das pessoas que é de 5 a 7 chanks.
- 19:54E o que que é esses chanks, né? A gente tem umas técnicas que a
- 19:58gente programa na nossa memória para acionar os conhecimentos e
- 20:03guardar ele por tempo mais suficiente.
- 20:06Então, igual quando a gente fala o número de telefone, geralmente
- 20:09você tem um jeito de falar. E quando adicionaram um dígito a
- 20:13mais. Todo mundo se perdeu e falou, aí
- 20:16fala 9, aí você fala nossa. As novas gerações não dão esse
- 20:20espaço mais gente, eu fiquei sabendo.
- 20:21Chocante, chocante. Pois é, EE quando alguém começa
- 20:24a te perguntar diferente, você já não, porque você está
- 20:27acostumado a carregar para sua memória aquilo ali na hora de
- 20:31falar. Então é igual o CPF que você
- 20:32fala de 3 em 3 último 2, então assim.
- 20:35Esses chanks é a mesma coisa também, ALLM.
- 20:39Você só vai carregar pra memória dela na etapa, na hora que você
- 20:42tiver tomando essa decisão. E aí, na época, a gente tentou
- 20:45adivinhar o momento certo que a pessoa IA esquecer.
- 20:50Por quê? Porque ele tem uma pausa entre
- 20:53um chank e outro, porque ele carrega e vai juntando aquilo.
- 20:57Então, se ele fez mais de 7 saltos ali, que a gente fala
- 21:01essas pausas. Provavelmente ele IA se perder e
- 21:04aí a gente ficava tentando adivinhar isso, então.
- 21:06Trouxe uma frase aqui para resumir, engenharia de contexto.
- 21:10Achei super legal palavras de lence Martin do Lang chain, que
- 21:13foi um dos fundadores do Lang chain.
- 21:15Ele definiu engenharia de contexto como a arte e a ciência
- 21:18de preencher a janela de contexto com exatamente a
- 21:21informação certa em cada etapa da trajetória de um agente.
- 21:25Acho que resume bem. É exatamente isso, né, que o
- 21:28Rami estava falando. E agora, levando um pouco para o
- 21:30mundo do desenvolvimento, né? Do do desenvolvedor, né, que
- 21:34está nos ouvindo. Eu acho que essa que talvez é
- 21:37isso, é uma das coisas que as ferramentas estão evoluindo cada
- 21:41vez mais, né? Agora, falando de cursor de Git,
- 21:43hobko pilot de cloud code, que é justamente essa arte de otimizar
- 21:48contexto. Às vezes as pessoas até ficam
- 21:50assim, mas qual que é a diferença entre, sei lá, o
- 21:53cursor e o githobko pilot? E para mim?
- 21:57Essa parte da gestão do contexto é uma das diferenças que tem
- 22:00entre essas ferramentas. É como que elas fazem esses
- 22:03mecanismos de sumarizar o contexto na hora certa de
- 22:08definir, né? Em qual momento é, qual o
- 22:11contexto que é mais importante ou, enfim, qual Oo que que ela
- 22:15vai realmente incluir na janela de contexto da LLM que é
- 22:19agnótica como se fosse assim, né ALM?
- 22:23Ela está lá como se fosse uma API, que tem uma janela e quem
- 22:26está gerenciando o que que manda é, são as ferramentas, é o
- 22:29cursor, é o copylet. E para mim, uma das coisas que
- 22:32diferenciam eles é justamente as estratégias que eles decidem
- 22:37fazer em como gerenciar esse contexto, né?
- 22:39Para otimizá Los. E eu acho que isso vem
- 22:42diminuindo em relação à distância cada vez mais que eu
- 22:45acho que essas ferramentas, elas junto com os frameworks, né, que
- 22:49eu acho que também fazem muita diferença em relação à gestão de
- 22:51contexto. Eu acho que essa esse combo
- 22:54ferramenta e framework é o que vem diminuindo a diferença cada
- 22:59vez mais entre as ferramentas, porque eles ajudam justamente a
- 23:04dar o melhor contexto. E aí, dado que eu dei o melhor
- 23:06contexto, gente ALLM vai vai quase que eliminar o processo da
- 23:11ferramenta, vai ser qual ALM responde melhor.
- 23:15Agora, se aí se eu vou usar no cursor, no copaliot tanto faz.
- 23:18Então é, é a minha visão, é essa, assim que esse pra mim
- 23:20foi, está sendo a evolução das ferramentas e pra mim elas estão
- 23:24se aproximando cada vez mais. E aí, claro, né?
- 23:27anão ser que elas lancem features novas, que aí vem o
- 23:29negócio das skills, né? Dos agentes, dos sub agentes,
- 23:32que aí começa a trabalhar cada vez mais nesse negócio dos
- 23:35contextos, né? Outro dia eu fiquei pensando,
- 23:37como estruturar isso, essa ideia de de contexto, e como que é que
- 23:41as pessoas deveriam encarar o fluxo ali de desenvolvimento?
- 23:46E a gente ficou discutindo disso.
- 23:48Fiquei discutindo disso com os amigos também, né?
- 23:50Que a gente fica fazendo esse intercâmbio assim é por horas e
- 23:54horas. Eu falei que é como se a gente
- 23:56tivesse assim, usando a programação.
- 23:59E a gente primeiro olha dentro do código, então você toma a
- 24:03decisão olhando dentro do código.
- 24:05Naquele momento que você tá, em algum momento você vai falar
- 24:08assim, não, essa informação que não é suficiente pra eu tomar
- 24:12uma decisão. Imagina, você tá numa camada
- 24:14front end. Ah, talvez eu vou precisar usar
- 24:17um componente novo, alguma coisa.
- 24:19Aí você vai lá e precisa usar um MCP.
- 24:21Aí você imagina que você tem um sua biblioteca de componentes
- 24:26toda num pendrive. Aí você pluga um pendrive lá no
- 24:28computador e começa a tirar o que que você precisa ali?
- 24:32Aí você precisa construir sua API, e aí você tá lá na API,
- 24:36começa a construir ela, e aí você fala assim, pô, eu devia
- 24:39saber como que meu banco de dados está, como que a
- 24:42informação está estruturada, para saber como que eu corrijo
- 24:44esse. Esse bug pra saber qual que é o
- 24:46são os formatos do banco pra eu projetar melhor essa classe
- 24:50aqui. Aí você vai lá tem um hoje em
- 24:53dia, né? Alguns mcp de de banco de dados,
- 24:56aí você pluga mais um mcp e aí você vai dando a informação Pra
- 25:00Ela trabalhar naquela parte do código, trabalhar naquela outra
- 25:03parte do código, plugar numa fonte externa quando necessário.
- 25:07Só que essas Fontes externas também têm limite.
- 25:11Então aí que eu acho que assim os.
- 25:13MCPSE como que você vai programando?
- 25:15E a medida que você vai quebrando esse fluxo ao longo do
- 25:18tempo você vai refinando e aumentando essa assertividade,
- 25:22se aproximando cada vez mais daquela daquela zona, né, de de
- 25:27assertividade de 99% que ALLM tem e não poluindo totalmente
- 25:32ali as suas ferramentas em momentos desnecessários.
- 25:35E aí quando eu fiquei? Construindo, né?
- 25:38Que a gente ficou construindo essa narrativa lá, a gente ficou
- 25:41falou assim, pô, então é, não é não é bem só uma arquitetura,
- 25:44né? Parece um pipeline.
- 25:46Eu falei, pô, parece mesmo um pipeline que você carrega uma
- 25:49informação naquele momento, faz um build ali, carrega uma
- 25:53informação. Então eu acho que assim, a
- 25:55engenharia de contexto é pensar nela como uma arquitetura e
- 25:58quebrar ela como uma arquitetura.
- 26:00Mas a medida que o trabalho vai evoluindo, né?
- 26:03Pra desenvolvedor, eu tô talvez restringindo aqui, mas isso pode
- 26:06ser em sistemas, pode ser em outros agentes, estejam
- 26:09construindo pra organização a medida que ela for evoluindo.
- 26:13Você também precisa construir um pipeline ali de passos certos e
- 26:16interando em cima dessas informações até a próxima cadeia
- 26:19de decisão. Então acho que isso foi 11
- 26:22iluminação que a gente teve naquele momento ali, que eu até
- 26:25fiquei guardando isso aqui pra como que a gente pensa nisso?
- 26:29Vem com engenharia de contexto, né?
- 26:31É justamente, né? Que é que é o que a gente tem
- 26:34falado aqui desde o início, né? Que é ativar as informações
- 26:37certas nos momentos certos, né? E seja isso como você falou.
- 26:41Dentro de um desenvolvimento do software que aí eu vou fazer
- 26:44isso talvez com agentes, né? Com sub agentes dentro das
- 26:47próprias ferramentas, né? Dentro das ideias ou com skills,
- 26:51né, que vão ativar o contexto certo, as ferramentas certas, na
- 26:55hora certa. Mas se eu estou construindo um
- 26:56agente pensando no iFood, um agente que vai, né, conversar
- 27:00comigo e eu vou poder pedir minha minha comida no WhatsApp,
- 27:04sei lá. Aí esse cara também, ele vai ter
- 27:06toda a série de coisas que ele vai fazer.
- 27:08Vai ter lá os seus sub agentes também, que vai, por exemplo,
- 27:11sei lá, um vai fazer o pagamento, o outro vai olhar a
- 27:15disponibilidade de entregador, o outro vai olhar a
- 27:17disponibilidade da loja. Sei lá, né?
- 27:18Então vai ser uma série de uma orquestração de uma série de
- 27:22agentes e cada um com seu contextinho.
- 27:25E eu acho que isso é tão importante mesmo, né?
- 27:27Tanto quando a gente fala sobre o âmbito de negócio quanto de
- 27:30processo de desenvolvimento de software.
- 27:32Porque é isso, porque se eu tenho um negócio que é é a
- 27:34mesma, pra mim é assim. É quase que o mesmo desafio da
- 27:36gente ter monolito ou micro serviços, é se eu tenho um
- 27:40monolito e tudo, todo mundo sabe de tudo.
- 27:42É claro que alguma hora esse negócio vai dar merda assim, né?
- 27:45Claro que em alguma hora eu não vou, não vou escalar, que eu não
- 27:48vou conseguir né, ter o conhecimento do todo, enfim, né?
- 27:52E quando eu tenho 11 micro serviços, eu tenho uns negócios
- 27:55muito mais bem estabelecidos. O que, claro, gera, gera outros
- 27:59problemas também, né? De governança, enfim, né?
- 28:01De alinhamento, enfim, de outras coisas, mas que pode me dar
- 28:05outras oportunidades, que no caso do contexto aqui é de ter
- 28:09respostas melhores, com certeza. Né, de conseguir otimizar os
- 28:13contextos. Bom, então acho acho que é isso
- 28:15assim, né? Essa conversa nossa que muito
- 28:18sobre engenharia de contexto, como ela, ela evoluiu aí da
- 28:21engenharia de prompt. Queremos ouvir de vocês, nossos
- 28:24ouvintes, se vocês já trabalham com engenharia de contexto ou
- 28:28não, se vocês também tem essa visão que a gente teve aqui, né,
- 28:31de que a engenharia de contexto também é uma arte, é quase que
- 28:33uma arquitetura, é um pipeline, né?
- 28:35De coisas EE, essa decisão do que colocar para o agente.
- 28:39Não é tão trivial, né? Quanto ela parece, né?
- 28:41Ser? Então queremos ouvir também a
- 28:43sua opinião, né, de como vocês estão vendo isso aí no dia a dia
- 28:47de vocês, tá bom, então é isso, gente.
- 28:49Até a próxima. Tchau, tchau.
- 28:52Tchau, pessoal, obrigada. Valeu, pessoal.
- 28:54Espero ter contribuído um pouquinho aí.
- 28:55Valeu? Valeu.