Text Generation
PEFT
Safetensors
English
nlp
information-extraction
job-description
structured-output
json
qwen2.5
lora
recruitment
hr-tech
conversational
Instructions to use mantraraval/jobsense with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use mantraraval/jobsense with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("unsloth/qwen2.5-3b-instruct-unsloth-bnb-4bit") model = PeftModel.from_pretrained(base_model, "mantraraval/jobsense") - Notebooks
- Google Colab
- Kaggle
v1.0 · Apache 2.0 · EN
JOB
SENSE
job_description.txt → structured.json
A fine-tuned 3B model that reads hiring intent and returns structured JSON — no regex, no patching.
┌─────────────┬─────────────┬─────────────┬─────────────┐
│ 3B │ 700 │ 9 │ EN │
│ parameters │ max_tokens │ fields │ language │
└─────────────┴─────────────┴─────────────┴─────────────┘
01 — What it does
Paste a job description. JobSense reads hiring intent and returns clean, structured JSON.
No regex rules. No schema patching. No post-processing.
input → job_description.txt
output → structured.json
02 — Signal extraction
Job descriptions hide signals across multiple sentences. JobSense surfaces all of them:
signals:
- mandatory vs nice-to-have skills
- seniority inferred from responsibilities
- work mode: hybrid / remote / onsite
- relocation expectations
- immediate joining requirements
- salary language and compensation ranges
03 — Live example
Input
We are looking for an experienced Backend Developer to lead our team.
FastAPI is mandatory. MongoDB, httpx, Uvicorn are preferred.
Hybrid role in Delhi. 6-8 years exp. Immediate joiners preferred.
Competitive salary.
Output
{
"role": "Backend Developer",
"sub_role": "FastAPI Backend Dev",
"seniority": "senior",
"skills": [
{ "name": "FastAPI", "importance": "required" },
{ "name": "MongoDB", "importance": "preferred" },
{ "name": "httpx", "importance": "preferred" }
],
"experience": "6 to 8 years",
"location": "Delhi",
"work_mode": "hybrid",
"joining": "immediate",
"salary": "competitive"
}
04 — Response schema
Root fields
| field | type | values |
|---|---|---|
role |
string | primary job title |
sub_role |
string | specialization |
seniority |
string | junior · mid · senior · lead |
skills |
array | see skill object below |
experience |
string | years required |
location |
string | city / region / remote |
location_type |
string | city · region · country · remote |
work_mode |
string | hybrid · remote · onsite |
joining |
string | immediate · notice_period · flexible |
salary |
string | compensation signal |
Skill object
| field | type | values |
|---|---|---|
name |
string | skill name |
importance |
string | required · preferred · contextual |
category |
string | skill grouping |
05 — Quick start
Gradio API
pip install gradio_client
from gradio_client import Client
client = Client("mantraraval/jobsense-app")
result = client.predict(
text="YOUR JOB DESCRIPTION HERE",
api_name="/extract_jd",
)
print(result)
Local inference
pip install transformers peft accelerate torch
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
BASE = "unsloth/Qwen2.5-3B-Instruct"
JOBSENSE = "mantraraval/jobsense"
tokenizer = AutoTokenizer.from_pretrained(BASE, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(BASE, device_map="auto")
model = PeftModel.from_pretrained(model, JOBSENSE)
inputs = tokenizer("YOUR JOB DESCRIPTION HERE", return_tensors="pt").to(model.device)
output = model.generate(**inputs, max_new_tokens=700)
print(tokenizer.decode(output[0]))
06 — Stack
base_model → Qwen2.5-3B
method → LoRA + PEFT
precision → float16
decoding → deterministic
07 — Constraints
- English only # multi-language on roadmap
- Short JDs # may return sparse fields
- GPU recommended # for production throughput
08 — Roadmap
[ ] multi-language support
[ ] confidence scores per field
[ ] GGUF quantized release
[ ] public dataset launch
Citation
@misc{raval2025jobsense,
author = {Mantra Raval},
title = {JobSense: Structured Information Extraction from Job Descriptions},
year = {2025},
publisher = {Hugging Face}
}
jobsense · hiring intelligence · by mantraraval
- Downloads last month
- 5