AI-ML Intern Assignment
AI-ML Intern Assignment
1. Gather Initial Candidate Information: Collect essential details such as name, contact
information, years of experience, and desired positions.
2. Generate Technical Questions: Based on the candidate’s specified tech stack (e.g.,
programming languages, frameworks, tools), generate relevant technical questions to
assess their proficiency.
3. Ensure Coherent and Context-Aware Interactions: Maintain the flow of conversation
and context to provide a seamless user experience.
III. Requirements
Functionality
● User Interface:
○ Develop a clean and intuitive UI using Streamlit or Gradio where candidates can
interact with the chatbot.
● Chatbot Capabilities:
○ Greeting: The chatbot should greet candidates upon initiation and provide a brief
overview of its purpose. The chatbot should also exit whenever a
conversation-ending keyword is encountered.
○ Information Gathering:
■ Collect essential candidate details such as:
■ Full Name
■ Email Address
■ Phone Number
■ Years of Experience
■ Desired Position(s)
■ Current Location
■ Tech Stack
○ Tech Stack Declaration:
■ Prompt candidates to specify their tech stack, including programming
languages, frameworks, databases, and tools they are proficient in.
○ Technical Question Generation:
■ Based on the declared tech stack, generate a set of 3-5 technical
questions tailored to assess the candidate’s proficiency in each specified
technology.
■ Example: If a candidate lists Python and Django, generate questions
related to Python programming and Django framework.
○ Context Handling:
■ Maintain the context of the conversation to handle follow-up questions
and ensure a coherent flow.
○ Fallback Mechanism:
■ Provide meaningful responses when the chatbot does not understand the
user input or when unexpected inputs are received.
■ It should not deviate from the Purpose.
○ End Conversation:
■ Gracefully conclude the conversation, thanking the candidate and
informing them about the next steps.
Technical Specifications
2
● Libraries & Tools:
○ Streamlit: For developing the frontend interface.
○ Large Language Models: Utilize pre-trained models (e.g., GPT-3/4, llama, etc).
● Deployment:
○ Local deployment is acceptable.
○ Bonus points for Deploying on a cloud platform (e.g. AWS, GCP, etc) and
providing a live demo link.
Prompt Engineering
Data Handling
● Simulated Data:
○ Use simulated or anonymized data for any backend processes, such as storing
candidate information and technical responses.
● Data Privacy:
○ Ensure that all candidate data is handled in compliance with data privacy
standards (e.g., GDPR).
Documentation
● README File:
○ Project Overview: Brief description of the Hiring Assistant chatbot and its
capabilities.
○ Installation Instructions: Detailed steps to set up and run the application locally.
○ Usage Guide: Clear and Concise Readme file.
○ Technical Details: Libraries used, model details, and architectural decisions.
○ Prompt Design: Explanation of how prompts were crafted to handle information
gathering and technical question generation.
○ Challenges & Solutions: Discuss any challenges faced during development and
how they were addressed.
3
Code Quality
IV. Deliverables
Source Code
Documentation
Demo
● Advanced Features:
○ Integrate sentiment analysis to gauge candidate emotions during the
conversation.
○ Implement multilingual support to interact with candidates in different languages.
○ Provide personalized responses based on user history or preferences.
● UI Enhancements:
○ Improve the aesthetic appeal and user experience of the Streamlit interface with
custom styling and interactive elements.
● Performance Optimization(Bonus):
○ Ensure the chatbot responds promptly and can handle multiple user inputs
efficiently.
4
V. Evaluation Criteria
Technical Proficiency (40%)
● Ability to design effective prompts for information gathering and technical question
generation.
● Creative solutions to maintain context and manage conversation flow.
● Addressing challenges related to data handling and user interactions.