Skip to content

Vets-Who-Code/VetsAI

Repository files navigation

🇺🇸 VetsAI: Employment Assistance for Veterans

VetsAI is an AI-powered virtual assistant designed to help veterans navigate employment transitions and find opportunities in civilian careers. The app allows users to interact via chat, upload resumes in PDF or DOCX format, and receive tailored assistance, such as translating military job codes to civilian job suggestions.

Features

  • Chat Assistant: Ask questions and receive advice on job searching and career transitions.
  • Military Job Code Translation: Provide a military job code (e.g., MOS, AFSC) to get suggestions for related civilian careers.
  • Document Upload: Upload employment-related documents (PDF or DOCX), and VetsAI will process the content to assist with career suggestions.
  • OpenAI Integration: Uses OpenAI's GPT-4 to generate responses based on the conversation context.

Prerequisites

To run this application, ensure you have the following installed:

  • Python 3.8 or later
  • A virtual environment (recommended)

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd <repository-directory>
  2. Set up a virtual environment:

    python -m venv venv
    source venv/bin/activate  # For macOS/Linux
    .\venv\Scripts\activate  # For Windows
  3. Install dependencies:

    pip install -r requirements.txt
  4. Set up environment variables:

    • Create a .env file in the root of your project.

    • Add your OpenAI API key to the .env file:

      OPENAI_API_KEY=your-openai-api-key
      

Running the App

  1. Run the Streamlit app:

    streamlit run app.py
  2. Access the app:

    Open your web browser and navigate to http://localhost:8501.

Usage

  • Chat: Ask questions about job searching, resume building, and military job code translations.
  • Upload Resume: Upload a resume (PDF or DOCX), and VetsAI will process the text for further assistance.
  • Military Job Codes: Enter your military job code (e.g., MOS, AFSC) to get suggestions for civilian careers.

File Structure

  • app.py: Main application script.
  • data/employment_transitions/job_codes/: Directory containing military job code files.
  • requirements.txt: Python package dependencies.

Dependencies

The following Python libraries are required to run this app:

  • streamlit: For the web interface.
  • httpx: To make HTTP requests to OpenAI's API.
  • nest-asyncio: To allow nested event loops for async operations.
  • better-profanity: To filter profane language.
  • PyPDF2: For extracting text from PDF files.
  • python-docx: For reading DOCX files.
  • python-dotenv: To load environment variables from a .env file.
  • openai: To interact with OpenAI's API.

License

This project is licensed under the Apache License.