import logging import argparse import os import sys from pyrlang import Node from genservers.image_to_text import ImageToTextViTGPT2 from genservers.clip_ask import ClipAsk from genservers.pil import Pil def main(): parser = argparse.ArgumentParser() parser.add_argument("host_node", help="host node") parser.add_argument("node", help="python node name") parser.add_argument("cookie", help="node cookie. prefer use NODE_COOKIE environment variable.") parser.add_argument("process", help="process name (pyerlai)", default="pyerlai") args = parser.parse_args() cookie = os.environ.get('NODE_COOKIE') if cookie is None: if args.cookie is None: sys.exit("pyerlai-python: missing NODE_COOKIE or --cookie") else: cookie = args.cookie logger = logging.getLogger("pyerlai-python:" + args.node) logging.getLogger("").setLevel(logging.DEBUG) logger.info("starting node") node = Node(node_name=args.node, cookie=cookie, hidden=True) ImageToTextViTGPT2(node, logger) ClipAsk(node, logger) Pil(node, logger) node.run() if __name__ == "__main__": main()