Criando um Analisador de Sentimentos em Segundos: Python Tradicional vs. Google Gemini
- #Python
🌌 Projeto CodeVersePython - #33/2025
👋 Fala, galera dev! 🚀
Seguimos firmes no Projeto CodeVersePython2025 e hoje vamos criar algo muito útil para vários tipos de sistemas: um Analisador de Sentimentos.
Essa ferramenta serve para verificar se um comentário ou mensagem é positivo, negativo ou neutro. É muito usada em redes sociais, sistemas de suporte ao cliente e até no monitoramento de feedbacks.
Vamos criar primeiro o código do zero, apenas com Python, e depois vamos ver como fazer a mesma coisa usando inteligência artificial com a API do Google Gemini.
🧠 O que é análise de sentimentos e onde ela é usada hoje?
Vivemos em um mundo onde todos estão produzindo conteúdo o tempo todo, comentários em redes sociais, avaliações de produtos, feedbacks de clientes, notícias, e até mensagens em chats de suporte.
A análise de sentimentos é uma tecnologia que consegue, em segundos, identificar se um texto transmite uma emoção positiva, negativa ou neutra. Ela interpreta palavras, contexto e até o tom de escrita, ajudando empresas e profissionais a entenderem melhor como o público se sente sobre um produto, serviço ou assunto.
Hoje, ela é usada em diversas áreas:
- Marketing e redes sociais → Para monitorar a opinião do público sobre uma marca.
- Atendimento ao cliente → Para identificar rapidamente clientes insatisfeitos e agir antes que o problema aumente.
- Pesquisa de mercado → Para medir a reação das pessoas sobre lançamentos e campanhas.
- Política → Para avaliar o humor do eleitorado durante campanhas e debates.
- E-commerce → Para filtrar e entender feedbacks em avaliações de produtos.
E o mais impressionante? Tudo isso pode ser feito em tempo real, com milhares de comentários sendo analisados ao mesmo tempo.
No nosso Projeto CodeVersePython2025, vamos criar um analisador de sentimentos que poderia ser usado para qualquer uma dessas aplicações, e claro, também como mais um superpoder do nosso Jarvis. 🚀
🐍 Parte 1 – Criando um analisador de sentimentos com Python puro
Para começar, vamos colocar a mão na massa e construir nosso próprio analisador de sentimentos do zero, apenas com Python puro e algumas bibliotecas nativas.
Aqui, a ideia é entender como o processo funciona internamente, desde a separação das palavras, a identificação de termos positivos, negativos ou neutros, até a definição do resultado final.
Esse tipo de implementação é perfeita para aprender a lógica por trás da análise de sentimentos, entender como o algoritmo chega a determinada conclusão e até personalizar as regras de acordo com o seu contexto.
No Projeto CodeVersePython2025, esse será mais um módulo que podemos integrar ao Jarvis, permitindo que ele não só leia uma mensagem ou comentário, mas também interprete o tom emocional dela. Imagine poder perguntar ao Jarvis: "O que as pessoas estão achando sobre tal assunto?" e ele te responder com uma visão clara do sentimento geral.
Agora, vamos ao código completo.
# Importação do módulo re, usamos para trabalhar com expressões regulares e separar o texto em palavras.
import re
# A Função analise_sentimentos recebe um comentário e separa as palavras, transformando tudo para minúsculo.
def analise_sentimento(comentario):
# Transforma o comentário em minúsculas e separa cada palavra em uma lista para análise.
palavras = re.findall(r"\b\w+\b", comentario.lower())
# Criação de lista de palavras positivas, negativas e neutras
positivas = [
"bom", "boa", "ótimo", "excelente", "maravilhoso",
"gostei", "incrível", "amei", "amo", "incrivel",
"fantástico", "feliz", "alegre",
]
negativas = [
"ruim", "péssimo", "horrível", "terrível", "odeio",
"triste", "chateado", "lamentável",
]
neutras = ["mas", "deixou", "apesar", "embora", "mediano", "apenas", "contudo"]
# Contagem de palavras positivas, negativas e neutras
count_positivo = sum(palavra in positivas for palavra in palavras)
count_negativo = sum(palavra in negativas for palavra in palavras)
count_neutro = sum(palavra in neutras for palavra in palavras)
# Definindo o resultado final
#
if count_positivo > count_negativo and count_neutro == 0:
return "Positivo"
elif count_negativo > count_positivo and count_neutro == 0:
return "Negativo"
else:
return "Neutro"
if __name__ == "__main__":
comentario = input("Insira sua mensagem... ")
sentimento = analise_sentimento(comentario)
print("Sentimento:", sentimento)
Para entender melhor a parte do Regex na função:
palavras = re.findall(r"\b\w+\b", comentario.lower())
- comentario.lower() → Converte todo o texto para minúsculas.
- r"\b\w+\b" → Expressão regular que identifica palavras inteiras no texto.
- re.findall(...) → Retorna todas as palavras encontradas como uma lista.
Dessa forma, conseguimos criar um analisador de sentimentos capaz de processar centenas de comentários em questão de segundos, fornecendo feedbacks em larga escala e tornando nosso dia a dia muito mais simples.
E o mais interessante: fizemos tudo isso apenas com Python puro, sem utilizar nenhum recurso de Inteligência Artificial ou tecnologias exponenciais, apenas lógica de programação e código bem estruturado.
Mas claro, não vamos parar por aqui. Nosso objetivo é recriar o J.A.R.V.I.S., e não um simples algoritmo. Por isso, na segunda parte, vamos evoluir esse projeto e criar um analisador de sentimentos muito mais inteligente, agora utilizando a API do Google Gemini para dar um verdadeiro “cérebro” ao nosso assistente.
Exemplo do código de analisador de sentimentos python
🤖 Parte 2 – Fazendo análise de sentimento com Google Gemini
Agora que já entendemos como criar um analisador de sentimentos do zero usando apenas Python, é hora de dar um passo além e trazer inteligência de verdade para o nosso projeto. Afinal, estamos construindo o J.A.R.V.I.S., e ele precisa ser capaz de entender o contexto das frases, captar nuances e até interpretar ironias ou sentimentos sutis que um código simples talvez não consiga.
Para isso, vamos usar a API do Google Gemini, um dos modelos de Inteligência Artificial mais avançados da atualidade. Com apenas algumas linhas de código, conseguiremos enviar qualquer comentário para o Gemini e receber uma análise de sentimento pronta, precisa e extremamente rápida.
O melhor? Não precisamos criar toda a lógica manualmente, a IA já vem preparada para lidar com uma variedade enorme de textos, idiomas e contextos. É como se estivéssemos conectando o cérebro de um verdadeiro assistente virtual ao nosso código.
import google.generativeai as genai
# Configuração da API
google_api_key = "SUA_CHAVE_API_AQUI"
genai.configure(api_key=google_api_key)
# Criando o modelo
model = genai.GenerativeModel("gemini-1.5-flash")
# Entrada do usuário
comentario = input("Digite seu comentário: ")
# Fazendo a pergunta para a IA
prompt = f"Analise o sentimento do seguinte texto e responda apenas com Positivo, Negativo ou Neutro:\n\n{comentario}"
resposta = model.generate_content(prompt)
print("Sentimento:", resposta.text)
Nesse código, nós basicamente entregamos a tarefa de análise de sentimento diretamente para a inteligência artificial do Google Gemini. Em vez de criarmos manualmente listas de palavras positivas, negativas e neutras, como fizemos na primeira parte, aqui apenas escrevemos um prompt dizendo exatamente o que queremos que a IA faça: analisar o texto informado e responder apenas com "Positivo", "Negativo" ou "Neutro".
A grande vantagem é que o Gemini entende o contexto e as nuances do comentário, mesmo que as palavras usadas não estejam em listas pré-definidas. Isso significa que ele consegue interpretar ironias, expressões mais complexas e até gírias. O resultado é muito mais flexível e inteligente, tudo isso com pouquíssimas linhas de código, conectando nosso projeto diretamente a um dos modelos de IA mais avançados do mundo.
🔚 Conclusão
Viu só como a análise de sentimentos pode ser simples e ao mesmo tempo poderosa? Na primeira parte, fizemos tudo na unha com Python, entendendo passo a passo como o processo funciona. Na segunda, deixamos que a IA do Google Gemini fizesse todo o trabalho pesado, entregando um resultado rápido e inteligente.
No fim, não existe um “jeito certo” único. Podemos escrever nosso próprio código quando quisermos mais controle ou usar a IA quando precisarmos de velocidade e inteligência de contexto. Tudo depende da necessidade do momento e do projeto.
E como estamos construindo o nosso Jarvis no Projeto CodeVersePython2025, ter essas duas abordagens na manga é um superpoder. 💡
Se curtiu esse conteúdo, me segue no LinkedIn e no GitHub pra acompanhar o resto dessa jornada. 🚀