How younessshr/xxrec-ai-matching works
XXREC is an AI-assisted candidate–job matching service. Its primary workflow accepts a base64 PDF CV, extracts and redacts text, parses a structured profile, computes candidate–requisition features, and returns a LightGBM match score. Separate endpoints provide SHAP-backed explanations and personalized technical tests. The repository also contains an offline synthetic-data and model-training workflow. README_SETUP.md and DEPLOYMENT_GUIDE.md are present in the tree, but no README content or excerpts documenting additional capabilities were provided; connections below rely on the shown source and SOURCE INDEX.
Main entry points: main.py FastAPI endpoints · ai_pipeline.py Gemini pipeline · model_lgbm.pkl LightGBM model artifact · build_features.py Dataset feature engineering
Components 13
Matching API
- FastAPI endpoints
api/main.py - PDF text extraction
api/main.py - Live feature computation
api/main.py - SHAP explainer
api/main.py
LLM features
- PII redaction
src/llm/redact.py - Gemini pipeline
src/llm/ai_pipeline.py
Model workflow
- Synthetic data generation
src/ml/generate_dataset.py - Dataset feature engineering
src/ml/build_features.py - Model training and ranking evaluation
src/ml/train_model.py - Offline SHAP analysis
src/ml/explain_model.py
Model artifacts
- LightGBM model artifact
data/model_lgbm.pkl
Other components
- API client
- Google Gemini
Connections 15
- API client → FastAPI endpoints: sends requests
api/main.py - FastAPI endpoints → PDF text extraction: extracts PDF text
api/main.py - FastAPI endpoints → Gemini pipeline: parses CV
api/main.py - Gemini pipeline → PII redaction: redacts text
src/llm/ai_pipeline.py - Gemini pipeline → Google Gemini: requests generation
src/llm/ai_pipeline.py - FastAPI endpoints → Live feature computation: computes features
api/main.py - FastAPI endpoints → LightGBM model artifact: predicts scores
api/main.py - FastAPI endpoints → SHAP explainer: computes contributions
api/main.py - FastAPI endpoints → Gemini pipeline: generates explanations
api/main.py - FastAPI endpoints → Gemini pipeline: generates tests
api/main.py - Synthetic data generation → Dataset feature engineering: writes matching dataset
src/ml/generate_dataset.py - Dataset feature engineering → Model training and ranking evaluation: writes feature dataset
src/ml/build_features.py - Model training and ranking evaluation → LightGBM model artifact: saves model
src/ml/train_model.py - Offline SHAP analysis → LightGBM model artifact: loads model
src/ml/explain_model.py - FastAPI endpoints → API client: returns results
api/main.py