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
Log in or sign up for Devpost to join the conversation.