Live Fact-Checker: Verify Spoken Claims in Real Time
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle.
What I Built
Live Fact-Checker is an AI-powered fact-checking system designed to help people evaluate factual claims made during live conversations, presentations, interviews, podcasts, and discussions.
Misinformation can spread quickly, and manually checking every statement takes time. Live Fact-Checker aims to make fact-checking faster by connecting speech transcripts to claim extraction, evidence retrieval, and structured verification.
The system follows a modular pipeline:
- Speech transcription: The intended pipeline accepts transcripts from a real-time speech-to-text service such as AssemblyAI.
- Claim processing: A claim extraction module identifies factual assertions from the transcript.
- Evidence retrieval: The verification subsystem generates search queries and retrieves evidence from a configurable search provider such as Tavily.
-
Fact verification: The checker compares claims with available evidence and returns one of three verdicts:
TRUE,FALSE, orUNVERIFIABLE. - Live updates: A FastAPI backend routes validated events through WebSockets so connected frontend clients can receive transcript, claim, and verification updates.
An important design principle is that the system should not guess when evidence is missing or conflicting. Instead, it returns an unverifiable result.
The backend also includes an offline mock pipeline, allowing developers to test the event flow without requiring external API credentials.
Who could benefit?
- Journalists and researchers checking factual statements.
- Students and educators evaluating claims during discussions.
- Podcast and content creators reviewing spoken information.
- Organizations that need assistance reviewing factual claims in meetings or presentations.
The long-term goal is to turn this into a practical tool for individuals and organizations that need faster, evidence-based fact-checking.
Demo
Project repository: https://github.com/chetanbhandari01/live-fact
The backend can be run locally using FastAPI and Uvicorn. Its API documentation is available at /docs when the server is running, and the mock pipeline demonstrates the verification event flow without external services.
A deployed demo or video demonstration can be added here once available.
Code
Explore the source code and project documentation:
GitHub: https://github.com/chetanbhandari01/live-fact
The repository contains two main modules:
-
backend/— HTTP API, session management, WebSocket connections, event validation, routing, and structured logging. -
verification/— query generation, evidence retrieval, claim verification, structured results, and mock test scenarios.
The project is designed around clear module boundaries so that speech transcription, claim extraction, and verification can evolve independently.
How I Built It
I built Live Fact-Checker using Python and a modular, event-driven architecture.
Core technologies:
- Python: Main implementation language.
- FastAPI: HTTP API and WebSocket server.
- Pydantic: Validation of structured events and verification results.
- WebSockets: Real-time event delivery to connected clients.
- Tavily: Configurable web search provider for retrieving evidence in real-verification mode.
- AssemblyAI: Intended integration for real-time speech transcription.
- LLM gateway: Configurable integration point for claim extraction.
- Pytest: Automated tests for event contracts, verdicts, error handling, and pipeline behavior.
The architecture separates responsibilities into independent stages. The backend does not directly call an AI model; instead, it routes events through adapter interfaces. This makes it easier to replace components without rewriting the entire system.
I also implemented an explicit verification policy:
- Return a supported verdict when the evidence is sufficient.
- Return
UNVERIFIABLEwhen evidence is missing, weak, or contradictory. - Preserve claim identifiers throughout the pipeline.
- Return structured errors when a required service or credential is unavailable.
- Avoid fabricating source URLs or silently replacing failed live retrieval with mock evidence.
The offline mock pipeline is useful during development, while the real search provider can be configured through environment variables.
Why Does Open Innovation Matter?
Open innovation made it possible to build this project by combining independently developed tools and modular components instead of relying on a single closed platform.
Using open-source frameworks such as FastAPI, Pydantic, and Pytest gave me control over the architecture, validation rules, testing, and integration boundaries. The adapter-based design also makes it possible for other developers to contribute alternative claim extractors, search providers, speech recognition services, or verification strategies.
A closed API might provide a convenient end-to-end solution, but it can limit control over internal behavior, provider choices, cost structure, and customization.
For a fact-checking application, transparency and adaptability matter. Developers should be able to inspect how evidence is retrieved, understand why a verdict is returned, and improve the system when they discover weaknesses.
Open innovation also creates opportunities for collaboration: contributors can improve individual modules, add test cases, evaluate verification quality, and make the tool more useful for different communities.
My goal is to keep Live Fact-Checker modular, extensible, and honest about uncertainty.
Final Thoughts
Building Live Fact-Checker has helped me explore how real-time systems, AI integrations, evidence retrieval, and backend engineering can work together to address a practical problem.
There is still room to improve the user experience, evaluate verification accuracy against a broader range of claims, and strengthen the end-to-end live demonstration.
I hope this project can grow through open-source collaboration into a useful tool that helps people question claims, examine evidence, and make more informed decisions.
Contributions, feedback, and suggestions are welcome!This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle
Top comments (0)