-
Notifications
You must be signed in to change notification settings - Fork 151
Open
Description
Batch Processing Feature
Overview
Added support for processing multiple resumes from a folder with batch processing capabilities, significantly improving efficiency for recruiters and HR teams.
New CLI Options
Batch Processing
# Process all PDFs in a folder (non-recursive)
python score.py -f /path/to/resumes/
# Process all PDFs recursively (including subfolders)
python score.py -f -r /path/to/resumes/
# View help
python score.py --helpSingle File (Unchanged)
# Original functionality preserved
python score.py resume.pdfFeatures Added
- Batch processing: Process multiple PDFs in one command
- Error resilience: Continue processing if one resume fails
- CSV export: All results saved to
resume_evaluations.csv - Performance optimization: Single LLM provider initialization for entire batch
Performance Improvements
- Before: 3-4 LLM provider initializations per resume
- After: 1 initialization for entire batch
Example Output
Initializing LLM provider...
🔄 Using Google Gemini API provider with model gemini-2.5-flash
📁 Found 6 PDF file(s) in 'resumes/'
================================================================================
[1/6] Processing john_doe.pdf...
✓ John Doe: Score 87.5/100
[2/6] Processing jane_smith.pdf...
✓ Jane Smith: Score 92.0/100
[3/6] Processing bob_wilson.pdf...
✓ Bob Wilson: Score 68.0/100
================================================================================
📊 BATCH PROCESSING SUMMARY
================================================================================
Total files: 6
✓ Successfully processed: 6
❌ Failed: 0
Results saved to: resume_evaluations.csv
================================================================================
Implementation Details
Files Modified
score.py: Added argparse, batch processing logic, provider optimizationpdf.py: Modified PDFHandler to accept optional providerevaluator.py: Modified ResumeEvaluator to accept optional providergithub.py: Modified GitHub functions to accept optional providerREADME.md: Updated documentation with batch processing examples
Backward Compatibility
- Single file mode works exactly as before
- All existing functionality preserved
- No breaking changes
Benefits
- Time-saving: Process 10-50 resumes in one command
- Better UX: Clear progress tracking and error handling
- Performance: Optimized LLM provider usage
This feature maintains full backward compatibility while adding powerful batch processing capabilities.
Metadata
Metadata
Assignees
Labels
No labels