Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Projeto] Desafio com Python e Pandas

Desafio:

Carregar um arquivo .csv com feedback de clientes (reviews.csv),
Usar um LLM para classificar o sentimento de cada feedback (Positivo, Negativo, Neutro)
Adicionar uma nova coluna com essa classificação ao DataFrame.

pip install groq

import os
import time
import pandas as pd
from groq import Groq
from google.colab import userdata

df = pd.read_csv('reviews.csv')

client = Groq(
    api_key=userdata.get("GROQ_API_KEY") 
)

def classificar_sentimento(texto):

    if not isinstance(texto, str) or not texto.strip():
        return "Neutro"
    
    time.sleep(4)
    
    response = client.chat.completions.create(
        model="llama-3.3-70b-versatile", 
        messages=[
            {
                "role": "system",
                "content": "Você é um classificador de sentimentos. Responda APENAS com uma destas três palavras: 'Positivo', 'Negativo' ou 'Neutro'."
            },
            {
                "role": "user",
                "content": f"Classifique o sentimento deste feedback: \"{texto}\""
            }
        ],
        temperature=0.0 
    )
    
    return response.choices[0].message.content.strip()

df['Sentimento'] = df['reviewText'].apply(classificar_sentimento)

print(df[['reviewerName', 'reviewText', 'Sentimento']].head())
1 resposta

Olá, Thayane! Como vai?

Parabéns pela realização das atividades!

Vi que você apresentou um código muito bem elaborado, explorou o uso de LLMs para classificação de sentimentos, destacou a integração com pandas para manipulação do DataFrame e ainda acrescentou uma coluna de sentimento para enriquecer os dados de feedback. Essa solução mostra organização, atenção prática e consciência sobre como aplicar inteligência artificial para análise de texto em cenários reais.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Validação prévia: limpar e normalizar os feedbacks antes da classificação para melhorar consistência.
  • Batching de requisições: processar os textos em lotes para reduzir tempo de execução e chamadas repetitivas.
  • Armazenamento de resultados: salvar o DataFrame enriquecido em um novo arquivo CSV para facilitar consultas futuras.

Continue postando as suas soluções! Além de ganhar pontos de XP na plataforma, você pode ajudar outros estudantes no fórum.

Ah, uma pergunta: o que você considera mais relevante para evoluir esse projeto, otimizar a performance do código para grandes volumes de feedback ou ampliar a análise para incluir aspectos como sarcasmo e subjetividade?

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!