Trina is an innovative AI-powered recruitment platform that leverages cutting-edge technologies to streamline the hiring process. This document outlines the high-level design of Trina and justifies the architectural decisions made to meet the functional requirements outlined in the hackathon challenge.
Trina integrates multiple advanced technologies to provide a seamless and intelligent recruitment solution. The system facilitates keyword-based searches for resumes and job descriptions and uses machine learning recommendation algorithms to deliver relevant suggestions. The platform also includes autonomous interviewing capabilities, enhancing the recruitment experience.
- Azure OpenAI: Utilized for natural language processing and understanding, enabling the system to interpret resumes and job descriptions and analyze their suitability.
- torch: A deep learning framework that powers the recommendation algorithms.
- Whisper: An audio processing tool used for voice recognition during autonomous screening interviews.
- Google Text to Speech: Converts text responses into natural-sounding speech, providing an interactive experience for users during screening interviews.
- React + Vite: Frontend development tools for building a fast and modern user interface.
- Mantine UI: A React-based UI library that provides a sleek and intuitive interface design.
- Django Rest Framework: Backend framework for building APIs that are maintainable and scalable.
- nginx: A high-performance web server that also serves as a reverse proxy.
- Celery: An asynchronous task queue to manage background tasks.
- Redis: An in-memory data store used for caching and message brokering. Used as a broker for Celery.
- cronjobs: Scheduled jobs that automate routine tasks within the system such as generating analysis for resumes and generating screening interview question videos for selected candidates.
- Azure VM: A virtual machine service hosting the platform, ensuring flexibility and scalability.
- PostgreSQL: The relational database management system providing secure and reliable data storage.
Requirement: Users must be able to search resumes and job descriptions using a combination of keywords related to skills, experience, domain, and other criteria.
Solution: The system employs Azure OpenAI to parse and understand search queries. The advanced NLP capabilities allow for precise interpretation of complex keyword combinations, providing state-of-the-art analysis and rating.
Requirement: The platform should autonomously conduct screening interviews, evaluate responses, and provide feedback.
Solution: Whisper and Google Text to Speech are employed to facilitate voice-based interactions during interviews. The AI autonomously conducts screening interviews by asking pre-determined and dynamic questions based on the job role and candidate’s experience and evaluates candidate responses through Azure OpenAI's language models.
Trina is designed to be highly scalable and reliable, utilizing Django Rest Framework and nginx to handle increased traffic and data loads. Redis and Celery ensure efficient caching and task management, while cronjobs automate maintenance tasks. The platform's hosting on Azure VM allows for easy scaling of resources to meet demand.
PostgreSQL provides a secure and performant database solution, ensuring data integrity and fast query execution. The use of Azure VMs and the Django Rest Framework's built-in security features further enhances the overall security posture of the platform.
Trina's design and architecture are tailored to address the functional requirements of the recruitment challenge. By integrating state-of-the-art technologies and best practices in software development, Trina offers an advanced, user-friendly, and efficient recruitment solution that stands out in the talent acquisition industry.
Trina AI is designed to streamline the recruitment process by autonomously conducting screening interviews and evaluating candidate resumes against job descriptions. To optimize the resume screening process, prompt tuning is implemented to tailor Trina's AI model to effectively assess resumes and identify the most suitable candidates. This document outlines the prompt tuning process and the JSON schema used to define the output and analysis criteria for resumes.
- Define Job Description: Clearly outline the job requirements, responsibilities, and desired skills and experiences.
- Develop Prompts: Craft prompts that will guide the AI to focus on the relevant aspects of the resumes, such as technical skills, work experience, and educational background.
- Weight Assignment: Assign weights to different sections of the resume based on their importance to the job role. Weights can be assigned through the wording of the Job Description. For example, technical skills might be given higher weightage for a programming job.
- Iteration: Continuously iterate and refine the prompts based on the performance of the AI model, ensuring it aligns well with the recruitment goals.
- Validation: Validate the tuned model against a separate set of resumes to evaluate its performance and make any final adjustments.
The prompt tuning process for Trina AI ensures that the model is well-aligned with the specific needs of the job description, enabling it to filter out the best