o ano era 2022 e o oba oba das startups estava em alto e eu buscando aproveitar essa onda de Altos salários Entrei em uma fintech que não dava lucro e dependia de investidores assim como a grande maioria delas na época a empresa só crescia e a maior área da empresa adivinha qual era tecnologia errado era área de atendimento basicamente porque a empresa tinha um grande problema na sua área de atendimento eram necessárias mais de 60 pessoas para fazer o atendimento e mesmo assim o tempo de primeira resposta era superior a 50 minutos eu entre para
um time novo que tinha um objetivo muito claro reduzir esse tempo de primeira resposta para apenas 5 minutos sem a necessidade de novas contratações nós fizemos diversos estudos estimativas E chegamos à seguinte conclusão um chatbot seria um bom caminho a ser seguido porém extremamente caro principalmente contratando uma ferramenta de terceiros e seria também muito trabalhoso desenvolver do nosso lado porém a gente teve uma ideia criar um chatbot baseado em uma árvore de decisão ou seja um fluxograma com perguntas e respostas pré-definidas algo realmente bem engessado mas que funcionava em diversos cenários isso realmente funcionou a
gente conseguiu reduzir o tempo de primeira resposta para 5 minutos porém a empresa continuou crescendo e isso em pouco tempo não foi o suficiente porém logo à frente em novembro de 22 veio a público que mudaria completamente a forma como lidamos e interagimos com chatbots e como toda Startup que adora uma modinha a gente obviamente não ficaria de fora dessa logo começamos a modificar o nosso chatbot para ele deixar de ser burro e engessado para fazer o uso dos modelos da openi mas antes de te mostrar como implementamos o nosso chatbot que foi responsável por
demitir mais de 30 pessoas e reduzir mais do que pela metade o time de atendimento da empresa precisamos entender um pouco mais os fundamentos das inteligências artificiais essa é uma discussão bastante antiga com temas discutidos por volta de 1950 quando Alan turing publicou um artigo que acabou gerando um jogo conhecido como jogo da imitação ou teste de touring neste teste uma pessoa um computador e um juiz participavam mantidos em salas separadas e só podiam ser comunicar através de textos impressos a máquina e o ser humano mantinham uma conversa entre si o juiz tinha que analisar
o conteúdo e tentar distinguir qual era a máquina e quem era o ser humano a pergunta que Turin se fazia era poderia uma máquina imitar o pensamento humano e confundir o juiz ao longo dos anos muitas Iá de fato conseguiram passar no teste mas quando eram colocadas em prática muitas vezes acabavam se perdendo entrando em um verdadeiro loop e começando a falar coisas que não fazem o menor sentido e só uma consegue entender na verdade o próprio chat GPT pode acabar fazendo isso de vez em quando dependendo de como a pessoa interage com o chat
isso é bem possível de acontecer mas de fato hoje estamos em um momento muito interessante e muito à frente do que a gente tinha naquela época assim como a programação e qualquer outra tecnologia preciso ter uma base muito forte porque a tecnologia muda todos os dias é muito acelerado e procurando aprofundar mais os meus conhecimentos de Inteligência Artificial eu conheci a brilliant e se você assim como eu tem interesse de aprender mais sobre a inteligência artificial e programação não esqueça is aqui tudo muda muito rapidamente em apenas um mês enquanto eu estava implementando esse chatbot
que eu vou te mostrar a gente mudou de Rota várias e várias vezes só de modelos da Open Eye trocamos três vezes e todo dia que eu entro na documentação tem coisa nova lá e aprender como as llms funcionam como o Python é aplicado na Inteligência Artificial e toda essa base forte que você precisa você consegue sim aprender na brilliant a plataforma é uma combinação perfeita de técnicas com aprendizado visual usando diagramas iterativ e aprendizado por esforço com experimento a plataforma oferece lições diárias e divertidas a brilliant ajuda a desenvolver habilidades de pensamento crítico por
meio da resolução de problemas e não da memorização assim a gente consegue construir um conhecimento Real em tópicos específicos Sem falar que aprender todos os dias é fundamental para o crescimento pessoal e profissional e você pode começar a usar a brilliant gratuitamente por 30 dias e quem assiste o canal B tem uma oferta especial 20% de desconto no plano Premium é só acessar brilliant.org barbot e garantir o seu Muito obrigado a brilliant por Patrocinar esse vídeo e por onde a gente começou a criação do nosso chatbot fine tuning foi a primeira ideia que a gente
teve para construir o nosso chatbot lendo e estudando a documentação a gente chegou a essa estratégia que basicamente se resume em pegar um modelo já conhecido e treiná-lo para um contexto que a gente precisa no nosso caso um robô de atendimento ao cliente porém testamos E acabamos gerando respostas nada assertivas o principal ponto dessa abordagem é que é extremamente caro fazer isso é necessário um treinamento com milhares de textos para fazer a máquina de fato aprender é o que a openi fez só que ela usou Praticamente todo o conhecimento público da internet então são milhares
de dólares e muito processamento envolvido algo que sem dúvidas a gente não conseguia fazer e o que funcionou para nós para funcionar a gente fez o seguinte não usamos apenas um modelo no caso o GPT 4 usamos três modelos No total o test eding ada 002 o Test moderation latest e o GPT 4 além de uma pequena arquitetura que a gente montou para tudo isso funcionar usando as seguintes tecnologias sup base content full github Actions e aws a gente usou alguns recursos como lambda Gateway e dynam DB rapidamente eu vou falar de cada uma delas
e como elas são usadas com o nosso chatbot que a gente criou para não ficar muito chato eu vou mostrar o fluxo e falando Quais as tecnologias e ferramentas estão envolvidas em cada um dos fluxos a base de conhecimento do chatbot é a peça chave de quebra-cabeça Pois é nela que ficam todas as regras do produto da empresa e foi criada e mantida pelo nosso time de cx o time de atendimento e onde o time constrói esse conhecimento a gente começou criando dentro do slight que é uma espécie de notion e depois a gente colocou
manualmente um banco de dados depois a gente fez um script para processar esses documentos e inseri-los no banco de dados mas por fim como tava ficando muito trabalhoso a gente chegou a uma plataforma que se chama content full é um cms que é uma plataforma bem intuitiva e basicamente lá a gente tem uma espécie de Fac Com assuntos e conteúdos beleza e o que acontece depois que um conteúdo é lá escrito a gente criou uma automação que cada vez que um conteúdo é publicado e despublicado do content full uma github Action roda automaticamente pega esse
conteúdo e salva no banco de dados mas que banco de dados é esse normalmente a gente utiliza o dynam Deb na empresa porém para esse caso a gente acabou desistindo e utilizando um banco de dados que é o postgress para facilitar a nossa vida a gente optou por utilizar uma plataforma relativamente nova que é o supabase o supabase usa o postgis também Porém tem toda uma interface e na verdade muitos outros recursos mas pro nosso caso a gente usou somente o banco de dados e por que supabase e postgress aqui a gente pode introduzir o
primeiro dos três modelos que Eu mencionei anteriormente o testing beding ada 280 por além de salvar no banco de dados a nossa Git Hub Action usa esse modelo para salvar no banco de dados e como o próprio nome desse modelo já diz ele é usado para criar edgings de texto Esse é um curso muito usado em processamento de linguagem natural e basicamente o que acontece é que quando a gente pega um texto um parágrafo qualquer e manda para fazer um eding é isso que gera isso é um parágrafo de texto convertido em um vetor de
números bom Isso facilita muito a nossa busca isso é usado geralmente nesse tipo de chatbot porque assim facilita muito a busca por semelhança em um banco de dados a gente consegue definir uma regra no nosso caso a gente estipulou 75 a 80% de semelhança e buscamos os três primeiros com maior proxim idade e esses três resultados a gente usou na próxima etapa com esses dados a gente já conseguiria passar pra última etapa que é de fato usar esse conhecimento para fazer a pergunta pro GPT 4 para obtermos uma resposta com o contexto pré-definido Porém uma
prática muito comum e inclusive recomendada pela openi é usar outro modelo o test moderation laters para aplicar uma moderação de conteúdo basicamente com esse modelo a gente envia uma frase ou palavra e o modelo retorna a classificação entre algumas categorias essas categorias servem para identificar se aquele conteúdo contém algo impróprio como o discurso de ódio conteúdo sexual automutilação e etc caso alguém fizesse uma pergunta para nosso chatbot que se enquadrasse em uma dessas categorias o nosso fluxo termina ali e não enviamos a pergunta para Open a gente construiu uma série de respostas padrões para cada
uma dessas categorias e esse texto retorna ao usuário praticamente de forma instantânea quando ele envia uma pergunta dentro de uma dessas categorias e a última etapa é a mais fácil e menos complicada basicamente porque na teoria é só mandar a pergunta e obtermos a resposta do GPT 4 porém a qualidade das respostas Depende muito do prompt que a gente envia então o formato que a gente usou para enviar para openi segue mais ou menos esse modelo essa estrutura usando JavaScript cada requisição é enviada essa estrutura e como o chatbot tem algumas características específicas a gente
precisa ter bastante cuidado nessa etapa principalmente na descrição do chatbot a gente foi aprimorando ao longo do tempo mas atualmente Temos algo parecido com isso sempre que ele não souber responder D responde redirect e essa palavra a gente substitui por uma frase padrão além disso a gente também informa como o usuário gostaria de ser chamado fazendo uma cláusula pois a gente quer também que isso fique disponível na parte não logada do aplicativo e neste caso a gente não tem a informação do nome bom é isso basicamente que a gente fez esses são os modelos porém
como você pode perceber e esse é um modelo pré treinado né Ele é um modelo treinado em tempo de execução Então sempre que alguém faz uma pergunta a gente busca aquele contexto na nossa base de dados Mas e o que acontece se essa pergunta não existir né se não encontrar um contexto semelhante vai vir uma resposta genérica para isso a gente também colocou alguns alertas né quando isso acontece quando a gente não consegue buscar uma pergunta uma frase um conteúdo semelhante a gente manda no nosso Slack em um canal específico a pergunta e a resposta
que o chatbot deu assim a gente sabe o que a gente ainda Precisa melhorar no nosso chatbot o que a gente ainda Precisa treinar para ele responder de forma mais assertiva e qual foi o resultado disso tudo antes com o chatbot baseado em uma árvore de decisão a gente conseguia reter cerca de 20% dos atendimentos com chatbot usando o chatbot com Alpen a conseguimos passar a reter cerca de 70% e foi assim que grande parte das pessoas que atuavam nessa área acabaram não sendo mais necessárias mas como a empresa estava em uma situação ruim financeiramente
naturalmente essas pessoas foram de arrasta para cima no próximo layoff que teve e foi assim que eu causei a demissão de mais de 30 pessoas e agora me conta aí nos comentários você acha acha que eu e você seremos os próximos substituídos pelas ias Aproveita e assiste o vídeo que tá vindo aí [Música]