0.0.7 • Published 7 years ago

py-runner v0.0.7

Weekly downloads
2
License
ISC
Repository
github
Last release
7 years ago

##Why I made this package: This package was created to quickly bridge a set of Python machine learning models with a NodeJS service. This solution works, but there is an inherent cost to spinning up the Python processes. For applications that are not time sensitive this solution will work and requires little modification to an existing Python script. Since we're working with std.in/out, be aware that any print lines in your Python file will be piped to the PyPool.execute callback.

##Sample JS File

const PyPool = require('py-runner');
// creates a pool of five readily available processes running the same script
const pool = new PyPool({count: 5, script:'/path/to/your/script.py'}); 
const args = [1,2,3,4,5];
// takes an available process and executes with args
pool.execute(args, result =>{ 
	console.log(result); // print value from python file
});

##Sample Python File

import sys
import json
import numpy as np

def read_in():
	lines = sys.stdin.readlines()
	return json.loads(lines[0])


def main():
	data = read_in()
	np_data = np.array(data)
	result = np.sum(np_data)
	print(result, end='') 


if __name__ == '__main__':
    main()
0.0.7

7 years ago

0.0.6

7 years ago

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago