Verify ChatGPT/Claude citations against real academic databases instantly.
Visit Live Demo on veru.app »LLMs like ChatGPT often hallucinate academic citations—inventing papers that sound real but don't exist. Veru acts as a forensic auditor for your research.
It extracts citations from your text and cross-references them against massive academic databases to verify their existence and content accuracy.
- 🕵️♂️ Anti-Hallucination Extraction: Uses Gemini 2.0 to strictly extract citations without "autocorrecting" user errors.
- 📚 Multi-Database Verification:
- Tier 1: Checks OpenAlex (250M+ works) with smart title matching.
- Tier 2: Fallback to Semantic Scholar if OpenAlex misses.
- Tier 3: Final forensic sweep using Google Search Grounding.
- 🧠 Content Consistency Check: Compares the user's claim against the actual abstract to detect mismatched summaries ("stitched" hallucinations).
- 💾 Local History: Automatically saves your audit sessions locally (no login required).
graph TD
A[User Input] --> B(LLM Extraction)
B --> C{OpenAlex Search}
C -->|Found & High Confidence| D[✅ Verfied Real]
C -->|Not Found| E{Semantic Scholar}
E -->|Found| D
E -->|Not Found| F{Google Search Grounding}
F -->|Verified| D
F -->|Hallucinated| G[🛑 MARK AS FAKE]
D --> H[Content Consistency Check]
H -->|Match| I[Final Output]
H -->|Mismatch| J[⚠️ Content Warning]
- Frontend: Next.js 14 (App Router), Tailwind CSS, Lucide React
- Backend: Python FastAPI, Uvicorn, SlowAPI (Rate Limiting)
- AI & Data: Google Gemini 2.0 Flash, OpenAlex API, Semantic Scholar API
- Deployment: Vercel (Frontend) + Render (Backend)
Follow these steps to run Veru locally.
- Node.js 18+
- Python 3.9+
- A Google Gemini API Key (Get one from Google AI Studio)
-
Clone the repo
git clone https://github.com/Yinghao-Guan/Veru.git cd Veru -
Setup Backend
cd audit_backend python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate` pip install -r requirements.txt # Create .env file echo "GEMINI_API_KEY=your_api_key_here" > .env # Run server python main.py
The backend will run on
http://localhost:8000. -
Setup Frontend Open a new terminal:
cd frontend npm install # Run development server npm run dev
The frontend will run on
http://localhost:3000.
- Rate Limiting: Backend is protected by
slowapito prevent abuse. - CORS: Restricted to production domains and localhost.
- No Data Retention: We do not store user queries on our servers (history is local-only).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
- OpenAlex for their incredible open data.
- Semantic Scholar for the academic graph API.
- Google Gemini for the reasoning engine.
If you find this project interesting, please give it a ⭐️ on GitHub! It helps a lot.
