Sign inSign up

affinda/resume-parser

By affinda

Updated 18 days ago

Self-hosted resume parser in one container. Resume in, structured JSON out. Free parses included.

Image
Machine learning & AI
Data science
0

5.7K

affinda/resume-parser repository overview

Affinda Resume Parser

A self-hosted resume parsing appliance in a single Docker container. Drop in a resume — PDF, DOCX, or scan — and get clean, structured JSON. Your documents never leave your infrastructure.

Quick start

docker run --rm -p 8080:8080 affinda/resume-parser:latest

Open http://localhost:8080 — drag a resume onto the page, or POST it to the API:

curl -F "[email protected]" http://localhost:8080/v1/parse

Every container includes an evaluation allowance of free parses, no sign-up required. Full documentation (runbook, API reference, sizing guide) is served by the container itself at /docs.

Licensing

Evaluate first, license when ready:

  • Evaluation — built in. Pull the image and parse immediately; the container tracks your free-parse allowance locally. No account, no phone-home: the parser runs fully offline, including licence verification.
  • Licensed — get a licence key at https://resume-parser.affinda.com/self-hosted, then either set it at startup (-e AFFINDA_LICENSE_TOKEN=..., ideal for orchestrated deployments) or apply it to a running container (docker exec <name> affinda-license apply '<TOKEN>'). Keys are verified offline against keys built into the image, so air-gapped deployments work.

Flavours

  • latest / versioned tags — CPU. Runs anywhere Docker runs.
  • latest-gpu / -gpu tags — GPU (NVIDIA, --gpus all required; the GPU image deliberately will not fall back to CPU, so you never silently pay GPU prices for CPU throughput).

What it handles

Multilingual resumes (strong English, plus Thai, Japanese, Indonesian and more), scanned documents via built-in OCR, and messy real-world files. Non-resume documents are classified rather than rejected; quality-gated documents parse with warnings instead of failing.

Performance

Measurements, not SLAs — on the recommended GPU instance (g6.2xlarge) with licensing enabled, through the shipped multi-container topology: a 1-page resume parses in ~55 ms (p50); sustained throughput ~181,000 documents/hour at a 1%-scanned mix with 0.0% rejected requests. Methodology, variance bands and CPU numbers are in the sizing guide inside the container.

Support

[email protected] — or open the troubleshooting guide at /docs in your running container.

Tag summary

Content type

Image

Digest

sha256:7e802477e

Size

1.1 GB

Last updated

18 days ago

docker pull affinda/resume-parser