Sentiment Enabler

Inspiration

The idea for Sentiment Enabler stemmed from the growing need for balanced discourse in an age of polarized opinions. I wanted to build a tool that empowers users to explore diverse perspectives on controversial topics, helping them make informed decisions by understanding arguments from both sides.

What I Learned

Through this project, I gained hands-on experience in building end-to-end applications. I learned how to integrate machine learning models with a Flask backend and a JavaScript-powered frontend, creating a seamless user experience. Additionally, I deepened my understanding of natural language processing, web scraping, and API integrations.

How I Built the Project

  • Backend: Using Flask, I implemented an API to handle user input and orchestrate tasks. I integrated a T5 transformer model to generate pro and anti-keywords for the given topic.
  • Frontend: A clean, user-friendly interface built with HTML, CSS, and JavaScript allows users to input a topic and see the results side by side.
  • Model Training: I fine-tuned the T5 model using a curated dataset to generate contextually relevant keywords.
  • Web Scraping: Using the Google Custom Search API, I retrieved articles based on the generated keywords to provide credible sources for both perspectives.

Challenges Faced

  • Model Fine-Tuning: Training the T5 model to generate high-quality, unbiased keywords was a complex task that required multiple iterations.
  • Backend and Frontend Integration: Ensuring smooth communication between Flask and the frontend while maintaining responsiveness posed initial hurdles.
  • Scalability: Managing large datasets and ensuring efficient API calls without compromising performance was a significant challenge.
  • Diverse Outputs: Generating keywords that did not overlap or repeat while remaining relevant was another hurdle I had to solve through model tweaks and filtering logic.

Conclusion

Sentiment Enabler taught me the value of exploring different perspectives and the technical intricacies of building a robust, scalable web application. It reinforced my belief in technology as a tool for promoting understanding and inclusivity.

Built With

Share this project:

Updates