LayerX-AI is a comprehensive platform to annotate and manage your machine learning data.

Overview

The AI Data Platform

GitHub stars Tweet Generic badge Generic badge

LayerX.ai

Annotate, Manage and Deploy Training Data

The end-to-end AI data management platform that helps ML teams annotate, manage and deploy training data at scale.


projects



annotationtool

LayerX is on a mission to accelerate AI application development by empowering ML teams with modern tools.

Features

  • Image and video annotations with multiple annotation types. Just drag and drop any image or video file and start annotating in minutes.
  • Class and Attribute level annotations. For example, class can be Vehicle, attributes can be Car, Van, Truck.
  • Annotation task management. Byte size tasks make it easy to annotate large volumes of data at scale with high accuracy.
  • Dataset management. Create, manage and deploy training datasets from annotated data. Version control your datasets to track changes over time.
  • Data Augmentation. Increase your dataset size by adding slightly modified copies via built-in augmentation functions like crop, rotation, flip, blur and more.
  • Export your annotated dataset to the training machine in a single click using the dataset sync tool.



Install the Open Source version using the instructions below. If you need a fully hosted version of LayerX you can start a free trial of LayerX Cloud

High Level System Architecture

Component Structure diagram

Backend - Annotation Manager (NodeJS) :

  • REST API endpoint for the Annotation tool frontend
  • Communicates with a Python backend (Flask App) to offload background tasks such as annotations and dataset creation

Backend - data processor (Python Flask) :

  • Creates annotation tasks from uploaded videos or images
  • Creates datasets and augments images

Frontend- (Angular Web) :

  • User interface to manage annotation projects and data sets
  • Rich web interface for annotating objects

Deploy LayerX-ai with docker

Pre-requirements

Tested OS : Ubuntu 20.04.2 LTS

Install git

apt install git-all

Install Docker - https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository

Install Docker Compose - https://docs.docker.com/compose/install/#install-compose-on-linux-systems

Configure to manage Docker as a non-root user

Create an AWS S3 bucket - https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html

Useful

How to find AWS S3 Access key / Secret key

Clone Repository

layerx-community

git clone https://github.com/LayerX-AI/layerx-community.git

Environment Specific Configurations

.env file (at the root of local repository)

URL which system is hosted

BASE_URL = <server  url>
Note: if hosted in local, then put this as "http://localhost"

AWS S3 bucket configurations

AWS_ACCESS_KEY = <AWS_ACCESS_KEY>
AWS_SECRET_KEY = <AWS_SECRET_KEY>
AWS_REGION = <AWS_REGION  eg:us-east-1>
AWS_BUCKET_NAME = <S3 Bucket name>

Support email sending config with sendgrid (optional)

SENDGRID_API_KEY = <SENDGRID_API_KEY>
SUPPORT_EMAIL = <YOUR_EMAIL_ADDRESS_FOR_SUPPORT_EMAIL_SENDING>

google drive configuration for content upload (optional)

GOOGLE_API_KEY = <GOOGLE_API_KEY>
GOOGLE_CLIENT_ID = <GOOGLE_CLIENT_ID.apps.googleusercontent.com>
GOOGLE_CLIENT_SECRET = <GOOGLE_CLIENT_SECRET>
GOOGLE_REFRESH_TOKEN = <GOOGLE PLAYGROUND REFRESH TOKEN>

Run Configure script to update configurations of each components

./configure.sh

Run the system

docker-compose up



LayerX is now ready to use :)



Additional Notes

Directory structure looks like

.
+-- layerX-enterprise/
	---.env
	---default.env
	---docker-compose.yml
	+--contents/
	+--uploads/
	+--mongoData/
	+--DB_initial_data/
	---nginxData/
		+--nginx/
	+--layerx-angular-frontend/
	+--layerx-python-backend/
	+--layerx-nodejs-backend/
	+--layerx-sync-tool

Services and ports

  • mongodb - 1521
  • python_app - 8081
  • node_backend - 8080
  • frontend - 8085
  • nginx - 80

Other Commands

Start the system

docker-compose up

Stop the system

docker-compose stop

Restart the system

docker-compose restart

Start a single service

docker-compose up <service name>
eg: docker-compose up node_backend

Build a container service (node_backend, python_app and frontend)

docker-compose build <service name>
eg: docker-compose build frontend

Build a service from image (mongodb and nginx)

docker-compose up --force-recreate <service name>
eg: docker-compose up --force-recreate nginx
You might also like...

DialogFlow Machine Learning Chatbot

 DialogFlow Machine Learning Chatbot

DialogFlow Machine Learning Chatbot Project Overview This repository contains a backend service for an intelligent chatbot that onboards clients, answ

Jul 21, 2022

Tutorials for MATH 4432 Statistical Machine Learning, HKUST, Fall 2022

Tutorials for MATH 4432 Statistical Machine Learning Course information MATH 4432 Statistical Machine Learning Instructor: Prof. YANG Can Teaching ass

Dec 1, 2022

About Introduction to Machine Learning for the Arts, IMA, Tisch School of the Arts, New York University, Fall 2022

Introduction to Machine Learning for the Arts About Introduction to Machine Learning for the Arts, IMA, Tisch School of the Arts, New York University,

Nov 4, 2022

A Kubernetes monitoring tool to visualize large-scale activity and real-time comprehensive metrics within your cluster.

A Kubernetes monitoring tool to visualize large-scale activity and real-time comprehensive metrics within your cluster.

Armada A light-weight Kubernetes health monitoring tool. Summary Armada is an open-source tool for monitoring the health of your Kubernetes cluster. I

Nov 2, 2022

πŸ“—πŸŒ 🚒 Comprehensive and exhaustive JavaScript & Node.js testing best practices (August 2021)

πŸ“—πŸŒ 🚒 Comprehensive and exhaustive JavaScript & Node.js testing best practices (August 2021)

πŸ‘‡ Why this guide can take your testing skills to the next level πŸ“— 46+ best practices: Super-comprehensive and exhaustive This is a guide for JavaScr

Jan 2, 2023

A comprehensive collection of useful tools developed with the help of Ethers.js to interact with the Ethereum Blockchain to develop great DeFi apps as quickly and easily as possible.

hudi-packages-ethersfactory How to install Installing with npm For more information on using npm check out the docs here. npm i @humandataincome/ether

Mar 30, 2022

βš› A comprehensive framework for server-side applications

βš› A comprehensive framework for server-side applications. Being built on top of TypeScript, it surprisingly supports native Web APIs. It can also be used for REST/GraphQL and many others.

Jul 4, 2022

A comprehensive user sign-up/sign-in system

A comprehensive user sign-up/sign-in system

Nodejs Login System You want a comprehensive user sign-up/sign-in system I strongly suggest you take a look at this repo. The System Includes Welcome

Aug 1, 2022

This app helps manage a bookstore. It comes in handy when you need to manage a personal book store or library. Entirely built on es6.

This app helps manage a bookstore. It comes in handy when you need to manage a personal book store or library. Entirely built on es6.

Awesome Books A Microverse project on learnong javascript. Additional description about the project and its features. Built With HTML5 CSS3 Javascript

Apr 22, 2022
This plugin allows side-by-side notetaking with videos. Annotate your notes with timestamps to directly control the video and remember where each note comes from.

Obsidian Timestamp Notes Use Case Hello Obsidian users! Like all of you, I love using Obsidian for taking notes. My usual workflow is a video in my br

null 74 Jan 2, 2023
JSON Struct is a vocabulary that allows you to annotate and validate JSON documents.

JSON-Struct JSON Struct is a vocabulary that allows you to annotate and validate JSON documents. Examples Basic This is a simple example of vocabulary

Saman 3 May 8, 2022
Do calculations, annotate like you would on a paper "qwikly".

Do calculations, annotate it like you would on a paper "qwikly". 100.00 my wallet balance - 40.00 food ═══════════ 60.00 Create

Viral Ghelani 29 Dec 16, 2022
Nutrition tracking software that uses machine learning to help you reach your body composition goals.

LogSmarter - Machine Learning Nutrition Tracker Description LogSmarter LogSmarterβ„’ is not just another calorie counter. It is an AI nutrition coach th

Ryan Lefebvre 24 Sep 4, 2022
Solana blockchain candy machine app boilerplate on top of Metaplex Candy Machine. NextJS, Tailwind, Anchor, SolanaLabs.React, dev/mainnet automation scripts.

NFT Candy Factory NOTE: This repo will prob only work on unix-based environments. The NFT Candy Factory project is designed to let users fork, customi

Kevin Faveri 261 Dec 30, 2022
Complete Open Source Front End Candy Machine V2 Minter dAPP Built For The Frog Nation NFT Solana Project. Built With React, Candy Machine V2, Typescript

Complete Open Source Front End Candy Machine V2 Minter dAPP Built For The Frog Nation NFT Solana Project. Built With React, Candy Machine V2, Typescript

null 17 Sep 24, 2022
Inferrd makes Machine Learning deployment easy and scalable.

Introduction ML Deployment made simple, scalable and collaborative The new open-source standard to deploy, monitor and secure Machine Learning service

Inferrd 17 Dec 16, 2022
An AWS Cloud Native application using CDK that defines a Serverless Event Driven application for interacting with Twitter and utilising Machine Learning / AI as a Service.

AWS Serverless Event Driven Twitter Bot An AWS Cloud Native application using CDK (Written in TypeScript) that defines a Serverless Event Driven appli

null 4 Dec 18, 2022
HackMIT 2022. 2nd Place in Blockchain for Society sponsored by Jump Crypto. A revolutionary web application that leverages machine learning and blockchain technology to improve the crowdsourcing experience!

?? Wikisafe ?? Wikisafe is a revolutionary new crowdsourcing web application that innovates the process of crowdsourcing information. This application

Benson Liu 5 Dec 8, 2022
Repository for machine learning research.

Machine-Learning A simple project created with django containing links and a chatbot to demonstrate how Choice Coin can be used for eLearning #how to

Choice Coin 17 Oct 21, 2022