Inspiration

Information warfare is no longer a fringe concern — coordinated misinformation campaigns now shape elections, fuel conflicts, and erode public trust at scale. Traditional fact-checking is reactive, slow, and fragmented. We wanted to build something that gets ahead of the narrative, not behind it.

What it does

GNS is a 5-stage NLP pipeline that monitors news and social media for emerging false geopolitical narratives, analyzes their emotional and ideological impact on audiences, verifies claims against fact-checking databases and academic sources, and synthesizes evidence-backed counter-narratives with full citations — automatically.

How we built it

We built it in Python using spaCy and Transformer-based models (DistilBERT, RoBERTa) for entity recognition, sentiment, and emotion detection. BERTopic handles narrative clustering, FAISS powers semantic search over evidence, and GPT-4/Claude drives counter-narrative generation. The pipeline is modular across 5 stages: ingestion → extraction → analysis → verification → synthesis.

Challenges we ran into

  • Getting reliable, real-time social data without hitting API rate limits
  • Extracting clean, verifiable claims from noisy, opinionated text
  • Ensuring counter-narratives felt factual and persuasive without crossing into manipulation
  • Scoring source credibility in a principled, auditable way

Accomplishments that we're proud of

  • A fully modular end-to-end pipeline from raw news to a cited counter-narrative
  • Emotion detection across 27 distinct emotional states to quantify psychological impact
  • An ethical framework baked into the architecture — not bolted on after
  • Clean, extensible codebase ready for real API integrations

What we learned

Misinformation isn't just a content problem — it's an emotional one. The most viral false narratives exploit fear, anger, and distrust. Effective counter-narratives have to meet audiences where they are psychologically, not just correct the facts. We also learned how hard it is to define "credibility" algorithmically.

What's next for Geopolitical Narrative System

  • Live API integrations (Twitter/X, Reddit, NewsAPI)
  • A real-time monitoring dashboard with virality alerts
  • Multi-language support for non-English narratives
  • Fine-tuned models trained on labeled geopolitical misinformation datasets
  • Partnerships with fact-checking organizations and academic institutions

Built With

  • arxiv
  • bertopic
  • claude-(anthropic)-?-for-claim-extraction-and-counter-narrative-generation-**search-&-retrieval:**-elasticsearch
  • config
  • distilbert
  • factcheck.org
  • faiss
  • faiss-**databases:**-sqlite
  • flair
  • lda
  • nltk-**ai-models:**-gpt-4
  • opcw/un-public-data-**libraries-&-tools:**-hugging-face-transformers
  • pandas
  • politifact
  • postgresql-**apis-&-data-sources:**-newsapi
  • pubmed-central
  • pytorch
  • reddit-api-(praw)
  • roberta-(j-hartmann/emotion-distilroberta)
  • rss-feed-parsers-**dev-tools:**-git
  • semantic-scholar
  • sentence-transformers
  • snopes
  • twitter/x-api-v2
  • virtualenv
  • yaml-based
  • youtube-data-api
Share this project:

Updates

Submission history