How yatheen28/ira_pbl works
VAJRA AI accepts a text claim, or an image through the backend OCR endpoint, then retrieves and ranks web evidence, enriches it with source analysis, generates a grounded verdict, and builds a knowledge graph. The React client submits text claims and presents results. The README documents these capabilities, and the route excerpt confirms the backend orchestration; several service implementations and frontend API wiring were not sampled, so uncertain connections are omitted.
Main entry points: verify.py Verification routes · App.jsx Application UI · useVerification.js Verification state · semantic_ranker.py Semantic ranking
Components 21
React client
- Application UI
frontend/src/App.jsx - Claim input
frontend/src/components/ClaimInput.jsx - Image upload UI
frontend/src/components/ImageUpload.jsx - Verification state
frontend/src/hooks/useVerification.js - Verification API client
frontend/src/api/verification.js - Results display
frontend/src/components/ResultsSection.jsx
HTTP API
- FastAPI application
backend/app/main.py - Verification routes
backend/app/routes/verify.py
Verification pipeline
- Image text extraction
backend/app/services/ocr_service.py - Language normalization
backend/app/services/language_service.py - Web evidence retrieval
backend/app/services/web_retriever.py - Semantic ranking
backend/app/services/semantic_ranker.py
Evidence analysis
- Evidence analysis
backend/app/services/evidence_analyzer.py - Source reliability
backend/app/services/source_reliability.py - Grounded verdict
backend/app/services/verdict_engine.py - Knowledge graph
backend/app/services/knowledge_graph.py
Other components
- Claim submitter
- Tavily Search
- BGE embedding model
- Gemini API
- EasyOCR
Connections 22
- Claim submitter → Application UI: uses
- Application UI → Claim input: renders
- Application UI → Image upload UI: renders
- Application UI → Verification state: starts verification
- Verification state → Verification API client: submits claim
- Verification API client → Verification routes: HTTP request
- FastAPI application → Verification routes: registers routes
- FastAPI application → Semantic ranking: loads model
- Verification routes → Language normalization: normalizes claim
- Language normalization → Gemini API: translates
- Verification routes → Web evidence retrieval: searches claim
- Web evidence retrieval → Tavily Search: queries
- Verification routes → Semantic ranking: ranks results
- Semantic ranking → BGE embedding model: embeds evidence
- Verification routes → Evidence analysis: analyzes ranked evidence
- Evidence analysis → Source reliability: scores sources
- Verification routes → Grounded verdict: generates verdict
- Grounded verdict → Gemini API: analyzes evidence
- Verification routes → Knowledge graph: builds graph
- Verification routes → Image text extraction: extracts image text
- Image text extraction → EasyOCR: recognizes text
- Verification state → Results display: displays response