Skip to content

Sphinx2071/deepsightAI

Repository files navigation

DeepSight-AI

DeepSight-AI monitors various datasources for ocean-specific risks to ships hosting aircraft landing pads and employs generative AI to present risks and alerts to operators.

Modules

  • Data Collector

    • Scrapes various websites collects and hashes data
  • Data Processor

    • Orchestrates data flow between all other services
    • Stores data, user input, and llm responses in a postgres relational db
    • validates data triggers appropriate modules to ensure data is not out of date
  • FastAPI

    • Layer between our backend and the UI
  • Rag App

    • Generates response based on user request and stored website data
  • React UI

    • Allows user to provide a prompt to the system
    • Generates reports of user prompts and responses

Docker

  • Containers of modules, allows for standardized deployment of microservices
    • Useful docker commands. These commands all need to be run from the project root as they start with the Docker-Compose.yml file.

      • docker-compose --profile <profile> up
        • brings all services that have listed in their profile list of the docker-compose file
      • docker-compose --profile <profile> stop
        • stops all running containers that have listed in ther profile list of the docker-compose file
      • docker-compose --profile <profile> down
        • removes all images of services that have listed in ther profile list of the docker-compose file
      • docker-compose --profile <profile> build
        • builds a new image based off of the dockerfile in each service with that profile
        • This needs to be done when code changes, if you add a new import (pip install something new), or make changes to the dockerfile itself
      • docker system prune -a --volumes
        • This will delete all* unused images and volumes. (It will try to...you may need to double check since there are often volumes left 'hanging' after prune)
    • New profiles can be created, or unused profiles removed, just be sure to check the depends on block in the docker-compose file to ensure a services dependencies are included.

    • While I would recommend using the compose file with profiles from above you can also build an image directly from the folder that contains the dockerfile

      • There may be incompatabilities as required services won't automatically start if you do this, you will need to make sure all required services are available and running.
      • You may also need environment variables that are currently being passed through the docker-compose file.
      • docker build, docker up, etc from the folder that contains the dockerfile you're trying to build and run

Message broker

  • RabbitMQ
    • facilitates publisher/subscriber pattern communication between modules.

Overall Data Flow

  • System Architecture

About

No description, website, or topics provided.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors