""" Configuration file for AI Resume Screener Modify these settings to customize the application behavior """ # Model Configuration MODELS = { "embedding_model": "BAAI/bge-large-en-v1.5", "cross_encoder": "cross-encoder/ms-marco-MiniLM-L6-v2", "llm_model": "Qwen/Qwen2-1.5B", # Using smaller model for compatibility } # Pipeline Configuration PIPELINE_CONFIG = { "faiss_recall_top_k": 50, "cross_encoder_top_k": 20, "max_text_length": 8000, "embedding_dimension": 1024, } # Scoring Weights (must sum to 1.0) SCORING_WEIGHTS = { "cross_encoder": 0.5, "bm25": 0.3, "intent": 0.2, } # Intent Analysis Configuration INTENT_CONFIG = { "max_prompt_length": 1024, "max_new_tokens": 10, "temperature": 0.1, "intent_scores": { "yes": 0.9, "maybe": 0.5, "no": 0.1, } } # File Processing Configuration FILE_CONFIG = { "supported_formats": ["pdf", "docx", "txt", "csv"], "max_file_size_mb": 10, "max_files_per_upload": 50, } # UI Configuration UI_CONFIG = { "page_title": "🤖 AI Resume Screener", "page_icon": "🤖", "layout": "wide", "sidebar_state": "expanded", "max_display_resumes": 100, } # Performance Configuration PERFORMANCE_CONFIG = { "use_gpu": True, "quantization": True, "batch_size": 32, "cache_models": True, } # Skills Database TECHNICAL_SKILLS = [ # Programming Languages 'python', 'java', 'javascript', 'typescript', 'c++', 'c#', 'go', 'rust', 'scala', 'r', 'matlab', 'php', 'ruby', 'swift', 'kotlin', 'dart', # Web Technologies 'html', 'css', 'react', 'angular', 'vue', 'node.js', 'express', 'django', 'flask', 'fastapi', 'spring', 'laravel', 'bootstrap', 'tailwind', # Databases 'sql', 'mongodb', 'postgresql', 'mysql', 'redis', 'elasticsearch', 'cassandra', 'dynamodb', 'sqlite', 'oracle', # Cloud & DevOps 'aws', 'azure', 'gcp', 'docker', 'kubernetes', 'terraform', 'ansible', 'jenkins', 'gitlab', 'github', 'ci/cd', 'devops', 'microservices', # Data Science & ML 'machine learning', 'deep learning', 'tensorflow', 'pytorch', 'keras', 'scikit-learn', 'pandas', 'numpy', 'matplotlib', 'plotly', 'seaborn', 'jupyter', 'spark', 'hadoop', 'kafka', 'airflow', # Analytics & BI 'tableau', 'powerbi', 'excel', 'google analytics', 'mixpanel', 'amplitude', 'looker', 'qlik', 'sas', 'spss', 'stata', # Operating Systems & Tools 'linux', 'ubuntu', 'centos', 'windows', 'macos', 'bash', 'powershell', 'git', 'vim', 'vscode', 'intellij', 'eclipse', # Methodologies 'agile', 'scrum', 'kanban', 'lean', 'waterfall', 'tdd', 'bdd', # Networking & Security 'tcp/ip', 'http', 'https', 'ssl', 'oauth', 'jwt', 'api', 'rest', 'graphql', 'nginx', 'apache', 'load balancing', 'vpn', 'firewall', ] # Job Categories for Enhanced Matching JOB_CATEGORIES = { "software_engineer": [ "programming", "coding", "development", "software", "engineer", "developer" ], "data_scientist": [ "data", "analytics", "machine learning", "statistics", "modeling", "scientist" ], "devops_engineer": [ "devops", "infrastructure", "deployment", "automation", "cloud", "operations" ], "product_manager": [ "product", "manager", "strategy", "roadmap", "requirements", "stakeholder" ], "designer": [ "design", "ui", "ux", "user experience", "interface", "visual", "creative" ], "marketing": [ "marketing", "campaign", "brand", "social media", "content", "seo", "sem" ], "sales": [ "sales", "business development", "account", "revenue", "client", "customer" ] } # Default Job Description Template DEFAULT_JOB_DESCRIPTION = """ Software Engineer - Full Stack Development We are looking for a talented Software Engineer to join our growing team. Requirements: - 3+ years of experience in software development - Proficiency in Python, JavaScript, and SQL - Experience with React and Node.js - Knowledge of cloud platforms (AWS, Azure, or GCP) - Familiarity with Docker and CI/CD pipelines - Strong problem-solving and communication skills Responsibilities: - Develop and maintain web applications - Collaborate with cross-functional teams - Write clean, maintainable code - Participate in code reviews - Contribute to technical architecture decisions Nice to have: - Experience with machine learning - Knowledge of microservices architecture - DevOps experience - Open source contributions """ # Error Messages ERROR_MESSAGES = { "models_not_loaded": "❌ AI models are still loading. Please wait...", "no_job_description": "❌ Please enter a job description", "no_resumes": "❌ Please load some resumes first", "file_processing_error": "❌ Error processing file: {filename}", "model_loading_error": "❌ Error loading model: {model_name}", "pipeline_error": "❌ Error in pipeline stage: {stage}", } # Success Messages SUCCESS_MESSAGES = { "models_loaded": "✅ All AI models loaded successfully!", "files_processed": "✅ Processed {count} resume files", "pipeline_complete": "✅ Resume screening pipeline completed!", "results_exported": "✅ Results exported successfully", } # Validation Rules VALIDATION_RULES = { "min_job_description_length": 50, "max_job_description_length": 10000, "min_resume_length": 20, "max_resume_length": 20000, "min_resumes_for_ranking": 1, "max_resumes_for_ranking": 1000, }