karan963 commited on
Commit
554fb1c
·
verified ·
1 Parent(s): 40f95aa

Add model card

Browse files
Files changed (1) hide show
  1. README.md +69 -0
README.md ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: mit
3
+ tags:
4
+ - resume-parsing
5
+ - information-extraction
6
+ - token-classification
7
+ - pytorch
8
+ - minilm
9
+ library_name: pytorch
10
+ ---
11
+
12
+ # Parselex — Resume Parsing Model Weights
13
+
14
+ 13-stage PyTorch checkpoint set for [Parselex](https://github.com/karan-963/parselex), a
15
+ deterministic, offline resume-to-JSON extraction pipeline. No LLM involved — each stage is a
16
+ small MiniLM-backbone classifier (~23M params) fine-tuned for one step of the pipeline (section
17
+ detection, entry boundary detection, field classification, run separately per resume section).
18
+
19
+ **This repo hosts weights only — no inference code.** Clone the code repo and point it at these
20
+ weights: https://github.com/karan-963/parselex
21
+
22
+ ## Contents
23
+
24
+ Both FP32 and INT8 (quantized) checkpoints for all 13 stages, ~2.5GB total:
25
+
26
+ | Folder | Stage | Files |
27
+ |---|---|---|
28
+ | `section_p1/` | Section heading detection | `best_model_line_minilm.pt`, `best_model_line_minilm_int8.pt` |
29
+ | `section_p2/` | Section classification | `best_model.pt`, `best_model_int8.pt` |
30
+ | `education_phase1_segment/` | Education phrase segmentation | `best_model.pt`, `best_model_int8.pt` |
31
+ | `education_phase2_divider/` | Education entry boundaries | `best_model.pt`, `best_model_int8.pt` |
32
+ | `education_phase3_classify/` | Education field classification | `best_model.pt`, `best_model_int8.pt` |
33
+ | `experience_phase1_segment/` | Experience phrase segmentation | `best_model.pt`, `best_model_int8.pt` |
34
+ | `experience_phase2_divider/` | Experience entry boundaries | `best_model.pt`, `best_model_int8.pt` |
35
+ | `experience_phase3_classify/` | Experience field classification | `best_model.pt`, `best_model_int8.pt` |
36
+ | `project_phase1_segment/` | Project phrase segmentation | `best_model.pt`, `best_model_int8.pt` |
37
+ | `project_phase2_divider/` | Project entry boundaries | `best_model.pt`, `best_model_int8.pt` |
38
+ | `project_phase3_classify/` | Project field classification | `best_model.pt`, `best_model_int8.pt` |
39
+ | `skills_classify/` | Skills BIO tagging | `best_model.pt`, `best_model_int8.pt` |
40
+ | `personal_classify/` | Personal info BIO tagging | `best_model.pt`, `best_model_int8.pt` |
41
+
42
+ `best_model.pt` = FP32 checkpoint. `best_model_int8.pt` = quantized (smaller, faster, slightly
43
+ lower accuracy). Folder layout matches `model_weights/<stage>/` in the code repo exactly — no
44
+ renaming needed to use these.
45
+
46
+ ## Usage
47
+
48
+ ```bash
49
+ git clone https://github.com/karan-963/parselex
50
+ cd parselex/model_weights
51
+ python3 download.py # pulls this repo via huggingface_hub, extracts into place
52
+ ```
53
+
54
+ Or manually:
55
+
56
+ ```python
57
+ from huggingface_hub import snapshot_download
58
+ snapshot_download(repo_id="karan963/parselex-weights", local_dir="model_weights")
59
+ ```
60
+
61
+ ## Training data & accuracy
62
+
63
+ See the paper for full methodology, held-out test numbers, and known limitations (small
64
+ training set, single-column resumes only, synthetic-data ceiling):
65
+ `<arXiv link — filled in once submitted>`
66
+
67
+ ## License
68
+
69
+ MIT — same as the code repository. See [`LICENSE`](https://github.com/karan-963/parselex/blob/main/LICENSE).