Readuntil Mtub

A server for classifying ONT reads in realtime using event data. Run the server and POST event data, recieve responses with TB/not TB.

Install

Docker

docker-compose up -d

Find the IP address to send the requests

docker-machine ip

Alternative install

pip install -r requirements.txt
python server/wsgi.py

Non-python requirements

bwa 0.7.13 must be on path. See Dockerfile for install instructions.

Docker install

Usage

POST a JSON of event data for classification. e.g:

curl -H "Content-Type: application/json" -X POST -d '{"start": [507316, 507344, 507378, 507447, 507555, 507640, 507670, 507726, 507764, 507854, 507872, 507922, 507939, 507976, 507994, 508028, 508064, 508080, 508145, 508189, 508203, 508215, 508325, 508336, 508354, 508391, 508428, 508477, 508487, 508530, 508565, 508583, 508608, 508626, 508635, 508734, 508746, 508838, 508860, 508892, 508929, 508944, 509042, 509065, 509117, 509152, 509172, 509247, 509262, 509390, 509416, 509481, 509491, 509502, 509517, 509574, 509654, 509766, 509817, 509920, 509960, 510038, 510078, 510095, 510128, 510149, 510160, 510169, 510187, 510213, 510241, 510284, 510325, 510364, 510475, 510497, 510517, 510542, 510661, 510715, 510755, 510873, 510931, 510940, 510953, 510992, 511062, 511130, 511173, 511188, 511221, 511322, 511405, 511421, 511530, 511548, 511624, 511721, 511753, 511889], "length": [28, 34, 69, 108, 85, 30, 56, 38, 90, 18, 50, 17, 37, 18, 34, 36, 16, 65, 44, 14, 12, 110, 11, 18, 37, 37, 49, 10, 43, 35, 18, 25, 18, 9, 99, 12, 92, 22, 32, 37, 15, 98, 23, 52, 35, 20, 75, 15, 128, 26, 65, 10, 11, 15, 57, 80, 112, 51, 103, 40, 78, 40, 17, 33, 21, 11, 9, 18, 26, 28, 43, 41, 39, 111, 22, 20, 25, 119, 54, 40, 118, 58, 9, 13, 39, 70, 68, 43, 15, 33, 101, 83, 16, 109, 18, 76, 97, 32, 136, 29], "stdv": [6.542587141247879, 34.028629644921146, 5.584367750357265, 3.773713676113223, 3.774788720706858, 2.2281993277108842, 2.536400094876023, 3.962688169987773, 4.837959144349581, 4.300923319946344, 2.7373404445738223, 3.8752916124582444, 4.5005062491729335, 1.9730331825091758, 5.387112683745194, 2.7318478687410677, 3.2211794442637904, 5.731605516226037, 2.8156118673985633, 5.938946533440528, 2.8502984135702083, 4.706797970337522, 4.685569614453436, 1.8507856848445299, 3.503286234079496, 3.5925132213869, 2.947078212348161, 1.2089875634412057, 3.2953139046157336, 4.298293971611608, 2.914526108931208, 5.343836617538738, 6.899711283910185, 2.627491158348504, 4.096387525767781, 5.25523861013089, 4.024503430439057, 3.8300657657935493, 4.762655118021559, 2.986260198091558, 2.496897395244563, 3.3823044835449187, 2.7065419865381255, 3.57996013455822, 3.7046941369554194, 4.7596591461958875, 4.27233551333393, 3.5780147117605745, 4.507036293590326, 6.753599960221501, 3.5398760170480523, 2.6771631783377856, 1.126965169517082, 1.7671701614623123, 3.313264146212953, 3.033451434950165, 3.4024874023195073, 3.3744634749883318, 4.363398795151803, 4.976409024097713, 3.6461521328423077, 3.7614466968180866, 1.45524282035726, 2.4727420981588994, 3.9900877335593803, 2.1832598678148676, 2.407166242060205, 3.1419573152535185, 2.972363349023085, 2.5734772778491166, 3.6660118328699483, 1.9678373754968945, 2.786549722528898, 4.334620771393704, 2.732156568920659, 3.0100618943059123, 3.184806112564046, 3.309878820073372, 4.127211444508377, 2.6619063050631007, 3.9658881086702342, 4.361270767427891, 4.825171520318622, 3.2136049719568693, 6.2260980055347614, 3.773161601978511, 8.189034910078828, 3.1904856800512147, 2.2295001786911084, 7.091608904656151, 2.9400090616295533, 3.525724564594036, 2.7426080238675703, 3.7103831474383635, 3.341338886669067, 3.708567053151839, 3.512660795030339, 2.801860651683378, 4.416098524980826, 1.8123508004574427], "id": "minion1_PC_MN16255_FAA90892_mtub_L42182_200416_1717_1_ch103_read25_strand_200_events ", "mean": [64.60454838344029, 132.65312622070314, 124.79771795742752, 128.30892381456164, 136.53032226562502, 138.03407047526042, 136.72382701328823, 137.79917522229647, 130.52269352213543, 121.3817650689019, 127.48684533691404, 132.38801879882814, 124.91724388328758, 130.55190443250868, 124.91530334472655, 129.10700761583115, 107.70610359191895, 125.00086846454326, 129.5072350241921, 119.87352826799665, 111.60654256184895, 126.46768805486505, 120.62588534268465, 128.7262225341797, 126.58700267894848, 124.866491336307, 129.72837818379304, 137.7398748779297, 132.80725844272348, 127.25882139369419, 132.76358764648438, 125.75547294921874, 116.20726094563801, 103.15624348958333, 127.42026722301136, 122.48239044189452, 129.15894316300103, 125.62777954101563, 120.84514499664306, 107.94559217298354, 101.02802001953124, 107.64263054049744, 105.9512377398947, 108.59717679537259, 128.33187524414063, 105.98552880859374, 133.2568347330729, 120.84553621419269, 127.15939624786377, 121.51096717247596, 127.23983659480167, 138.86658142089846, 144.54279241388494, 139.2984855957031, 131.76207071940104, 137.2070365753174, 134.36646183558872, 128.0395206705729, 132.52657817951683, 125.18179153442382, 128.57455049954928, 121.84392340087891, 129.93577514648436, 127.36336285215435, 130.0988372512091, 139.91646706321023, 134.28672797309028, 151.95932874891494, 135.46479435847357, 139.29580296107702, 129.21751899186955, 119.22020859136812, 132.48431850335535, 139.10596426749015, 133.58301058682528, 129.12056982421876, 121.11344199218749, 130.77054792131696, 133.1287240261502, 120.48248632812499, 129.60467170327397, 129.23129788102773, 114.06860500759548, 122.5365590256911, 110.76873513246193, 130.59065359933035, 133.38769470214845, 96.62600375863008, 98.92483447265624, 80.72454049775095, 127.44984622766476, 130.03958226950772, 132.96310859680176, 131.19756891933056, 125.24177822536892, 126.383858931692, 131.87499949661728, 138.30322814941408, 128.42659591674806, 138.67555933459053]}' http://127.0.0.1:5000/

{
  "id": "minion1_PC_MN16255_FAA90892_mtub_L42182_200416_1717_1_ch103_read25_strand_200_events ",
  "is_tb": false,
  "response_time": 0.09646201133728027
}