๐ผ Job Description Generator - LLaMA-3 8B
Fine-tuned LLaMA-3 8B model for generating professional job descriptions.
Model Description
This model is fine-tuned on 15,885 real job postings from LinkedIn using QLoRA (4-bit quantization + LoRA adapters).
Performance
- ROUGE-L: +28.8% improvement
- BLEU: +244% improvement
- Output Quality: 6-7x more comprehensive descriptions
Technical Details
- Base Model: meta-llama/Meta-Llama-3-8B-Instruct
- Method: QLoRA (4-bit NF4 quantization)
- Trainable Parameters: 8.4M (0.1% of total)
- Training Time: ~6 hours on A100 GPU
- Memory: 6GB VRAM (inference)
Usage
from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
from peft import PeftModel
import torch
# Configuration
model_id = "zewail/job-description-generator-llama3-8b"
base_model = "meta-llama/Meta-Llama-3-8B-Instruct"
# Load with 4-bit quantization
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=torch.bfloat16
)
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
base_model,
quantization_config=bnb_config,
device_map="auto"
)
model = PeftModel.from_pretrained(model, model_id)
# Generate
prompt = """<|begin_of_text|><|start_header_id|>system<|end_header_id|>
You are an expert HR professional.<|eot_id|><|start_header_id|>user<|end_header_id|>
Generate a job description for Senior Data Scientist in San Francisco, CA.<|eot_id|><|start_header_id|>assistant<|end_header_id|>
"""
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=400, temperature=0.7, top_p=0.95)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Intended Use
- Recruitment teams
- HR professionals
- Job boards
- ATS systems
License
LLaMA-3 Community License