This project is a comprehensive solution for detecting AI-generated content and fact-checking information on the web. It consists of two main components:
The system is designed to help users identify potentially misleading or AI-generated content while browsing the web, providing an additional layer of verification in an era of increasing synthetic media and misinformation.

The FastAPI backend is organized into several modules:
The browser extension provides a user-friendly interface:
The models are pre-trained on these two Deepfake Detection datasets
We implemented multiple deepfake detection models (Roboflow, DIRE, and DFDC) and ensemble their predictions to improve accuracy. Different models excel at detecting different types of manipulations, so combining them provides more robust detection.
Our fact-checking system uses a two-tier approach:
This approach allows for more nuanced fact-checking than simple keyword matching, as it considers context and can identify partial truths or misleading statements.
We chose a browser extension as the frontend because:
Clone the repository:
git clone <repository-url>
cd dl-week-2025
Create a virtual environment and activate it:
conda create -n venv
conda activate venv
Install the required dependencies:
pip install -r fastapi-ai-agent/requirements.txt
Set up environment variables:
Create a .env file in the project root with the following variables:
OPENAI_API_KEY=your_openai_api_key
GOOGLE_API_KEY=your_google_api_key
GOOGLE_CSE_ID=your_google_custom_search_engine_id
PERPLEXITY_API_KEY=your_perplexity_api_key
Run the FastAPI server:
cd fastapi-ai-agent
uvicorn src.main:app --reload
The server will start at http://127.0.0.1:8000.
chrome://extensions/extension directory from the projectThe backend provides the following endpoints:
POST /check-ai-generated/: Checks if text is AI-generated
{"text": "Text to analyze"}{"generated_score": 0.75} (score between 0-1, higher means more likely AI-generated)POST /fact-check/: Checks the factual accuracy of a statement
{"fact": "Fact to check"}{"result": "TRUE/FALSE/UNVERIFIABLE with explanation and sources"}POST /get_links/: Gets relevant sources for a given text
{"text": "Text to find sources for"}{"result": "List of sources with titles and URLs"}Our system employs a dual-approach strategy for finding relevant sources to verify information:
Google Search Integration: Using the Google Custom Search API, we:
Perplexity API Integration: As an alternative search method, we:
The system intelligently combines these approaches to provide robust source verification. When a user submits text for fact-checking:
This approach ensures that users receive not just a verification result, but also the supporting evidence and sources they can review themselves.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
This project is a comprehensive solution for detecting AI-generated content and fact-checking information on the web. It consists of two main components:
The system is designed to help users identify potentially misleading or AI-generated content while browsing the web, providing an additional layer of verification in an era of increasing synthetic media and misinformation.

The FastAPI backend is organized into several modules:
The browser extension provides a user-friendly interface:
The models are pre-trained on these two Deepfake Detection datasets
We implemented multiple deepfake detection models (Roboflow, DIRE, and DFDC) and ensemble their predictions to improve accuracy. Different models excel at detecting different types of manipulations, so combining them provides more robust detection.
Our fact-checking system uses a two-tier approach:
This approach allows for more nuanced fact-checking than simple keyword matching, as it considers context and can identify partial truths or misleading statements.
We chose a browser extension as the frontend because:
Clone the repository:
git clone <repository-url>
cd dl-week-2025
Create a virtual environment and activate it:
conda create -n venv
conda activate venv
Install the required dependencies:
pip install -r fastapi-ai-agent/requirements.txt
Set up environment variables:
Create a .env file in the project root with the following variables:
OPENAI_API_KEY=your_openai_api_key
GOOGLE_API_KEY=your_google_api_key
GOOGLE_CSE_ID=your_google_custom_search_engine_id
PERPLEXITY_API_KEY=your_perplexity_api_key
Run the FastAPI server:
cd fastapi-ai-agent
uvicorn src.main:app --reload
The server will start at http://127.0.0.1:8000.
chrome://extensions/extension directory from the projectThe backend provides the following endpoints:
POST /check-ai-generated/: Checks if text is AI-generated
{"text": "Text to analyze"}{"generated_score": 0.75} (score between 0-1, higher means more likely AI-generated)POST /fact-check/: Checks the factual accuracy of a statement
{"fact": "Fact to check"}{"result": "TRUE/FALSE/UNVERIFIABLE with explanation and sources"}POST /get_links/: Gets relevant sources for a given text
{"text": "Text to find sources for"}{"result": "List of sources with titles and URLs"}Our system employs a dual-approach strategy for finding relevant sources to verify information:
Google Search Integration: Using the Google Custom Search API, we:
Perplexity API Integration: As an alternative search method, we:
The system intelligently combines these approaches to provide robust source verification. When a user submits text for fact-checking:
This approach ensures that users receive not just a verification result, but also the supporting evidence and sources they can review themselves.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.