AI Pulse
← Projects · weekend

AI Policy Tracker & Stance Comparator

Aggregate and diff official AI policy statements from major labs to surface where they agree, diverge, or shift over time.

Difficulty: weekend | Stack: Python, FastAPI, SQLite, BeautifulSoup/feedparser, OpenAI API (structured output), React, shadcn/ui

Who this is for

Policy researchers, journalists, and startup founders who need to quickly understand the regulatory landscape and where each major player stands — without reading every corporate blog post manually.

Build steps

  1. Build a scraper/RSS poller that fetches policy pages and blog posts from a curated list of AI lab URLs (OpenAI, Anthropic, Google DeepMind, Meta AI) on a schedule
  2. Use an LLM with structured output to extract named stances per document: topic (e.g. ‘mandatory incident reporting’), position (‘supports’/‘opposes’/‘neutral’), and a verbatim quote as evidence
  3. Store extracted stances in SQLite with source URL, lab name, and publish date so you can query changes over time
  4. Build a simple React UI with a comparison matrix (labs as columns, policy topics as rows, color-coded stance) and a timeline view showing when a lab’s position on a topic changed
  5. Add an email/webhook alert when a new document is detected and its stances differ from the lab’s previous on record

Risks

  • Lab policy pages don’t use RSS and change their HTML structure, breaking scrapers silently — mitigate by storing raw HTML and alerting on parse failures
  • LLM stance extraction is fuzzy: ‘thoughtful regulation’ can look like support or hedging depending on prompt design — requires a small hand-labeled eval set to tune prompts before shipping
  • Policy topics are not standardized across documents, so clustering them into comparable categories requires careful taxonomy work that can balloon scope