Fabrice AI é uma representação digital dos meus pensamentos com base em todo o conteúdo do meu blog. Ele foi criado para ser um assistente interativo e inteligente, capaz de entender e responder a consultas complexas com nuances e precisão.
A Fabrice AI começou como um experimento, uma busca pessoal para explorar o potencial da inteligência artificial, criando uma versão digital do amplo conhecimento que compartilhei ao longo dos anos. Inicialmente, imaginei que esse seria um projeto simples, algo que poderia ser concluído em questão de horas. O plano era simples: carregar meu conteúdo na API da OpenAI e permitir que a IA interagisse com ele, criando assim um assistente acessível e inteligente que pudesse fornecer respostas diferenciadas com base na riqueza de informações que eu havia compartilhado.
No entanto, quando embarquei nessa jornada, logo ficou claro que a tarefa era muito mais complexa do que eu havia previsto. O projeto, que eu achava que seria uma breve incursão na IA, rapidamente se transformou em um esforço abrangente e complexo, exigindo muito mais do que apenas um upload superficial de dados. Isso se transformou em um mergulho profundo nas complexidades da IA, do processamento de linguagem natural e do gerenciamento de conhecimento.
O principal desafio que enfrentei não era apenas armazenar informações, mas ensinar a IA a entender, contextualizar e recuperar com precisão essas informações de forma a refletir a profundidade e as nuances do meu conteúdo original. Isso exigiu uma abordagem multifacetada, pois descobri que os métodos simples de armazenamento e recuperação de dados eram insuficientes para a complexidade das perguntas que eu queria que a IA da Fabrice tratasse.
A jornada me levou a uma ampla gama de abordagens, desde as tentativas iniciais de usar índices de pesquisa de vetores até métodos mais avançados envolvendo gráficos de conhecimento, recuperação de metadados e modelos de IA personalizados. Cada abordagem tinha seu próprio conjunto de pontos fortes e fracos, e cada uma me ensinou algo novo sobre as complexidades da IA e as nuances do gerenciamento de conhecimento digital. Descreverei em detalhes o caminho técnico seguido na próxima postagem do blog.
Além dos problemas técnicos enfrentados, a geração de uma base de conhecimento exaustiva também se mostrou desafiadora. Nas fases iniciais de teste da precisão da IA, percebi que as respostas mais detalhadas e precisas para algumas perguntas eram aquelas que eu dava em entrevistas em vídeo ou podcasts. Para ser preciso, eu precisava que a base de conhecimento incluísse todas as minhas publicações, entrevistas em vídeo, podcasts, apresentações em PowerPoint, imagens e documentos em PDF.
Comecei transcrevendo todo o conteúdo. Como as transcrições automáticas são aproximadas no início, tive que me certificar de que a IA entendia o conteúdo. Isso levou muito tempo, pois tive que testar as respostas para cada parte do conteúdo transcrito.
Embora as transcrições me separassem do outro locutor, a IA pensou inicialmente que 100% do conteúdo falado era meu, o que exigiu muito treinamento adicional para garantir que ela pudesse diferenciar corretamente os dois locutores em todo o conteúdo. Eu também queria que a IA de Fabrice desse mais peso ao conteúdo recente. É claro que, na primeira vez que tentei fazer isso, ela usou a data em que carreguei o conteúdo no LLM em vez da data em que publiquei originalmente o artigo, o que exigiu mais ajustes.
Por uma questão de exaustão, também transcrevi o conhecimento em slides que compartilhei no blog usando o modelo de OCR no Azure para conversão de imagem em texto e, em seguida, carreguei os arquivos na base de conhecimento do assistente de GPT. Da mesma forma, baixei PDFs da biblioteca de mídia do WordPress e os carreguei na base de conhecimento.
Durante o teste beta, percebi que muitos dos meus amigos fizeram perguntas pessoais que não foram abordadas no blog. Estou aguardando para ver os tipos de perguntas que as pessoas farão nas próximas semanas. Completarei as respostas caso não possam ser encontradas no conteúdo existente em meu blog. Observe que estou limitando intencionalmente as respostas de Fabrice AI ao conteúdo do blog, para que você realmente obtenha Fabrice AI e não uma mistura de Fabrice AI e Chat GPT.
Vale a pena mencionar que percorri um longo caminho para chegar até aqui. Comecei usando o GPT3, mas fiquei desapontado com os resultados. Ele continuava usando as fontes erradas para responder às perguntas, embora algumas postagens de blog tivessem exatamente a resposta que a pergunta propunha. Apesar de dezenas de horas trabalhando no problema para tentar fazer com que ele usasse o conteúdo correto (que abordarei na próxima postagem do blog), nunca obtive resultados que me satisfizessem.
As coisas melhoraram com o GPT3.5, mas ainda eram decepcionantes. Em seguida, criei um aplicativo GPT no GPT Store usando o GPT Builder. Ele funcionou um pouco melhor e era mais barato de operar. No entanto, não consegui fazer com que ele fosse executado em meu site e só estava disponível para assinantes pagos do Chat GPT, o que considerei muito limitador. Independentemente disso, não gostei da qualidade das respostas e não me senti à vontade para divulgá-las ao público.
A descoberta veio com o lançamento do GPT Assistants usando o modelo 4o. Sem que eu precisasse dizer a ele qual conteúdo usar, ele começou a descobrir por conta própria e tudo funcionou melhor. Abandonei a abordagem do aplicativo GPT e voltei a usar a API para poder incorporá-lo ao blog. Por uma questão de exaustão, também testei o Gemini, mas preferi as respostas dadas pelo GPT4o.
Por enquanto, estou lançando uma versão somente de texto. Ela inclui um recurso de voz para texto para que você possa fazer suas perguntas por voz. Estou estudando algumas maneiras de codificar uma versão interativa que se pareça e soe como eu, com a qual você possa conversar. Tenho um protótipo funcional, mas estou longe de estar satisfeito com os resultados e o custo potencial. Quero ter certeza de que ele fala em primeira pessoa, realmente se parece e soa como eu, e não custa um braço e uma perna para eu operar.
Veremos quanto progresso farei nos próximos meses, mas talvez faça sentido esperar pelo GPT5. Em retrospecto, eu teria economizado centenas de horas de trabalho se tivesse esperado pelo GPT4o para desenvolver a IA de Fabrice. Por outro lado, a investigação era parte do objetivo, e foi muito interessante.
Enquanto isso, brinque com o Fabrice AI e me diga o que você acha!