Latest / Entre Chaves / #274 Custo de token: tudo que influencia o preço de uma resposta de IA
Transcript
- 0:00E está começando mais um entre chaves, o seu podcast de
- 0:02desenvolvimento de software. Eu sou Dudu.
- 0:05E hoje a gente pode pensar numa questão que às vezes tira o sono
- 0:09em alguns momentos, em alguns projetos, né?
- 0:11Pensar em quanto custa uma resposta da da IA dos nossos
- 0:16sistemas que estão em produção. A gente sabe responder isso.
- 0:19Se a gente não sabe, a gente pode ter um grande problema
- 0:22aqui, né? Como que a gente está gastando
- 0:23token? Qual o custo de colocar IA?
- 0:26Nos nossos produtos hoje. Estou aqui com meu colega de
- 0:28bancada Luiz, que já deve ter tido algumas alguns
- 0:31questionamentos dessa, né Luiz? Olá, olá pessoal, é o Edu, oi
- 0:35meu laguti. É interessante você puxar isso
- 0:37porque nós estamos agora gravando esse episódio no
- 0:40finalzinho de maio, poucos dias depois da Uber ter anunciado que
- 0:44em 4 meses eles já estouraram o orçamento de a do ano inteiro.
- 0:49E poucos dias antes da Uber anunciar isso, a Microsoft
- 0:52também já andou cortando o Cláudio coach lá com eles,
- 0:56porque o custo de ar já está superando o custo com
- 1:01funcionários que eles têm em desenvolvimento, né?
- 1:03Então, assim, até onde é o ganho, que é que é o custo
- 1:07benefício disso? Vamos ver se a gente consegue
- 1:08destrinchar isso aí um pouquinho para vocês.
- 1:10Exatamente aqui a gente está também como a lagutti.
- 1:12Tudo bom, pessoal? Muito prazer.
- 1:14Para quem ainda não me conhece, como é o Francisco na lagutti,
- 1:16eu sou arquiteto de soluções aqui na dti.
- 1:18Devo apresentar um pouquinho até do dilema que a gente tem tido
- 1:22dentro do meu time, algumas mudanças que a gente tá tendo,
- 1:24que vai seguindo muito, não só os exemplos que vocês deram, mas
- 1:28algumas mudanças até de discurso das empresas, né?
- 1:30O CEO da nvide falou recentemente que e ainda não eu,
- 1:34ainda é mais caro do que um desenvolvedor ou do que o
- 1:37trabalho humano. E a gente tem visto até reflexos
- 1:41disso em como algumas empresas de tecnologia que vendem esse
- 1:44serviço estão atualizando a forma de precificação para poder
- 1:48tornar ele rentável. O kopiilot, por exemplo, que o
- 1:51Luiz falou, a gente está no final aqui do mês, iniciando no
- 1:54próximo mês ele vai mudar a precificação dele, buscando.
- 1:57Recuperar um pouco desse, desse investimento que eles fizeram ao
- 2:01longo dos anos para construir uma ferramenta, alcançar uma
- 2:04base de usuários. E agora ela precisa da luta.
- 2:06Ou ou isso que você mencionou, né?
- 2:07A partir da próxima semana, o Copilot vai alterar o
- 2:11multiplicador dele do cloud Opus 4.6 de 3 x vai para 27 x.
- 2:18Quase 10 vezes o multiplicador do do preço, da da utilização
- 2:23dessa, desse, desse modelo. Além da multiplicação, a gente
- 2:26tem uma mudança de paradigma no preço.
- 2:28É. Hoje a gente tem dentro do
- 2:30copylet, né? É que é uma ferramenta
- 2:33amplamente utilizada até em detrimento do que a gente tem
- 2:36muito do cloud, porque o pessoal sempre vê o cloud cult como um
- 2:40exemplo de eficiência no uso de ar, mas também com uma
- 2:43ferramenta de maior custo. A Microsoft fez 11 experimento,
- 2:47tinham pessoas utilizando o cloud code e voltaram atrás e
- 2:50falaram, não, a gente vai voltar aqui pro copylet, porque é uma
- 2:53coisa que vai funcionar melhor, dada a nossa precificação, o que
- 2:56que a gente tem aqui de budget e como é que a gente, o que que a
- 2:58gente pode dispor nesse cenário, né?
- 3:00Do uso de AE, quando a gente pega como funcionava antes, Oo
- 3:04copylet, né? Até o final desse mês, mas é, a
- 3:08gente vai lidar com essas mudanças e otimizá las, é.
- 3:12Você tem basicamente essas requestes premium, onde
- 3:15independente do quanto você utilizar ali de tokens, e a
- 3:18gente ainda pode entrar No No que que é um token.
- 3:21Como é que esse token é? É contato, porque tem um token
- 3:23que você recebe, que você envia, tem um token que você vai
- 3:26cachear ou não. Então eles vão ter custos
- 3:29diferentes para essa provedora do serviço.
- 3:32E aí no caso, você gastava uma request premium ou um
- 3:35multiplicador da request premium.
- 3:37Então se você fizesse uma requisição.
- 3:39Como eu já havia acontecido em alguns cenários que você gastou
- 3:41literalmente milhões de de tokens, ainda assim no final da
- 3:45sua requisição no final, será que você gastou uma request?
- 3:47Premium se você só der bom dia. Uma request perdão, uma bom dia.
- 3:51Uma request premium. Se você digitou alguma coisa
- 3:53errada e você deu enter e você cancelou, você ainda deve ser
- 3:57uma request premium. Existe uma diferença muito
- 3:58grande entre esses usos e o custo final deles.
- 4:02E o que eles estão fazendo agora é tentar associar esse resultado
- 4:06mais ao quanto você está pagando.
- 4:08Até porque. Se a gente for fazer uma análise
- 4:10de qual é usar o médico, qual que é Oo high user, o low user
- 4:15ali do do copylet. Existe uma diferença muito
- 4:18grande do quanto eles consomem, tanto dos serviços, do quanto
- 4:21eles produzem com esses serviços.
- 4:22E o custo deles acaba sendo o mesmo quando a gente lida com
- 4:25essa parte de com esses. Prêmios mas se você der bom dia,
- 4:27você continua gastando um recrete prêmio, só que além do
- 4:30recrete prêmio, você ainda gasta towkins.
- 4:32É, né? Agora mudando a.
- 4:34A precificação em request prêmio não interessa tanto mais né?
- 4:37O interessa, você vai estar gastando seus tokens, né?
- 4:39E aí até pra pra embasar melhor essa conversa toda nossa aqui
- 4:43talvez seria interessante a gente colocar o que que é o
- 4:45conceito de um token, né? O que que, o que que é esse
- 4:48token que a gente passa pra ir a tipo assim, Ah, é o é o caracter
- 4:52que a gente coloca é a palavra que a gente escreve, tipo assim,
- 4:55bom dia, são 2 tokens, são 6 tokens.
- 4:58São 7 porque o espaço conta, sabe?
- 5:00Ou isso é irrelevante? Acho que.
- 5:01Quando a gente vai falar de token é até muito engraçado.
- 5:04Quando eu vou falar isso com o pessoal do meu time, a gente tem
- 5:06tido muitas discussões com com essa muda pra gente vai sempre
- 5:09voltar no nesse caso do coparting, né, das mudanças,
- 5:12porque acaba sendo algo que fez com que a gente se estressasse
- 5:16muito assunto e discutir. Esse a gente foi desde sentar
- 5:19com todo time, inclusive com pessoas que utilizam muito bem o
- 5:22comparados, até estagiários falaram, então vamos voltar aqui
- 5:24um pouquinho pra aula de português, entendeu?
- 5:26Você tem a palavra, você vai ter parte dessas palavras, tem
- 5:30aquelas partes léxicas, essa separação.
- 5:32Então o que você está fazendo ali, no final das contas, que é
- 5:34AA Helen, que é um modelo de linguagem, vai precisar fazer
- 5:37ali, no final das contas, é separar essa palavra em trechos
- 5:41ou em parcelas delas, né? Que seriam esses léxicos que vão
- 5:45definir o conceito que está ali dentro.
- 5:48Então, quando você pega uma palavra em português ou inglês e
- 5:51como elas estão trabalhando, isso inclusive, isso vai gerar
- 5:54um impacto. No seu prompt, existe uma
- 5:56expectativa, por exemplo, que um texto em inglês ele vai consumir
- 6:00menos tokens do que um texto em português, pela forma como a
- 6:04nossa linguagem é feito e isso acaba se diferenciando um pouco.
- 6:07Enquanto como você vai usar isso?
- 6:09Principalmente quando você vai produtizar alguma coisa.
- 6:13Mas no final da das contas, os tokens seria a representação da
- 6:17queda da sua palavra em termos léxicos, vetoriais ou qualquer
- 6:20outra forma que você tenha de armazenar.
- 6:22Que represente aquele conceito no seu espaço e aí o seu espaço
- 6:26ele vai variar com como você representa ele dentro da CLLM,
- 6:29dentro do seu rag, do seu banco vetorial ou o que for.
- 6:32Sim, né? Então hoje é a maioria desses
- 6:35modelos estão precificando, né? Ou ou medindo o uso em cima da
- 6:39quantidade de tokens gerados pela IA, mas existe também uma
- 6:42diferença entre tokens de entrada.
- 6:44E tokens de saída, né? Tokens que você envia pra LLME,
- 6:47tokens que você recebe da LMO custo deles é diferente também,
- 6:52né? Não é a mesma coisa, os tokens
- 6:54de saída, eles são bem mais caros do que os tokens de
- 6:58entrada, né? E às vezes a gente vê muita
- 7:00otimização. A pessoa fala, Ah, não vou
- 7:02gastar muito token com esse prompt gigante aqui, vou
- 7:05diminuir ele aqui pra, sei lá, tiro 20% dele, mas continuo
- 7:09mandando aí a divergir e falar e criar uma.
- 7:12Uma bíblia gigante em cima da saída.
- 7:14Não vai adiantar nada a sua economia, né?
- 7:16Que talvez estaria do outro lado.
- 7:18Especialmente quando você usa rag, né?
- 7:20Especialmente quando você usa e eu até bom pra deixar uma
- 7:22lagosta responder essa eu repeito.
- 7:24Você já coloca o conceito rag também, né?
- 7:26Pra pra quem não conhece, como que isso pode influenciar, né?
- 7:29No preço do doken? Você tem um ponto que é a
- 7:31questão da precificação do token.
- 7:32Você vai ter tokens de entrada, tokens de saída.
- 7:35E eu acho que entra até numa outra coisa que pra quem tem
- 7:38feito esses experimentos, né, igual novamente outra, né, que
- 7:40você não compara que são alguns tokens.
- 7:42Que estão cacheados lá dentro. Então um dos principais pontos
- 7:45que você quando você vai produtizar esse tipo de coisa e
- 7:48isso se torna um problema, é mais fácil para esses
- 7:51fornecedores de de serviço que eu pantrop que eu penar ou
- 7:55qualquer outro que você for utilizar, cachear às vezes uma
- 7:59entrada do que uma saída, fazer esse mapeamento dentro dessa
- 8:02estrutura interna do que numa resposta que ele vai te dar,
- 8:04então. Essa estrutura, ela vai definir
- 8:07muito de o que eles conseguem reutilizar, reaproveitar,
- 8:10cachear e consequentemente, reduzir esse custo internamente
- 8:13pra eles tornarem isso viável e também cobrarem de você de uma
- 8:17maneira que faça mais sentido essas estruturas que você vai
- 8:20fazendo. E aí ela vai desde algo que a
- 8:22gente já usa há muito tempo, que é rague, até se ele for pegar
- 8:26coisas mais recentes, como toda estrutura de harners durante o
- 8:30seu desenvolvimento ou desenvolvimento dos seus
- 8:32agentes. Ele vai ter ali como objetivo
- 8:35pegar nessas representações e trabalhar dentro delas.
- 8:38O problema é a medida que você vai construindo agentes, sub
- 8:42agentes dentro do Rae, que você tem que pegar essa informação,
- 8:45esses tokens, e mapear eles para algum conceito ou para alguma
- 8:48informação que está armazenada internamente dentro do do seu
- 8:52banco vetorial ou de qualquer estrutura de dados que você
- 8:54tenha. Você às vezes vai precisar
- 8:56construir guard rails para impedir ele de sair de onde você
- 9:00espera. Ou até mesmo criar outras
- 9:02funcionalidades como react, que você pega um prompt e aplica
- 9:06outro prompt sobre ele. Cria agentes adversários, onde 2
- 9:10agentes vão discutir a forma como você vai construir.
- 9:14Isso define muito a comunicação que eles vão ter e acaba
- 9:18modelando o que a gente constrói No No desenvolvimento atual.
- 9:21Existe um problema muito grande quando a gente vai falar de
- 9:24texto, igual você falou, igual o Dudu falou da exposição desses
- 9:28tokens de saída. Então como é que a gente
- 9:29consegue evitar isso? Aí se a gente, em vez de
- 9:32utilizar esses tokens, a gente usar um protocolo pra fazer essa
- 9:36comunicação, um wakw ace, eu vou fazer essa comunicação entre a
- 9:39gentes, se eu vou usar serviço, eu fazer um utilizar OMCP, por
- 9:43exemplo, que vai estar disponível ali no servidor, ou
- 9:46até se eu quiser economizar tokens, que ele precisaria
- 9:48executar comandos no CLI, que era uma coisa que a gente viu
- 9:51que funcionava muito bem. Por que que eu já não crio uma
- 9:54esquilo que eu sei que vai ser algo reaproveitável e monto até
- 9:58scripts, outras coisas determinísticas que vão aumentar
- 10:01a assertividade, evitar que ela tente a mesma coisa várias
- 10:04vezes, se ela não conseguir resultar do que ela quer e
- 10:06evitar que ela faça essa chamada de saída, que seria muito
- 10:09extensa e a gente reduz isso a um simples comando.
- 10:13Exatamente. É, eu acho que isso aí já é uma
- 10:16boa forma da gente pensar em como estruturar, né?
- 10:18Já já mostra que a gente tem que pensar em como estruturar e não
- 10:20só um ciclo de desenvolvimento, mas quando você vai incluir uma
- 10:23feature de de IA dentro da sua aplicação, né?
- 10:26Que você a sua aplicação vai conversar com uma IA e tudo de
- 10:29simplesmente não chegar e criar string, zona, comprompt lá e
- 10:33fazer só os. Os injetion da da das mudanças
- 10:36lá, sei lá, minha aplicação é b to b, então eu só vou lá e boto
- 10:39o nome do cliente na hora lá. Mas o prompt é o mesmo e não,
- 10:41não penso em algumas técnicas dessa, né?
- 10:43Uma coisa que você comentou, provedores de serviço, né?
- 10:45Antrópico e open i fazem muito é Cash de de de prompt de entrada
- 10:49e inclusive, é algo que o desenvolvedor consegue
- 10:52controlar, né? Existem técnicas que você, ao
- 10:55conversar com essas ferramentas, você consegue falar Pra Ele,
- 10:57cara. Esse prompt aqui, ó, você pode
- 10:59fazer Cash de tal forma, de tal jeito, tal, tal, tal time malte,
- 11:02blá, blá, blá. Existe até uma precificação em
- 11:05cima disso, mas que normalmente é mais barato do que você
- 11:09simplesmente mandar o mesmo prompt várias vezes.
- 11:11O prompts repetidos, né? Você tem uma conversação grande
- 11:13de você ter que passar uma instrução repetida várias vezes
- 11:17durante aquela conversação. Usar esse tipo de de
- 11:20cacheamento. Já ajudaria a você ter esse
- 11:23controle dos gastos seus de token e de de de custos de Ana?
- 11:28Esses mesmos conceitos servem pro desenvolvimento, né?
- 11:31A gente utilizar o desenvolvimento autônomo, tipo
- 11:33um codex da vida. Eu vou realmente chegar ali,
- 11:37passar as especificações e vou embora na sexta-feira, espero
- 11:40chegar na segunda-feira. Tá tudo pronto, desenvolvido.
- 11:42Né? Então, esses conceitos também
- 11:43têm consumo de tokens inclusive, mago tinha uma coisa que eu acho
- 11:46que também de de explicar pro pessoal, acho que interessante
- 11:49você você falar pra gente, a gente ouve muito quando está
- 11:51falando do, né? Seja o desenvolvimento, ou seja
- 11:54o Oya embutida. No conceito de janela de
- 11:58contexto, Ah, use janela de contexto pequeno, use janela de
- 12:01contexto grande. Não deixa crescer.
- 12:03Janela de contexto muito grande gasta muito.
- 12:05Tou que é mais caro. O que é essa janela de contexto
- 12:07e como que ela influencia no preço disso?
- 12:09Aquela famoso pronto, você vai gerar lá e falar assim, ó, pega
- 12:12a pasta docs da do negócio, carrega tudo e aí você vai usar
- 12:15ela para poder gerar uma resposta lá?
- 12:18Vou pedir pra você criar uma especificação super simples de
- 12:20um. Botão na tela.
- 12:20Bom, acho que pra gente começar a falar isso, até de uma maneira
- 12:23mais completa, eu acho que a gente vai fazer então essa
- 12:26separação entre a parte do do que é produto mesmo.
- 12:30Você está embutindo um llm impudindo um modelo de ar no seu
- 12:33produto e um modelo de operacional.
- 12:35Você vai utilizar ele dentro do seu contexto, do da sua
- 12:39operação, de qualquer outra forma, a primeira parte
- 12:42fundamental que você precisa fazer é, e isso funciona para
- 12:45ambos os cenários. É você entender o que gera esse
- 12:49custo, desde que esse aqui é o meu token, esse aqui eu consigo
- 12:53reaproveitar. Isso aqui é um desperdício.
- 12:56E o como eu consigo otimizar esse processo?
- 12:58O que eu quero, no final das contas, é fazer com que AIA
- 13:02tenha um melhor resultado com o mínimo possível.
- 13:05E eu quero evitar desperdícios ou reaproveitar quando você tem.
- 13:10Uma série de chatbot eu estou embedando.
- 13:12Um LLM no meu chatbot eu tenho é expectativa de algumas perdas,
- 13:17uma mensagem de bom dia, uma série de outras mensagens que a
- 13:20gente sabe que a gente acaba perdendo ali dentro.
- 13:22E quando você monta 11 chatbot, uma experiência de chat, o seu
- 13:27contexto, a forma que você vai passar aquele contexto, ele você
- 13:30tem uma expectativa disso? Ela seja ela, você basicamente
- 13:34fazer um apend. Do que da das interações
- 13:37anteriores. Ou seja, toda vez que você faz
- 13:38uma interação, você manda não só ela para o chatbox, mas ela e
- 13:42todas as que ocorreram anteriormente.
- 13:44Então você manda um bom dia, aí a responde, você manda uma
- 13:47pergunta, ela não vai mandar só a resposta, ela vai mandar para
- 13:50o seu modelo toda aquela conversa anterior.
- 13:53A gente sabe que 1 hora isso não funciona, é janelas de contexto.
- 13:56Ela, elas têm um limite. Existe um limite de quantos,
- 13:59quantas palavras, quantos estou que você consegue mandar para
- 14:01ela? Então a gente vai ter que
- 14:03escolher uma forma de atuar em cima disso.
- 14:06Se eu tenho um limite, o que que eu faço quando alcanço esse
- 14:08limite? Eu tenho a opção de cortar fora,
- 14:10fazer o troncate. Basicamente, eu vou mandar as os
- 14:13últimos 20000 tokens, 200000 tokens pra pra esse chat, ou eu
- 14:19posso compactar essa conversa ou até mesmo fazer um misto dos 2.
- 14:24Muitos dos chatbots que a gente tem hoje, o que ele vai fazer é
- 14:26isso. Se você tem que interagir 60
- 14:29vezes com o chat, eu não quero mandar. 60 conversas, porque ela
- 14:32não é mais relevante. Eu vou mandar as últimas 3, por
- 14:35exemplo, e vou compactar todo o resto num numa mensagem menor.
- 14:40Então, a cada interação que você está fazendo, você está usando
- 14:42um modelo mais simples pra compactar as informações antigas
- 14:46e manda pro seu chat apenas as últimas 3 integrações, as
- 14:49últimas 2 integrações ou 6. Isso vai depender muito do seu
- 14:52contexto, do seu produto, quanto ele tem que saber, o quanto as
- 14:55respostas vão se tender a ser mais diretas e rápidas.
- 14:58Ou quantas pessoas vão querer entender uma informação mais
- 15:01complexa do seu produto nesse cenário, você quer chegar num
- 15:04termo, num bom termo, numa num bom Balanço entre o quanto eu
- 15:08vou enviar de tokens? E quão rápido eu consigo
- 15:10responder as dúvidas do meu usuário se eu sei que ele vai
- 15:12ter muitas dúvidas, mas são dúvidas fáceis de responder e
- 15:16tudo mais? Tudo bem, eu não preciso ter um
- 15:17contexto muito grande, eu posso enviar os últimos 2.
- 15:20Agora, se eu quero que ele cheguem a algo mais complexo, o
- 15:23que é o que acontece muito com esse chat que a gente vai falar
- 15:26como compallet, aí ele precisa mandar mais respostas ou fazer
- 15:30um resumo melhor, uma compactação melhor desse
- 15:32resultado. Esse é o primeiro ponto, é como
- 15:34você vai otimizar o que você vai mandar nisso, que é essa janela
- 15:37de contexto. Nesse primeiro cenário, você tem
- 15:3911 produto, um chatbot, qualquer coisa, e na sua operação, onde o
- 15:43contexto da sua empresa talvez seja muito relevante, é o seu
- 15:47código, arquitetura, padrões de projeto e mas em outras coisas
- 15:51que eu vou adicionando eu tenho que adicionar além da minha
- 15:54conversa. Então como é que eu pego esse
- 15:56projeto inteiro e peço para ele alterar um botão, mas sem ter
- 15:59que carregar o projeto inteiro? Mas ao mesmo tempo, eu quero que
- 16:02ele use os padrões de cores da minha marca, eu quero que eles
- 16:05usem os padrões de projeto da minha cor.
- 16:07Se eu utilizar alguma biblioteca interna da minha empresa, da
- 16:10npm, ele tem que usar algo que tá lá dentro, senão eu tenho que
- 16:12subir algo novo pra isso. A gente vai querer e vai buscar
- 16:15é formas de otimizar esse acesso.
- 16:18Então não quer dizer que ele não sabe que isso existe, mas eu não
- 16:21quero ter que carregar tudo na memória.
- 16:23Eu quero que eu consiga disponibilizar Pra Ele meios de
- 16:26encontrar isso dentro do copay, no que a gente tem structions
- 16:29dentro do curso, a gente tem hools.
- 16:32Além disso, a gente vai ter outras formas também de fazer,
- 16:35como skills. Dos meus mcps, só que, ainda
- 16:38assim, quanto mais coisas eu adiciono, mais contexto meu a
- 16:42gente vai ter. E o meu objetivo?
- 16:44Que era reduzir, ele aumentou, então não adianta nada.
- 16:47Eu economizei muito espaço de código e enche toda esse espaço
- 16:51com instruções. O que eu vou fazer agora, então,
- 16:54é procurar formas melhores de representação e formas de
- 16:57economizar algum. A gente tem feito vários
- 17:00experimentos com ferramentas e repositórias diferentes.
- 17:03Tem ORTK, que é um repositório que ele vai utilizar, que ele é
- 17:06simples, você tem comandos, comandos, tem muitos caracteres
- 17:11que são utilizados para entendimento do usuário, o
- 17:13usuário vai utilizar para uma melhor usabilidade de
- 17:16visualização e afins no próprio CLI.
- 17:18No caso da CLLM, ela não precisa disso, então posso arrancar tudo
- 17:21isso fora. Um outro exemplo disso é o
- 17:23graphify, eu tenho infinitos arquivos lá dentro do meu
- 17:26repositório, cada arquivo representa alguma coisa ou, mas
- 17:29espera, já existe uma estrutura por trás disso.
- 17:32Eu sei que você usa MVC, que eu tenho passees de serviço, que eu
- 17:35tenho passe de controle, que eu tenho paste de repositório,
- 17:37então pra que que eu vou fazer a minha carregar tudo isso se eu
- 17:40posso simplesmente carregar Pra Ela que olha dentro desse
- 17:44conjunto aqui? Se você quiser mexer no serviço
- 17:46tal, se você quiser mexer em tal, e por aí vai.
- 17:48E aí quando ela buscar, em vez de ela buscar todos os meus
- 17:51arquivos, entender, ela vai usar esse gráfico pra falar, eu quero
- 17:54mover serviço repositório e alterar a tela, então vou buscar
- 17:58só esses arquivos relevantes. Em vez de buscar tudo que existe
- 18:01no meu repositório Ah, eu não quero ter tudo isso, eu não
- 18:04quero que ela faça essa busca, tudo bem, existe é rapper mix ou
- 18:08qualquer outra ferramenta que queira utilizar, que ele vai.
- 18:10Olha, em vez de você fazer assoia ler tudo, eu vou criar
- 18:14aqui um arquivo. Ele é muito grande, mas ao mesmo
- 18:17tempo ele é um direcionador da assoia.
- 18:19Você vai carregar só ele e com ele ela vai ter a maioria do
- 18:21contexto útil que você vai ter aí no seu produto.
- 18:24Então você não precisa mais carregar tudo e no final das
- 18:26contas, o que a gente vai fazer é acabar.
- 18:28Juntando tudo isso de uma maneira eficiente.
- 18:30E a resposta faz parte da janela de contexto, certo?
- 18:33Porque muitas vezes as pessoas esquecem.
- 18:35Eu vou supor, poxa, eu levo um comando simples.
- 18:36Abriu o ChatGPT aqui e falei assim, crie um plano de
- 18:39treinamento. Um estagiário em desenvolvimento
- 18:43do wattnet mandou lá 200 linhas de treinamento.
- 18:47Agora altere esse plano pra isso.
- 18:48Isso desenvolver meu, meus comandos foi tipo meia dúzia de
- 18:52palavra em cada comando. Ah, meu, o contexto está
- 18:55minúsculo? Não, porque o contexto as 200000
- 18:58que gerou de treinamento, de de do plano de treinamentos fazem
- 19:01parte da janela de contexto. Então muitas vezes o pessoal não
- 19:03para pra pensar. Pessoal focado muito no prompt.
- 19:06E esquece que se eu der um pront de medo do uso de palavras, ele
- 19:10me retornou 2000 linhas as 2000 linhas fazem parte da minha
- 19:13janela de contexto. Eu iria até além, não só as as
- 19:171000 linhas, porque as pessoas esquecem e as foram treinadas.
- 19:20Já tem um tempo, demora um tempo pra você treinar, então como é
- 19:22que você pediu Pra Ele fazer um plano de treinamento de uma
- 19:24tecnologia? Desse ano, por exemplo, e ele
- 19:27montou essas 2000 linhas de resposta novamente, vou usar o
- 19:30pilot de exemplo, porque eu acho que é o que a gente tem mais de
- 19:33uso, é o pilot, o Cláudio code. Mas vamos vamos fazer de
- 19:36maneiras bem semelhantes. É que você consegue ver, por
- 19:39exemplo, pilot CLI abrir ele, você vai ver que ele tem um MCP
- 19:42interno que ele utiliza do do Git up.
- 19:45E aí quando você pede para ele fazer essa informação, ele vai
- 19:48fazer, por exemplo, o websert para procurar a versão mais
- 19:51recente. Cara, não é só o prompt que você
- 19:53fez. Ele vai pegar isso, vai
- 19:55transformar em algo para enviar no web surt vai conectar com
- 19:58OMCPOMCP, responde para ele em texto que vai ser um pronto de
- 20:02entrada. Que é o rádio, exatamente?
- 20:03Vai precisar interpretar tudo isso para depois montar aquele
- 20:06texto. Tipo assim, ele não tem esse
- 20:08embutido. Você não fez uma pequena
- 20:09pergunta. Ele tinha toda essa informação
- 20:11embutida e colocou daquela maneira para você?
- 20:13Ele faz n operações no meio do caminho, que você pode inclusive
- 20:17optar por vir ou não. Dependendo do que que você usa
- 20:21deflag ou ou comandos que você pode usar ali no meio.
- 20:23Mas se você pegar e der um control o por exemplo, No No seu
- 20:27compadre ser AI você vai ver que ele vai expandir absurdamente
- 20:31com várias informações que ele está puxando do website, de
- 20:34repositórios que ele conhece, de referências que ele tem de
- 20:36outros MCP alguns MCPS que estão diretamente em documentação.
- 20:40Se você tem, por exemplo, utiliza angulas no seu projeto,
- 20:43você pode conectar no angula. Você pode conectar no signo e
- 20:46tudo isso ele está puxando informação, trazendo para
- 20:49dentro, processando a gente, dando a resposta final.
- 20:51Famoso MCP do do contest seven, né?
- 20:53Que todo mundo adiciona lá. Não, eu quero a documentação
- 20:56mais recente de toda a tecnologia mesmo.
- 20:59Tem esse custo. Estou.
- 21:00Sem custo? Às vezes sim, às vezes não é
- 21:02aquele. Negócio é necessário?
- 21:03É tipo assim, se é necessário, eu vou ter que arcar com o
- 21:06curso. Não tem jeito, porque é
- 21:07extremamente necessário. Agora, se não for necessário, é
- 21:11dinheiro perdido. Exatamente, cara, quem não gosta
- 21:13de chegar lá e falar, nossa, que legal esse aí no CP?
- 21:15É bacana, vou adicionar esse aqui também é bacana.
- 21:17Ah, esse aqui parece bem legal. Eu vou colocar, vou colocar.
- 21:19Quando você vai ver lá na lista de de, de de ferramentas que
- 21:23você tá usando, já tá tipo assim, 200 ferramentas lá, o
- 21:25próprio copylote e tudo, falou, velho, desliga umas aí porque tá
- 21:30com coisa demais, bom. Dia acabou seus tokens.
- 21:33É vocês, vê o play subiu 60% da sua janela de contexto.
- 21:38Cara, tem uma coisa, 2019, eu falava para alguns arquitetos
- 21:41que tipo, nada demonstrava mais uma maturidade técnica do que
- 21:45você via uma tecnologia super legal e não utilizar porque não
- 21:49faz sentido. Então quanto é que se serve?
- 21:52É útil? É, faz sentido, sim, é um mcp
- 21:55excelente, é um mcp excelente, mas vamos pensar um pouquinho
- 21:57que que faz mais sentir ele bater no quanto é que te serve e
- 22:01fazer buscas frequentes, porque você está sempre usando na sua,
- 22:04no seu produto, a coisa mais recente que existe no mercado.
- 22:08Porque seria, com certeza, algo muito fora do padrão.
- 22:11Ou eu vou bater no context seven, pegar os meus padrões e
- 22:15salvar isso numa esquill que é muito mais facilmente
- 22:17reaproveitada, consome muito menos um texto para carregar.
- 22:21E eu ainda posso, se eu quiser direcionar e a dar um barra nome
- 22:25da skill e já ir direcionar para ela qual skill usar para ela nem
- 22:28precisar. Pensar ou procurar qual é a
- 22:30correta? Né?
- 22:31É uma coisa também que eu acho que vale a pena citar aqui que
- 22:34eu queria, né? Ver, né?
- 22:35O bagulho falar pra gente um pouquinho do modo routing, né,
- 22:38que é a ideia da gente não ficar usando bazuca pra matar Formiga
- 22:42o tempo inteiro. Então eu vou ter um modelo
- 22:45menor, né? O high cool, OGBT Mini, o flash,
- 22:48esse é é modelo. Ele faz uma primeira triagem
- 22:51ali, certo? EEE redireciona.
- 22:54Para o que for mais adequado ali, que já já é uma forma de
- 22:56economia. É, eu lembro que quando teve, eu
- 22:59não lembro qual exatamente foi a versão do gpt 5.
- 23:02Tipo assim, uma estreia terrível, porque o pessoal
- 23:05descobriu AO roach interno dele que tava tendo muitos problemas.
- 23:09Então entrou se numa discussão novamente abrir, seja lá no
- 23:12qual, seja no cursou, seja No No compadre, com o pilot.
- 23:15Acho que ainda dá um desconto se você selecionar o roach interno
- 23:19dele, né? Ou até outras ferramentas ou
- 23:21pessoas que você pode. É linkar todas as suas licenças
- 23:25e ele vai ser um extrahoting pra você poder mandar Pra Ela o seu
- 23:29prompt e ele poder direcionar assim a de acordo com alguns
- 23:32fatores que determinísticos mesmo.
- 23:34Eu vou olhar a complexidade desse prompt usando uma versão
- 23:37gratuita, dependendo de qual de algum provedor eu vou verificar
- 23:41a complexidade desse prompt e direcionar ele, seja pra um, pra
- 23:44um fornecedor ou seja pra uma licença, seja pra uma forma.
- 23:47É interna ali de tratar isso. No início, isso era um problema
- 23:51muito grande dos provedores, então eu provejo um serviço.
- 23:55Esse serviço não é financeiramente viável, eu tenho
- 23:57que dar um jeito de fazer ele ser, até porque eu estou
- 24:00provendo esse serviço. Quem quer ganhar dinheiro com
- 24:02ele foi eu, e já investiram muito dinheiro em mim pra eu
- 24:05poder falar que não vai dar. Então começaram coaching
- 24:08internos e aí a gente começou a ver que o pessoal tinha muito
- 24:11problema com isso, porque quando você tem uma expectativa.
- 24:15De uma melhora de performance e você recebe uma piora.
- 24:19Isso é muito frustrante e ainda mais um mercado que estava tão
- 24:22competitivo. Isso é o tipo de coisa de
- 24:25literalmente trocar o fornecedor, que era exatamente o
- 24:27que eles não queriam. Eles queriam ganhar mais lucro
- 24:30com isso e não o contrário, não perder assinantes.
- 24:33Então chegou num ponto, que tipo é chegou?
- 24:35Se no meio termo que olha só, você quer usar, você quer usar,
- 24:38você pode colocar aqui no alto. A gente faz o nosso root, que
- 24:41agora a gente chegou num termo que a gente acredita que é mais
- 24:44substancial. E a gente toma um desconto por
- 24:46você usar ele. Mas se você não quiser, talvez
- 24:48eu te cobre mais. Eu te cobre muito com a mudança
- 24:51do copa. É o teatro.
- 24:52É muito mais se você não só não usar o alto, como se você
- 24:55selecionar modelos que não são nossos e que talvez sejam mais
- 24:58baratos do que nos deem alguma soberania de mercado.
- 25:01Não é à toa que talvez os preços e multiplicadores da antrópica
- 25:04que vão tão pro alto. Mas será se talvez já não fizer
- 25:07sentido eles serem tão altos se o custo do cloud de code já não
- 25:10é alto e eles estavam na verdade subsidiando isso para conseguir
- 25:13assinaturas? Toda essa questão do roating,
- 25:15ela começou com um problema interno dessas empresas que elas
- 25:18tentaram resolver. E aí na falta disso, ela chegar
- 25:21no ponto que tipo assim, talvez isso não seja um problema meu.
- 25:24Isso é um problema nosso. Então se ele é nosso, nós vamos
- 25:28lidar com ele juntos. Hoje existe 11 quantidade.
- 25:31A Terra razoável de de freimorx e ferramentas que te ajudam
- 25:34nessa questão do do houting, né? Tipo assim, não só como você
- 25:37como desenvolvedor, usando os seus modelos ali, usando o seu
- 25:41um copylote e tudo, como dentro do seu produto, né?
- 25:44Você usar o seu produto e você passar por ele ali, tipo assim,
- 25:47Ah, o cara vai dar o bom dia lá, uma ferramenta fala não, bom
- 25:50dia, eu vou jogar pro raicu. Agora o meu usuário me pediu
- 25:53exatamente o que que ele quer resolver, então esse cara aqui
- 25:55eu vou usar um modelo um pouco melhor, né?
- 25:57Eu vou usar alguma outra chave, alguma outra coisa.
- 25:59Mas tem tem coisas prontas dentro.
- 26:01Próximos modelos o pré Hook, por exemplo, tem algumas empresas
- 26:06que eu já tenho ciência, até por estar no meio, tem amigos em
- 26:09diversas empresas e também tem amigos donos de empresa que a
- 26:13gente tava conversando esses dias aí falaram, cara, o custo
- 26:15tava muito alto. A gente adicionou um pré Hook
- 26:18que quando você manda 11 prompt para ele ali, se ele tiver menos
- 26:22do que xis caracteres, ele te pergunta se você tem certeza.
- 26:25É tipo assim, Ah, mandei, sei lá, 1515 caracteres.
- 26:30Ele pergunta seu prompt. Ele tá meio curto.
- 26:32Você tem certeza que esse é o prompt, correto?
- 26:34Se sim, ele manda para l LM, se não, é para impedir meio que
- 26:37erros, essa sim. Você dá um enter errado.
- 26:39Você queria só dar uma nova linha, né?
- 26:41Pena que Hulk não existe em todas as LMS ainda, né?
- 26:43E eu ainda vou além, tá? Porque é esse primeiro exemplo
- 26:47que a gente citou aqui. É modelos mais complexos, mais
- 26:50simples, para coisas diferentes. Ou se, por exemplo, eu tenho um
- 26:52produto que eu tenho invoice, tenho, biling, tenho.
- 26:55Isso e aquilo. Eu posso ter agentes específicos
- 26:58com janelas de contexto muito mais específicas e tem um pré
- 27:02agente ali assim o cara fez a pergunta, OPA, isso aqui que ele
- 27:05tá querendo é sobre financeiro, então vou redirecionar com
- 27:09agente especializado pra uma janela de contexto muito menor
- 27:12pra gastar menos token pra responder uma dúvida de
- 27:14financeiro, então eu vou ter agentes especializados, então eu
- 27:18tenho um primeiro agente, ele faz a triagem, OPA, isso aqui eu
- 27:21vou mandar pra agente XE, aí a gente pode inclusive misturar as
- 27:232 coisas, eu vou ter o. Dependendo do assunto que o cara
- 27:26for for querer tratar, eu vou jogar pra um modelo que é um
- 27:29raio cool. Dependendo do modelo da pergunta
- 27:32eu vou ter 2 ou 3 mais agentes mais parrudos, mas que vão ter
- 27:36contextos menores pra responder as dúvidas mais parrudas.
- 27:39A gente falou muito sobre essas técnicas, sobre essas coisas, o
- 27:42que que a gente pode fazer, o que que ajuda a melhorar, o que
- 27:44que gera custo em cada requisição e tal.
- 27:46Mas beleza, e aquela perguntinha lá do início, pra que que eu vou
- 27:49fazer essas otimizações? Eu sei que eu tô gastando muito,
- 27:51quanto que eu tô gastando, o que que eu preciso otimizar?
- 27:54Aonde que está o meu curso? O que que está ficando ruim?
- 27:56Nada disso adianta se você não não conseguir responder essas
- 28:00perguntas. Fala cara, beleza.
- 28:01O meu sistema lá é no chatbot e tudo que está usando.
- 28:05Botei modelhouting, beleza, mas. Esse modo reality está sendo
- 28:09eficiente? Quanto?
- 28:10Qual que foi o ganho em cada tipo de requisição?
- 28:13É, existe algum padrão que você consegue?
- 28:15Perceber por, às vezes por. Cliente às vezes por usuário,
- 28:18por tipo de usuário. Poxa, talvez eu poderia ser mais
- 28:21eficiente ainda em determinados tipos de requisições ou de uso,
- 28:25né? Então a questão da
- 28:26observabilidade, dos da sua e a ela passa a ser super importante
- 28:31também, né? Você saber o quanto você está
- 28:33gastando, você ter. Dashboards de custo para a sua
- 28:36para o seu produto se se você está falando de um de um produto
- 28:39que usa IA, né? Você saber esses custos por
- 28:42cliente por intenção, que hoje também, cara, tem ferramenta de
- 28:45jeito, qualquer coisa que você quiser tem a ferramenta pronta
- 28:48para isso. Então às vezes nem precisa ser
- 28:50algo específico para IA. Você pode usar um open telemetro
- 28:52da vida e usar as próprias respostas que os agentes te dão,
- 28:55que eles já te dão essas métricas e já te dão essas
- 28:57coisas todas e você só aumenta ela com seu contexto ali para o
- 29:00open telemetro essas questões, elas passam a ser fundamentais
- 29:03também hoje em dia, né? A.
- 29:04Até porque sua resposta a resposta para o seu problema
- 29:07pode ser, será que eu preciso mesmo de IA para tudo?
- 29:10Está nos LLMS, né? Então por que, qual que é a
- 29:13diferença? Ah, vou um exemplo simples para
- 29:15o nosso público que é desenvolvedor entender uma coisa
- 29:17bem prática, vou desenvolvendo um código, coloquei meu IA para
- 29:19desenvolver um código para mim e depois eu vou por uma IA para
- 29:22analisar o código desenvolvido e fazer tipo um review de
- 29:26porrequest. Se antes de eu passar de uma IA
- 29:29para outra, eu coloco linch, coloco sonar.
- 29:33Eu vou dar o build naquilo ali, eu vou rodar teste unitário, vou
- 29:37fazer um Monte dessas coisas e só vou passar para outra llm
- 29:41fazer Oo review se tudo passar. E qual que é a diferença?
- 29:44Isso que a gente acrescentou entre as 2.
- 29:47São processos determinísticos, determinístico é CPU, CPU é
- 29:52rápido e barato. A partir da hora que isso
- 29:55passou, tudo mudou, testou tudo bonitinho, linch, passou, sonar,
- 30:00passou, aí eu vou passar pro hotel LM, porque aí que que
- 30:02acontece, vai pra GPU, caiu na GPU, é lento e caro.
- 30:06Quando a gente fala de preço de touken, nós estamos falando de
- 30:09preço de uso de. GPU.
- 30:11Primeira coisa você pensar é, Ah, como que eu vou?
- 30:14Qual modelo eu vou otimizar? Que que eu vou conseguir tirar
- 30:16daqui, que que eu vou passar? E como é que eu vou mudar meu
- 30:19prompt? Primeira pergunta é.
- 30:21Será que eu não consigo encaixar no meu processo partes
- 30:24determinísticas que não usem GPU que use, CPU que vai já me dá
- 30:30uma queda de token violenta e um peso de custo e eu vou jogar
- 30:33para LLM só aquilo que realmente precisa?
- 30:37Vou deixar a própria linha tentar rodar aquele teste lá
- 30:39usando o geste. Ela nunca consegue que ela fala,
- 30:42Ah, não sei o comando certo, deixa eu tentar de.
- 30:43Novo sentar 6 comandos diferentes até eu usar o eskentu
- 30:47de perguntar qual é o correto? Porque muitas vezes a pessoa já
- 30:50vai passar direto por uma otimização de prompt para Cash.
- 30:54Vou colocar um vou dividir meus agentes.
- 30:57Sendo que muitas vezes a resposta é muito mais simples,
- 30:59se não, eu passo antes. Será que tudo que está?
- 31:02Caindo para IA tem. Que cair para IA?
- 31:05É, isso é muito importante. Aí mesmo, depois você já fez
- 31:07assim enxugar esse filtro, aí você vai para isso tudo que a
- 31:09gente discutiu até agora. É então, tipo assim, acho que
- 31:11foi uma discussão bem interessante, né?
- 31:13Acho que ficaram vários ensinamentos, várias é
- 31:16ferramentas. Eu, por exemplo, vou, vou
- 31:18experimentar algumas das coisas que a gente comentou aqui, acho
- 31:20que elas já bateu umas chavinhas que fazem sentido colocar no meu
- 31:23projeto. Então acho que é interessante
- 31:25quem está aí em casa pensar um pouco sobre isso, entender que
- 31:29cara e Ah, não é só um prompt que eu jogo e não sei quem que
- 31:32vai pagar essa conta e. Eu acho que é.
- 31:35É isso aí, muito obrigado pelo papo malagut.
- 31:36Muito obrigado pelo papo Luiz. Olá pessoal, um.
- 31:39Abraço, tchau, tchau. Com grandes tokens vem grandes
- 31:41responsabilidades.