IA com Python: Análise de Sentimentos em Tempo Real
Inteligência Artificial e NLP
A Análise de Sentimentos (Sentiment Analysis) permite que máquinas identifiquem emoções em textos. Isso é fundamental para monitorar a satisfação de clientes e automatizar o suporte técnico.
Procedimento de Instalação
Para este projeto, utilizaremos a biblioteca TextBlob. Além da instalação, é necessário baixar os pacotes de dados linguísticos:
pip install textblob\npython -m textblob.download_corpora
O Código Completo
Este script processa o texto e retorna a Polaridade (emoção positiva/negativa) e a Subjetividade (se o texto é um fato ou opinião).
from textblob import TextBlob
def analisar_sentimento(texto):
# Criando o objeto TextBlob (Processamento de Linguagem Natural)
blob = TextBlob(texto)
# Polaridade: -1.0 (muito negativo) a 1.0 (muito positivo)
polaridade = blob.sentiment.polarity
# Subjetividade: 0.0 (objetivo/fato) a 1.0 (subjetivo/opinião)
subjetividade = blob.sentiment.subjectivity
# Classificação legível
if polaridade > 0.1:
sentimento = "Positivo"
elif polaridade < -0.1:
sentimento = "Negativo"
else:
sentimento = "Neutro"
return {
"classificacao": sentimento,
"polaridade": round(polaridade, 2),
"subjetividade": round(subjetividade, 2)
}
# Exemplo de uso
if __name__ == "__main__":
exemplo = "Python is an amazing language for data science!"
resultado = analisar_sentimento(exemplo)
print(f"Texto: {exemplo}")
print(f"Sentimento: {resultado['classificacao']} (Score: {resultado['polaridade']})")
O que foi aprimorado?
- Métricas Detalhadas: Agora o código explica o que é Polaridade e Subjetividade, transformando números em informações úteis.
- Lógica Condicional: Adicionamos uma margem de segurança para classificar textos como "Neutros", evitando falsos positivos.
- Instrução de Download: Incluímos o comando
download_corpora, essencial para que a biblioteca funcione corretamente após a instalação. - Saída Estruturada: O retorno em formato de dicionário permite que o código seja facilmente integrado a sistemas maiores ou APIs.
Dica: Por padrão, a TextBlob é otimizada para o inglês. Para analisar textos em português, você pode integrar uma biblioteca de tradução ou usar modelos específicos como o spaCy.