← Back to projects

OnBoardIQ

Drop a folder of candidate documents — any format, any order, any naming convention — and get back organised per-candidate folders, classified documents, and an Excel audit report.

PythonOllamaTesseract OCRStreamlit
View on GitHub ↗

The problem it solves

HR and recruitment teams dealing with high-volume onboarding receive documents in chaos: a single PDF containing someone's Aadhaar, PAN, and degree certificate, renamed to something like "docs_final_FINAL_v3.pdf". OnBoardIQ takes that chaos and produces a clean, structured output.

How it works

The pipeline processes every PDF in a folder recursively. A rule-based classifier (fast regex/keyword matching) handles obvious document types. Ambiguous cases fall through to an Ollama AI classifier (moondream for vision, phi3:mini for reasoning). A three-layer deduplication system — byte hash, perceptual image hash, then semantic text similarity — catches duplicates at every level. Each document gets canonically renamed and placed into a per-candidate folder. An Excel report summarises what was found, what's missing, and confidence scores.

What makes it interesting

The three-layer deduplication is the part that took the most thought. Byte-hash catches exact duplicates instantly. Perceptual hashing catches the same scan at different compressions or rotations. Semantic similarity catches documents that are the same information presented differently. Each layer catches what the previous one misses.