Giter Site home page Giter Site logo

ai-virtual-assistant's Introduction

Nova

Nova is a virtual web voice assistant implemented using ChatGPT 3.5 and Elevenlabs. It creates humanlike responses to your input and reads them out using some of the best AI text generation, voice transcription and text-to-speech technology available. The purpose of the project is to attempt to utilize the new major improvements in artificial intelligence to create a voice assistant that is more adaptive and more capable of humanlike behaviour and responses than voice assistants utilizing older technology.

Table of contents

Backend

Frontend

Backend

Setup Instructions

Prerequisites & Dependencies

  • Python >=3.9
  • For flight info: account on flightradar24
  • OpenAI API (you will need an API key from OpenAI)
  • Elevenlabs API key
  • Conda or pip (for managing virtual environment)
  • Node and Yarn

Clone the repository:

  • git clone https://github.com/hamid-nazar/AI-virtual-assistant.git
  • cd AI-virtual-assistant/backend

Create a Virtual Environment

  • conda create --name myenv python=3.x
  • conda activate myenv
  • pip install -r requirements.txt

Set Up Your .env file

OPENAI_API_KEY = your_openai_api_key
ELEVENLABS_API_KEY = your_elevenlabs_api_key
EMAIL = your_flightradar_email
PASSWORD = your_flightradar_password

Run The Application

uvicorn main:app --reload

Backend Structure

  • main.py: Defines all the API endpoints that interact with the frontend of the application.
  • chatGPT.py: Sets up the generative AI model with system prompts and functions to respond to input. Also uses OpenAI voice transcription to transcribe audio messages.
  • tasks.py: Additional functions the chatGPT model can call upon via function calling. Descriptions of the functions for the model are found in function_descriptions.py.
  • text_to_speech.py: Converts response from OpenAI to speech using elevenlabs.
  • database.py: Stores messages of current session for the chatbot in JSON format. Also implements function to reset the messages.
  • requirements.txt: Lists all project-specific dependencies.

Frontend

Install Dependencies and Run The Application

If yarn is not installed: npm install --global yarn

  • cd generative-AI/front
  • yarn install
  • yarn run dev

Tech Stack

  • React + Vite
  • Tailwind CSS
  • Axios

ai-virtual-assistant's People

Contributors

598975 avatar hamid-nazar avatar

Watchers

 avatar

Forkers

598975 yo581515

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.