Pipeline

Resume Processing Pipeline

Transforms candidate PDFs into structured, semantically searchable vector embeddings through a fully automated Rust-native pipeline.

Pipeline Stages

StageTechnologyDetail
1. PDF UploadReact FrontendCandidate submits PDF
2. EdgeParseRust (pure)PDF to Markdown in 0.064s/doc
3. LLM StructuringGroq APITwo-stage: structure_to_markdown → extract_resume_fields
4. Link ExtractionRegex + GroqDeduplicated, regex preferred as ground truth
5. Embeddingall-mpnet-base-v2 ONNX INT8768-d vectors, in-process Rust
6. Vector StorageQdrant gRPC4 collections: Skills, Projects, Experience, Summary
7. PersistencePostgreSQLResumes table with 4 vector IDs + metadata

EdgeParse Performance

0.787
Benchmark Score
0.064s
Latency per Doc
0.007s
M4 Max Throughput
0.901
Table Detection F1

Section Weights

SectionWeightRationale
Work Experience0.35Strongest predictor of job performance
Skills0.30Technical competency baseline
Projects0.20Practical application evidence
Summary0.15Career narrative context

PostgreSQL Schema

Each resume row stores four Qdrant vector IDs, a JSONB metadata column with four text fields (summary, skills, projects, experience), raw full text, extracted links, and a Cloudinary URL for the original PDF. All four vector IDs are fetched in a single SQL query during shortlisting, reducing database round trips from 4 to 1.