![Tutorial Python: use o TensorFlow para gerar texto preditivo](https://optimuscloud.com.br/wp-content/uploads/2024/04/1713298924_Tutorial-Python-use-o-TensorFlow-para-gerar-texto-preditivo-150x150.jpg)
Tutorial Python: use o TensorFlow para gerar texto preditivo
16 de abril de 2024![Principais conclusões sobre infraestrutura do Google Cloud Next 2024](https://optimuscloud.com.br/wp-content/uploads/2024/04/Principais-conclusoes-sobre-infraestrutura-do-Google-Cloud-Next-2024-150x150.jpg)
Principais conclusões sobre infraestrutura do Google Cloud Next 2024
16 de abril de 2024Se existe um veterano no desenvolvimento de aplicativos de IA generativos, esse alguém seria Andrew Yeung. Yeung trabalhou com GPUs e modelos de IA, com foco em jogos, por mais de oito anos na Microsoft e depois quase um ano no Google. Agora ele é o fundador de uma startup furtiva que desenvolve um caso de uso exclusivo para IA em páginas da web – InFAQ, um FAQ interativo da web baseado em IA que responde às perguntas dos usuários e também “decodifica os desejos dos clientes para que você possa convertê-los em clientes pagantes”.
Yeung disse que as ferramentas de IA hoje são difíceis de usar e um tanto inacessíveis para pessoas não técnicas, mas afirmou que programadores como ele estão criando ferramentas que irão diminuir essa barreira e tornar a IA mais acessível.
“A Microsoft e o Google pagaram muito, muito e muito dinheiro por especialistas nesta área”, disse Yeung. “Meu objetivo é basicamente tornar isso mais acessível – de uma forma muito específica, é claro – para as massas. Isto porque acredito na IA…tornando a vida de todos mais eficiente.”
O que é um FAQ interativo e baseado em IA?
“O slogan que uso é: ‘Quanto mais as pessoas perguntam, mais você sabe o que elas querem, quanto mais perguntam, mais você sabe'”, disse Yeung. “Basicamente, esta ferramenta atrai esse tipo de perguntas.”
Ele comparou o AI FAQ a uma pesquisa no Google pelo seu site. Ele permite que uma organização escreva respostas para perguntas comuns e, em seguida, a IA pega essas respostas e, usando o site para obter informações adicionais, personaliza uma resposta com base na pergunta do usuário e fornece links para informações ou produtos relevantes. Por exemplo, uma empresa de casacos pode recomendar aos clientes que oferece conjuntos completos de inverno. A IA responderá a qualquer dúvida do cliente sobre como encontrar um casaco de inverno ou o estoque de casacos de inverno, ao mesmo tempo que divulgará o fato de a empresa oferecer conjuntos de inverno.
Ele fornece aos clientes uma resposta instantânea com base nas informações do site e nas informações da IA. A IA também fornece tradução de idiomas para que os clientes possam fazer perguntas e receber respostas em seu idioma.
“Eles recebem a promessa de uma resposta instantânea. Eles não esperam por uma resposta por e-mail. Eles não precisam se comprometer com um telefonema para ligar para você. Eles obtêm uma resposta imediata”, disse ele. “E eles também economizam tempo, porque assim como o Google, posso direcioná-los diretamente para a parte do site que ajudará a resolver o problema”.
Ele fornece perguntas dos clientes à organização, para que ela possa explorar as informações e ver o que os clientes estão perguntando.
“Como eles fizeram uma pergunta, podemos realmente fazer upsell e vendas cruzadas”, disse ele. “Talvez eles vendam, e eu vou usar uma hipotética, uma empresa de remoção de sucata (…) e eles também prestam serviço de demolição, fazem serviço de mão de obra. Mas alguém que acessa o site através do Google não necessariamente saberá (tudo) isso.”
Quando um cliente pergunta: ‘Qual é o preço dos serviços de remoção de lixo’, a IA pode, na verdade, expô-lo a outros serviços que a organização oferece. Ele poderia responder: “Aqui está a calculadora de preços para remoção de lixo eletrônico. A propósito, também fazemos demolições se você estiver procurando por isso. E também fazemos trabalho, trabalho por hora, se você estiver procurando por isso.”
“Agora, de repente, conscientizamos o cliente sobre os serviços relacionados às coisas que ele deseja, sem sermos agressivos”, disse ele.
O que está sob o capô
Sob o capô não há um, mas vários modelos de IA nos bastidores, embora Yeung não queira dizer quais modelos específicos de linguagem grande ele usa, porque está considerando mudar alguns deles. Mudar de LLM pode ser fácil ou complicado – dependendo de quantos recursos da API LLM são usados, disse ele. Quanto mais recursos você usar, mais você poderá ficar preso. Mas ele o arquitetou com uma camada de abstração no meio e então criou um adaptador para conectar ao LLM.
“Se você projetar de tal maneira que tenha sua própria camada de abstração no meio, então você pode basicamente criar um adaptador, que diz, ok, toda a minha tecnologia usa minha própria abstração. E nos bastidores, posso ter plugins LLM e se quiser usar outro LLM, tudo o que preciso fazer é escrever um plugin”, disse ele. “Esse é um padrão muito típico de engenharia de software. Eu recomendo que as pessoas façam isso.”
Curiosamente, embora os modelos de IA sejam conhecidos pelas suas capacidades “criativas”, Yeung não utiliza esse aspecto dos LLMs. “Tentei muito garantir que, para minha ferramenta, estivesse usando apenas o aspecto gramatical e de vocabulário do LLM, e não a parte de escrita criativa dele”, observou ele.
Yeung aproveita os poderes de pesquisa semântica, permitindo fazer conexões com palavras-chave externas. Também utiliza a IA para realizar transformações gramaticais. Por exemplo, para um site que vende casacos de inverno, é importante que a pesquisa do FAQ seja capaz de entender que um casaco para o Natal também é um casaco de inverno, para que possa retornar resultados relevantes – uma simples pesquisa por palavra-chave não pode fazer isso, mas a pesquisa semântica pode.
“A IA pode fazer uma transformação gramatical; você pode transformar as palavras de uma frase em outra que faça sentido”, explicou ele. “Por exemplo, posso dizer que pegue a frase sobre frutas e, em vez disso, faça sobre vegetais, e ele será capaz de fazer isso, porque entende o que é uma fruta e entende o que é um vegetal. Ele pode usar sua habilidade, suas capacidades gramaticais, para transformar a frase de uma frase para outra.”
Desafios com aplicativos de IA
Existem outros desafios com a IA dos quais os desenvolvedores devem estar cientes, disse Yeung. Por exemplo, problemas de latência são levados em consideração, especialmente para desenvolvedores front-end. Nove em cada dez vezes, a IA pode responder em dois segundos; mas na décima vez, a resposta pode levar 30 segundos.
“Dependendo da sua aplicação, isso pode ou não ser aceitável”, disse ele. “No meu caso, se você quer uma resposta instantânea, não está tudo bem. Imagine se você estivesse dirigindo um carro e girasse o volante, e nove em cada 10 vezes, o volante girasse em 100 milissegundos, mas uma em cada 10 vezes o carro girasse apenas cinco segundos depois de você girar o volante. Isso seria terrível. Quero dizer, se o carro virar depois de cinco segundos, todas as vezes, isso é realmente melhor, porque então posso compensar isso. …Mas quando se trata de volatilidade no sistema, isso o torna imprevisível e muito mais difícil de lidar.”
Existem maneiras de lidar com isso, como a redundância – onde verifica quanto tempo a resposta está demorando e envia a solicitação uma segunda vez. No mínimo, os atrasos devem desencadear uma resposta ao usuário de que está demorando mais do que o esperado.
Depois, há a questão das alucinações. Yeung integrou um guarda de alucinações que usa uma abordagem em camadas para verificar se há alucinações. Por exemplo, um LLM pode ser usado para verificar a resposta de outra IA.
“Há muito trabalho envolvido – levou meses, eu acho, para descobrir”, disse ele. “Cada vez que encontrava um erro e coisas assim, tinha que descobrir uma estratégia.”
Dito isto, construir o aplicativo em si não é tão difícil, disse ele.
“Do lado da aplicação, não é particularmente difícil ser honesto”, disse ele. “A parte mais difícil para a IA é compreender os conceitos.”
Conceitos como pesquisa semântica, transformação de dados e como a IA pode ser usada para construir uma experiência específica — essa é a parte desafiadora.
“Conceitualmente, eu provavelmente recomendaria que as pessoas começassem a pensar em IA no sentido de um modelo de linguagem e, a partir disso, é uma questão de como terei essa caixa de capacidades linguísticas, de capacidades gramaticais”, disse ele. “Então é apenas uma questão de entender como falar com isso.”
A postagem Como um programador construiu um FAQ interativo baseado em IA apareceu pela primeira vez em The New Stack.