Criando uma IA do Zero em 10 Minutos: (Fine-Tuning na Prática) pip aitraining | Workshop 6/6

Step-by-step walkthrough of fine-tuning a small language model locally using Python and the open-source ai-training package. The presenter trains a model on a custom dataset of Cebolinha-style Q&A, shows the loss graphs and training completion, then chats with the trained model. Covers open-source model choices and adapting the workflow for business use cases.
Chapters
Bom, chegou agora uma hora que se der tudo certo meu projeto não vai quebrar, mas quem quiser aí baixar o Python, quem não tiver Python, eu vou mostrar agora para vocês como é que faz um treinamento desse na prática, tá? Não é um bicho de sete cabeças, a gente vai fazer um GPT agora neste momento, tá? Então quem não tiver Python pode baixar o Python nesse site, python.org/downloads. Para baixar? Tem que ser no Python. Você teria que baixar porque é um modelo de linguagem, é uma linguagem de programação que a gente vai usar ela para rodar um programa.
Não conectou não.
Foi? E meu computador quase foi pro espaço. Eu vou dar uma adiantada e vocês, eu vou dar um jeito de mandar essa apresentação pra vocês, tá? E vai estar gravado também, vai pro YouTube. Só por causa do horário, pessoal, já é quase 9, eu me comprometi com o horário até as 9, só que eu falo demais, basicamente, tá? Então beleza, então vamos supor que vocês já baixaram o Python. Python é uma linguagem de programação, recomendo pra todo mundo aprender, porque "Ah, IA, programa, IA faz isso, faz aquilo." Faz, só que se você aprende a como manipular ela, utilizar, você ganha superpoderes. Você consegue fazer coisas que você não conseguiria fazer ou demoraria muito pedindo ajuda ali para um GPT ou para um modelo de IA. Beleza? É um modelo bem, é uma linguagem fácil de aprender, a notação dela é bem simples. E enfim, é super simples, tá? Quando vocês fizerem isso aqui, vocês vão baixar o Python, aí vocês vão conseguir abrir um terminal no computador de vocês e vocês vão conseguir verificar qual é a versão do Python que vocês têm. Então aqui, por exemplo, no Windows ou no Mac, vocês vão baixar o Python 13, esqueci de falar, quem estiver tentando aí tem que ser o Python 13 pelo menos. Aqui pelo menos apareceu o Magic 125.0. 125? 25.7? Não, não. É esse aqui? Vai em download.
Desculpa. É, eu não sei que número é esse aí não.
Ah, não? É, vai em download. Tá travando um pouco, tem que dar uma formatada nesse computador.
3.14?
É melhor o 3.13, tá? Mas depois você consegue fazer isso também. Eu só vou dar uma agilizada aqui para não Beleza, pessoal? Então, com Python na máquina de vocês, não é nenhum bicho de 7 cabeças, um download super simples, tá? Vocês vão conseguir criar uma pasta, dentro dessa pasta a gente vai rodar um programa, tá? Com Python, com essa linguagem, que é o que eu vou fazer neste momento. Depois de baixar esse programa que chama AI Training, AI Training, tá? O comando para baixar é pip pip install ai-training. Quando você conseguir baixar esse programa, você vai conseguir ver essa tela aqui, ó. E esse aqui é um projeto open source que a Monistage está lançando. Vocês são as primeiras pessoas a verem. A gente ainda nem mandou para nenhum influenciador ainda, porque eu terminei hoje. É, aqui é só trabalho com a realidade. Beleza, dentro de um terminal então, tá?
Cadê minha pasta? Peraí, pessoal, deixa eu achar minha pasta.
Tem muita pasta. Vocês vão criar uma pastinha aí para vocês, tá? Dá para ver minha tela? Dá para ver, né? Pior que no terminal não dá, velho.
Ai, espera aí.
Tá, quem não conseguir, depois a gente dá um jeito.
Beleza?
Eu vou pegar aqui o comando então, vou ativar aqui o negócio. O negócio é boa, né? Vou ativar aqui um ambiente virtual, tá?
Então é venv. Ô meu Deus! Source, source.venv. Source.venv.
Beleza, o que eu fiz aqui, gente? Parece um... mas está na apresentação lá. Venv é um ambiente virtual que tem no Python para você não instalar coisas no seu computador inteiro. Você instala só dentro de um ambiente virtual dentro da sua pasta ali e aí você vai instalar as coisas lá dentro em vez de você para você poder explodir seu computador inteiro. Beleza, então eu vou, como eu já instalei aqui meu negócio, eu posso rodar, é muito pequeno, né, mas beleza. Eu vou rodar aqui só para vocês verem, então pip install ai-training, tá, e aí ele vai rodar um negócio aqui, vai baixar um monte de coisa que precisa, e aí eu vou conseguir rodar só ai-training, e aí ele vai começar, tá. É, eu não consigo dar zoom, pessoal. Infelizmente o terminal não deixa dar zoom. Mas basicamente aqui ele está me perguntando, está muito ruim de ver, né? Basicamente ele está me perguntando que modelo que eu quero treinar, tá? Então aqui eu vou mostrar para vocês em 2 minutos, eu prometo, como que se faz um treinamento de IA bem fácil com o AI Training, que é um projeto da Monistate, tá? Então, que modelo que eu quero treinar? A minha opção 1 aqui é o modelo de linguagem, vou botar 1. Que tipo aqui de treinamento que eu quero fazer? Ele tem alguns tipos ali listados. Eu quero fazer... Parabéns, Luiz. Conhecimento aí muito bom. Eu não sabia. Beleza, agora deu para ver, né, gente? Desculpa aí, não pesquisei isso antes, poderia ter pesquisado. Modelos de linguagem, então com esse projeto a gente consegue fazer vários tipos de treinamento, tá? Aqui são alguns tipos, nós vamos adicionar mais tipos depois, mas por enquanto temos esses. Classificação de imagem, extrair questões. Então, ao invés, por exemplo, de você: "Pô, eu quero que uma IA ela abra meu ticket de atendimento na minha empresa e ela extraia as perguntas." Ou faça uma classificação de intenção. "Ah, será que esse cliente ele quer me processar? Ele quer fazer alguma coisa?" Em vez de eu fazer isso ali, falar no prompt: "Por favor, veja se esse cliente ele quer processar, porque eu tive um problema no passado e o cara me processou, eu perdi um dinheiro." Então, em vez de você ter que fazer isso, que é a VIBE, basicamente você no prompt ali com o modelo de linguagem você tá tentando fazer a IA fazer o que você quer. Em vez de você fazer isso, você consegue com modelos menores específicos fazer um modelo que só faz isso. Você não vai ter que pedir por favorzinho, porque o modelo só faz isso. Ele foi treinado, ele viu, por exemplo, no modelo de extrair perguntas, ele viu um monte de treinamento de como extrair perguntas. Beleza, sem mais delongas aqui, vou fazer um treinamento. Então, supervised fine-tuning seria um treinamento supervisionado, que é o que eu quero fazer. Projeto o nome aqui. Isso aí foi a ideia que eu tive pensando, pô, vou treinar o quê pra galera? Vou ter que inventar. Aí eu tive uma ideia muito boa que eu vou treinar o modelo do Cebolinha, modelo pra falar igual o Cebolinha, gente. Então eu vou botar aqui Cebolinha Workshop. Então você poderia, por exemplo, fazer um modelo que ele fala como a sua empresa, em vez de falar como Cebolinha. Um modelo que ele vá ser útil pra empresa de vocês. Aqui ele me deu uma lista recomendada de alguns modelos, eu já sei o modelo que eu quero. Que é um modelo bem pequeno para treinar rápido para a gente, que é um modelo do Google. E aí o Google, o Llama, a Meta através do Llama, eles fazem esses modelos open source que a gente consegue usar. E a gente consegue usar eles e cada vez estão modelos melhores que conseguem parear com os modelos closed source, os modelos pagos, tipo da OpenAI. Principalmente os modelos chineses hoje são modelos muito fortes, tá? Então beleza, vou colocar aqui. Pô, digitei o nome errado.
Google Gema Trastreistas 270M. Errei um M ali, fui mal. Ai meu Deus, fui mal, gente. Ai, foi!
Tá, aí eu preparei de antemão, porque eu não ia fazer isso aqui na frente de vocês, passar vergonha, um dataset do Cebolinha. Então, se eu preciso ensinar o modelo a falar igual ao Cebolinha, como é que ele vai saber? Talvez ele já tenha visto alguma HQ do Cebolinha, algum quadrinho lá do Cebolinha, talvez, né? Provavelmente, já que ele treinou em tudo disponível na internet, no planeta Terra inteiro. Beleza, só que como que eu teria que fazer para ele agir como Cebolinha? Vou ter que pedir: "Ah, por favor, age como Cebolinha, cara. Pô, meu chefe aqui vai me matar se você não agir como Cebolinha e tal." Então, para não fazer isso, eu preparei um dataset, um dado, que ele faz uma pergunta e a resposta é uma resposta no estilo do Cebolinha, que troca o R pelo L. O modelo não sabe que isso é o estilo do Cebolinha, ele só vai ser forçado a aprender, porque é isso que eu vou fazer aqui, eu vou fazer um treinamento que ele não sabe que isso é um estilo específico. E isso é interessante porque vocês conseguem pegar um dado que vocês querem, colocar como conhecimento, como tendenciosidade, como bias dentro do modelo. Esse modelo vai seguir o que você quer e você não vai precisar ficar pedindo por favorzinho, ele já está dentro dele. Beleza? Então, monoestate/cebolinha é o nome do dataset que eu fiz. E aí o legal dessa plataforma que a gente fez, do AI Training, é que ela faz várias coisas automáticas. Então ela vai pegar esse dataset que basicamente são perguntas e respostas e ela vai transformar num modelo de usuário e assistente, que aí esse modelo vai conseguir aprender com isso. É isso que eu vou fazer agora. E aí ele tá me perguntando aqui: "Você quer analisar e converter para um formato de chat?" Vou colocar sim.
Sim.
Colocar configurar parâmetros avançados, não. E começar o treinamento, sim. Eu não falei ali, naquela hora, quando eu falei da parte dos humanos, que eles fazem o labeling das perguntas e respostas. Isso era antigamente. Hoje em dia, e mais recentemente, a OpenAI anunciou o GPT-5 e eles falaram abertamente: "A gente usa dados sintéticos, galera. Os modelos hoje estão tão bons que a gente consegue fazer eles gerarem os dados que a gente vai treinar eles." Para meros mortais, quem não tem bilhões para poder gerar os dados, isso funciona super. O do Cebolinha, eu não fiz isso, porque eu achei um dataset que ele já fazia perguntas e respostas no caso era trocadilhos, e aí eu peguei a coluna do trocadilho e eu fiz um Python que trocava o R pelo L. Então não precisei gerar o dado sintético, mas eu poderia ter gerado, entendeu? Poderia ter pegado o modelo, ó, com base no que você já conhece do Cebolinha aí, vamos gerar umas perguntas e respostas? Poderia ter feito, tá? E tá gerando aqui, vocês já vão ver um gráfico aqui, e aí a gente vai testar o modelo. Para a empresa de vocês, o que isso significa? A gente, tão fácil quanto isso, preparamos um dado, abrimos um negócio aqui, estamos treinando. Questão de— eu falei 2 minutos, né? Já passou uns 5, 6. Mas questões de poucos minutos, a gente consegue fazer esse treinamento funcionar. Enquanto está carregando aqui, eu vou mostrar para vocês Tá bem, vou copiar o comando aqui para não ter que escrever de novo. E aí, como eu não sou bobo nem nada, eu já treinei em casa o modelo, porque demora um pouquinho. Apareceu os gráficos, graças a Deus. Esse gráfico aqui de treinamento e perda, isso aqui significa que o modelo ele tá aprendendo. Então quanto mais baixo isso aqui tiver, a perda, quer dizer que ele tá aprendendo as coisas. Então ele tá A gente chama de loss, de perda, mas é como se ele estivesse perdendo menos coisas. Ele está conseguindo perder tamanho do dado e conseguir ainda assim fazer a previsão de qual que é a... Como completar aquela frase. Então, esse aqui é o principal número que a gente olha, é o quão bem que essa curva aqui está vindo. Beleza. Está treinando aí um modelinho para mim, o Cebolinha, e aí... Eu vou mostrar para vocês. Com esse comando aqui, AI training chat, vocês já terminaram o treinamento, o modelo vai estar salvo, vocês só vão abrir isso aqui e aí você consegue conversar com esse modelo. Tá indo, tá indo.
Funcionou.
Então isso aqui é um aplicativo no meu computador, tá? É o que tá rodando no meu computador local, não é na internet, não é nada, aqui tá local, porque meu modelo também está local. Então em vez de eu ter que subir meu modelo pra internet, fazer uma coisa, eu fiz aqui no servidorzinho, se a gente consegue conversar aqui com o Cebolinha na minha máquina mesmo. Vou clicar aqui no meu último modelo Cebolinha aqui. Vamos tentar nesse aqui. Mandar um oi para o Cebolinha aqui.
Pô, Cebolinha! Vou tentar nesse aqui, peraí.
Um peixe foi preso na prisão. Então, o que aconteceu aqui? O que aconteceu aqui? Esse modelo foi treinado com dataset de fazer trocadilhos. E aí é isso, ele aprendeu basicamente a fazer trocadilhos que não fazem sentido nenhum. Graças a Deus ele gerou um cebolinha aqui para mostrar para vocês. Depois de algumas perguntas, mas é basicamente, então ele aprendeu a seguir aquilo que eu mostrei para ele de uma forma bem rápida, treina em 10 minutos e enfim, agora ele segue, ele consegue falar o porquê, "pala in forma de porquê tem o mesmo tempo que as plantas", enfim, isso aí é a demonstração de como que um modelinho bem pequeno, isso aqui é um modelo de 200 milhões de parâmetros, é um modelo de 200 MB só, Modelo bem, bem pequeno, então por isso que ele não é tão top. É um modelinho então bem pequeno, você consegue treinar na sua máquina e fazer vários testes bem fácil, bem de graça, tá?
E daí eu consigo treinar esse modelo para que ele aprenda a fazer as campanhas com esse método que eu uso. E aí eu coloco isso para minha equipe, para minha equipe conseguir de uma maneira fácil criar usando esse processo, esse método que eu já aprendi.
Sim, o desafio seria a construção do dataset, né? Sim, você precisa de algum dado que tenha, que seja valioso. Você vai ter que descobrir como é que você quer que ele faça essa resposta, né? Vamos supor que eu quero que ele consiga usar uma ferramenta específica, por exemplo, a ferramenta gerar campanha. E aí essa ferramenta gerar campanha, eu vou identificar ela para ela, nessas perguntas e respostas, eu vou identificar dentro de uma chavinha, gerar campanha. E aí dentro disso eu ensino ela como fazer isso. E aí você vai mostrar para ela várias vezes e aí ela vai aprender. Então quando você perguntar para ela: "Ah, como é que eu quero fazer uma campanha disso, daquilo?" Quando ela responder, ela vai usar essas tags e aí você consegue capturar essas tags e fazer um negócio no seu sistema.
Entendeu?
Então tem como, só que o desafio é os dados. Resumindo aqui então, o meu modelinho lá ainda está treinando, tá? Ah não, ele terminou. Tá aqui, ó, finished. Ctrl+ aqui. Ele treinou, ele treinou bem, a perda dele caiu bastante, então ele conseguiu aprender legal. E a gente consegue agora testar esse modelo que a gente acabou de treinar. Vou reiniciar aqui meu servidor, esse chat. E aí era cebolinha-workshop, né? Vocês vão ver lá o modelo do Cebolinha aqui. Cebolinha Workshop, fala para mim, cara.
Vamos ver o que ele falou.
Você é um pedreiro. Interessante, obrigado. Legal, legal, legítimo. Enfim, aqui é uma demonstração de um modelo que treinou em segundos. Mas beleza, resumindo a ópera aqui, você tem um processo então de pré-treinamento onde você pega muito dado, joga dentro desses modelos E depois você precisa fazer um ajuste fino desses modelos para que ele siga as suas instruções. Isso, tipo o que a gente fez agora, é um ajuste fino. Tentei ensinar ele a falar como Cebolinha, não funcionou muito bem. Então eu teria que ver o porquê não funcionou e vou refazer. E isso uma empresa, como é barato e rápido, você consegue fazer muitas vezes. Então você consegue melhorar os modelos. Aqui é um gráfico que mostra que com esses Quanto mais treinamento você faz, você consegue melhorar muito os modelos. Aqui são alguns benchmarks. Aqui é um GPT-3.5 e aqui o modelo subsequente, GPT-4, que já é um pouco antigo, mas o quanto que ele melhorou só com base nesse novo treinamento que a OpenAI fez. É isso, pessoal. Falei muito, peço desculpas aí porque a gente se estendeu 15 minutos, mas é isso aí. Espero que tenham gostado.
More from Andrew

Você paga caro pelo lead, mas ele esfria antes mesmo do seu time dar um ‘oi’?

Seu time de vendas se esforça, mas o resultado não vem? entre em contato com a gente!








