import os, sys import argparse from appPublic.log import MyLogger, info, debug, warning from appPublic.folderUtils import ProgramPath from appPublic.jsonConfig import getConfig from ahserver.configuredServer import ConfiguredServer from ahserver.serverenv import ServerEnv from whisper_model import WhisperBase64 __version__ = '0.0.1' if __name__ == '__main__': parser = argparse.ArgumentParser(prog="Sage") parser.add_argument('-w', '--workdir') parser.add_argument('-p', '--port') args = parser.parse_args() print(args) workdir = args.workdir or os.getcwd() p = ProgramPath() config = getConfig(workdir, NS={'workdir':workdir, 'ProgramPath':p}) if config.logger: logger = MyLogger(config.logger.name or 'sage', levelname=config.logger.levelname or 'debug', logfile=config.logger.logfile or None) else: logger = MyLogger('sage', levelname='debug') info(f'========sage version={__version__}========') # server = ConfiguredServer(auth_klass=MyAuthAPI, workdir=workdir) server = ConfiguredServer(workdir=workdir) g = ServerEnv() g.whisper_model = WhisperBase64() port = args.port or config.website.port or 8080 port = int(port) server.run(port=port)