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. đ



