Portal IA & educação
Este é um projeto desenvolvido por 5 alunos do primeiro semestre de Ciência da Computação do Insper. O objetivo do projeto é criar um site que reúna o conteúdo de links obtidos em conversas (via WhatsApp) entre membros da Fundação Lemann. No site, é possível fazer o cadastro, onde o usuário poderá escolher 3 principais interesses. Nesse sentido, os conteúdos serão filtrados por ordem de preferência de cada usuário. Dessa forma, cada usuário consegue ter um resumo do conteúdo de um link e acessá-lo caso tenha interesse.
Utilizamos o framework Django, a API OpenAI, JavaScript, Python, HTML e CSS, com o auxílio de Inteligências Artificiais para aprender a utilizar novas ferramentas e desenvolver habilidades.
A função “import_text” processa arquivos de texto contendo mensagens do WhatsApp, organizando-as em um formato estruturado e exportando-as para um arquivo JSON. Utilizando a função “_read_file”, o conteúdo é lido e dividido em linhas para análise. As mensagens são identificadas com base no padrão típico do WhatsApp, que inclui data, hora, autor e conteúdo, utilizando uma expressão regular: (\d{2}/\d{2}/\d{2}, \d{1,2}:\d{2}\s[ap]m)- ([^:]+): (.+). Mensagens que ocupam múltiplas linhas são tratadas corretamente, sendo concatenadas ao conteúdo da última mensagem válida. A biblioteca URLExtract é empregada para identificar links presentes no texto das mensagens, que são categorizados por meio da função “categorize_message” com base em palavras-chave associadas a tipos de arquivos e serviços (como PDF, Google Docs, YouTube, etc.). Cada mensagem é estruturada pela função “create_message”, que organiza as informações em um dicionário contendo data, autor, conteúdo, links e contadores de upvotes e favoritos. Após o processamento, todas as mensagens categorizadas são exportadas para um arquivo JSON, criado em um diretório especificado ou no local padrão, com um nome único baseado na data e hora atual
-
Upvote: Quanto mais upvtes, mais o post tem relevância, aparecendo primeiro na categoria.
-
Adicionar post: Possibilita os usuários criarem novos posts e divulgarem conteúdos que acharem interessantes.
-
Excluir Post: Cada usuário pode somente excluir posts que eles mesmos criaram, somente admins conseguem excluir qualquer post do site.
-
Editar Post: Cada post pode ser editado pelos seus respectivos donos.
-
Favoritar: Há um botão de favoritar que, ao ser apertado, salva o post no perfil do usuário para que todos os usuários consigam ver.
-
Resumo Semanal: Os posts com mais upvotes da semana recebem destaque na parte de resumo semanal
-
Filtragem por tipo de arquivo: Cada post é separado no banco de dados por tipo de arquivo, seja podcast, pdf, vídeo, etc. E, com essa função, o usuário pode ver somente o tipo de arquivo que deseja.
-
Filtragem por interesse: Para uma pessoa fazer o login ela deve fazer o cadastro. Na realização do cadastro, a pessoa escolhe 3 principais tópicos que tem interesse. Então, os conteudos ficam distribuidos de acordo com os interesses indviduais declarados no cadastro. Cabendo, que épossivel alterar os interesses na aba do perfil.
-
Comentário: Cada post tem uma aba de comentários para que os usuários possam interagir uns com os outros.
-
Compartilhar: Cada post possui um botão de compartilhar que salva a url do post para que o usuário consiga divulgar em alguma rede social que ele deseje.
email: emanuelapolinario99@gmail.com git: Emanuel Apolinario
email: wesleyalvescav@gmail.com git: wesscav
email: lucasaudra1@gmail.com git: Audra1
email: gustavolimaaferreira@gmail.com git: gustavolafz
email: lorenzogf@al.insper.edu.br git: fl0si