I need a python application to train and classify audio or sound using tensorflow 3

Job ID: 34037758

Budget: $250 – $750 USD

## Description:

I need a python application to train and classify audio or sound using tensorflow 3

## Endpoints 

#### http//localhost:8080/v1/classification

Method: POST

Request:

https://gist.github.com/srJones1/05caf11c10a351d6b3926f302066d004

Response : 

{"code":200, "message":"success", "content": "8ea8ee4a-944573ae1d9d"}

Description:

Json contains several groups in which each of them are a training and test dataset of public audio files. 

A new folder should be created using uuid like /home/8ea8ee4a-944573ae1d9d

In this folder, all files should be downloaded in adequate folders for training and validation

#### http//localhost:8080/v1/train

Method: POST

Request: 

{"jobId": "8ea8ee4a-944573ae1d9d"}

Response : 

{"code":200, "message":"training started"}

This endpoint should be launch the training (tfrecords, parsing, etc) asynchronously, I mean it should don't wait until the end to return the response

Also this should launch the test if training was completed successfully.

While training or testing are running, store in this file /home/8ea8ee4a-944573ae1d9d with the current progress

{"stage": "training", "progress": "58%"}

#### http//localhost:8080/v1/detect

Method: POST

Request: 

{"audioFile": "http://public.foo.com/aaa/bbb.wav"}

Response : 

{ "code" : 200, "message" : "success", "content" : { "detection" : "Habeas Corpus" } }

## Milestones

There are 03 http endpoints so, there will be 03 milestones. The first has the main complexity, so you are able to split it on n milestones

## Mandatory:

- Tensorflow

- Only one of these languages are allowed: java, python, nodejs

- Docker. Should have the Dockerfile and readme to be easy to run on any linux machine

- GITHUB with fork or simple branch strategy. This is important. I will create the repository and branch (one by each milestone) 

- Deliverables on each milestone : github pull request from the milestone branch to the main branch

- Don't use external http services or private libraries. It won't make sense if an online service does this.

- You should use any free dataset for your development. Audios are voices from males and females

- Only open source is allowed

## Workflow

- Milestones of the backlog, should be estimated(time) by the developer

- Developer starts some milestone, develop and notify the task completion with the explained deliverables

## Acceptance tests 

- This should be executed on an empty linux machine (without python or any library). So the Dockerfile file should contains all the instructions to be able to run the application, specially the requirements.txt

- To verify that training was successful I will execute the /classification /train and /detect with new files.

## Important

Please, read carefully and ask me anything you need. Pay special attention to the deliverables on the mandatory and acceptance tests sections to avoid misunderstandings.