Career_Roadmap / README.md
SaiChaitanya's picture
Upload README.md
1518573 verified
|
raw
history blame
3.05 kB

Streamlit Webapp

AI Powered Career Roadmap Generator: Your AI-powered Insight Generator from JDs

Our project aims to develop an AI-powered platform that provides personalized career roadmaps tailored to specific job descriptions. Leveraging the capabilities of OpenAI's API, we will utilize generative AI models to analyze job descriptions and generate comprehensive roadmaps outlining the necessary skills, knowledge, and steps required to excel in those roles. This innovative solution will cater to individuals seeking guidance in their career paths by offering curated insights and actionable recommendations

Features

  • Instant Insights: Extracts and analyses text from uploaded job description dataset, skills dataset etc to provide instant insights.
  • Retrieval-Augmented Generation: Utilizes OpenAI API for high-quality, contextually relevant answers.
  • Secure API Key Input: Ensures secure entry of OpenAI API keys for accessing generative AI models.

Getting Started

Prerequisites

  • OpenAI API Key - used GPT-4o for roadmap generation and GPT-4-turbo-preview for embeddings
  • Streamlit: This application is built with Streamlit. Ensure you have Streamlit installed in your environment

Installationgit

Clone this repository or download the source code to your local machine. Navigate to the application directory and install the required Python packages:


Note: You need Python 3.10 or above. 

1. Create a virtual environment (venv):
    ```sh
    python -m venv path-to-venv
    ```
   `venv` stands for Virtual Environment.

2. Activate the virtual environment:
    ```sh
    source path-to-venv/bin/activate
    ```
    On Windows:
    ```sh
    .\venv\Scripts\activate
    ```

3. Install requirements:
    ```sh
    pip install -r requirements.txt
    ```

## Running

## Data

1. Kaggle : https://www.kaggle.com/datasets/dilshaansandhu/international-jobs-dataset/data

2. O-net  : https://www.onetcenter.org/database.html#individual-files

### Technical Overview

    Excel Processing: Utilizes UnstructuredExcelLoader for extracting text from Excel documents, CSVLoader for extracting text from csv documents, PyPDFLoader for extracting text from pdf documents.
    Text Chunking: Employs the RecursiveCharacterTextSplitter from LangChain for dividing the extracted text into manageable chunks.
    Vector Store Creation: Uses chromadb for creating a searchable vector store from text chunks.
    Answer Generation: Leverages gpt-4-turbo-preview model from OpenAI for generating answers to user queries using the context provided by the uploaded documents.


### Indexing

1. Go to `bot/rag_indexing`
2. Run:
    ```sh
    python indexing.py <data-sources>
    ```
   For example:
   ```sh
   python indexing.py <path/to/data/files>

Run the app

  1. Go to /bot
  2. Run:
    streamlit run bot-langchain-chat.py
    
  3. Give the job description to the prompt. It will generate the relevant roadmap.

# AI-Powered-Career-Roadmap