def run_locally(args: argparse.Namespace): # noinspection PyUnresolvedReferences from rasax.community import local # pytype: disable=import-error args.rasa_x_port = args.rasa_x_port or DEFAULT_RASA_X_PORT args.port = args.port or DEFAULT_RASA_PORT project_path = "." _validate_rasa_x_start(args, project_path) local.check_license_and_metrics(args) rasa_x_token = generate_rasa_x_token() process = start_rasa_for_local_rasa_x(args, rasa_x_token=rasa_x_token) try: local.main(args, project_path, args.data, token=rasa_x_token) except Exception: print(traceback.format_exc()) cli_utils.print_error( "Sorry, something went wrong (see error above). Make sure to start " "Rasa X with valid data and valid domain and config files. Please, " "also check any warnings that popped up.\nIf you need help fixing " "the issue visit our forum: https://forum.rasa.com/.") finally: process.terminate()
def rasa_x(args: argparse.Namespace): from rasa.cli.utils import print_success, print_error, signal_handler from rasa.core.utils import AvailableEndpoints signal.signal(signal.SIGINT, signal_handler) _configure_logging(args) if args.production: print_success("Starting Rasa X in production mode... 🚀") args.endpoints = get_validated_path( args.endpoints, "endpoints", DEFAULT_ENDPOINTS_PATH, True ) endpoints = AvailableEndpoints.read_endpoints(args.endpoints) _rasa_service(args, endpoints) else: if not is_rasa_x_installed(): print_error( "Rasa X is not installed. The `rasa x` " "command requires an installation of Rasa X." ) sys.exit(1) # noinspection PyUnresolvedReferences from rasax.community import local rasa_x_token = generate_rasa_x_token() start_rasa_for_local_rasa_x(args, rasa_x_token=rasa_x_token) local.main(args, ".", args.data, token=rasa_x_token)
def run_locally(args: argparse.Namespace) -> None: """Run a Rasa X instance locally. Args: args: commandline arguments """ _prevent_failure_if_git_is_not_available() try: # noinspection PyUnresolvedReferences from rasax.community import local except ModuleNotFoundError: raise MissingDependencyException( f"Rasa X does not seem to be installed, but it is needed for this " f"CLI command. You can find more information on how to install Rasa X " f"in local mode in the documentation: " f"{DOCS_BASE_URL_RASA_X}/installation-and-setup/install/local-mode" ) args.rasa_x_port = args.rasa_x_port or DEFAULT_RASA_X_PORT args.port = args.port or DEFAULT_RASA_PORT project_path = "." _validate_rasa_x_start(args, project_path) rasa_x_token = generate_rasa_x_token() process = start_rasa_for_local_rasa_x(args, rasa_x_token=rasa_x_token) config_path = _get_config_path(args) domain_path = _get_domain_path(args) telemetry.track_rasa_x_local() # noinspection PyBroadException try: local.main( args, project_path, args.data, token=rasa_x_token, config_path=config_path, domain_path=domain_path, ) except RasaXTermsError: # User didn't accept the Rasa X terms. pass except Exception: print(traceback.format_exc()) rasa.shared.utils.cli.print_error( "Sorry, something went wrong (see error above). Make sure to start " "Rasa X with valid data and valid domain and config files. Please, " "also check any warnings that popped up.\nIf you need help fixing " "the issue visit our forum: https://forum.rasa.com/." ) finally: process.terminate()
def rasa_x(args: argparse.Namespace): from rasa.cli.utils import print_success, print_error, signal_handler from rasa.core.utils import AvailableEndpoints signal.signal(signal.SIGINT, signal_handler) _configure_logging(args) if args.production: print_success("Starting Rasa X in production mode... 🚀") args.endpoints = get_validated_path(args.endpoints, "endpoints", DEFAULT_ENDPOINTS_PATH, True) endpoints = AvailableEndpoints.read_endpoints(args.endpoints) _rasa_service(args, endpoints) else: if not is_rasa_x_installed(): print_error("Rasa X is not installed. The `rasa x` " "command requires an installation of Rasa X.") sys.exit(1) project_path = "." if not is_rasa_project_setup(project_path): print_error( "This directory is not a valid Rasa project. Use 'rasa init' " "to create a new Rasa project or switch to a valid Rasa project " "directory.") sys.exit(1) _validate_domain(os.path.join(project_path, DEFAULT_DOMAIN_PATH)) if args.data and not os.path.exists(args.data): print_warning( "The provided data path ('{}') does not exists. Rasa X will start " "without any training data.".format(args.data)) # noinspection PyUnresolvedReferences from rasax.community import local local.check_license_and_metrics(args) rasa_x_token = generate_rasa_x_token() process = start_rasa_for_local_rasa_x(args, rasa_x_token=rasa_x_token) try: local.main(args, project_path, args.data, token=rasa_x_token) except Exception: print(traceback.format_exc()) print_error( "Sorry, something went wrong (see error above). Make sure to start " "Rasa X with valid data and valid domain and config files. Please, " "also check any warnings that popped up.\nIf you need help fixing " "the issue visit our forum: https://forum.rasa.com/.") finally: process.terminate()
def rasa_x(args: argparse.Namespace): from rasa.cli.utils import print_success, print_error, signal_handler from rasa.core.utils import AvailableEndpoints signal.signal(signal.SIGINT, signal_handler) _configure_logging(args) if args.production: print_success("Starting Rasa X in production mode... 🚀") args.endpoints = get_validated_path( args.endpoints, "endpoints", DEFAULT_ENDPOINTS_PATH, True ) endpoints = AvailableEndpoints.read_endpoints(args.endpoints) _rasa_service(args, endpoints) else: if not is_rasa_x_installed(): print_error( "Rasa X is not installed. The `rasa x` " "command requires an installation of Rasa X." ) sys.exit(1) project_path = "." if not is_rasa_project_setup(project_path): print_error( "This directory is not a valid Rasa project. Use 'rasa init' " "to create a new Rasa project or switch to a valid Rasa project " "directory." ) sys.exit(1) if args.data and not os.path.exists(args.data): print_warning( "The provided data path ('{}') does not exists. Rasa X will start " "without any training data.".format(args.data) ) # noinspection PyUnresolvedReferences from rasax.community import local local.check_license_and_metrics(args) rasa_x_token = generate_rasa_x_token() process = start_rasa_for_local_rasa_x(args, rasa_x_token=rasa_x_token) try: local.main(args, project_path, args.data, token=rasa_x_token) finally: process.terminate()