コード例 #1
0
ファイル: remote.py プロジェクト: srikanthkalvakota/myHR
    def upload_model(self, model_dir, max_retries=1):
        # type: (Text, int) -> Optional[Dict[Text, Any]]
        """Upload a Rasa core model to the remote instance."""

        url = "{}/load?token={}".format(self.host, quote_plus(self.token))
        logger.debug("Uploading model to rasa core server.")

        model_zip = utils.zip_folder(model_dir)

        response = None
        while max_retries > 0:
            max_retries -= 1

            try:
                with io.open(model_zip, "rb") as f:
                    response = requests.post(url, files={"model": f})

                if response.status_code == 200:
                    logger.debug("Finished uploading")
                    return response.json()
            except RequestException as e:
                logger.warn("Failed to send model upload request. "
                            "{}".format(e))

            if max_retries > 0:
                # some resting time before we try again - e.g. server
                # might be unavailable / not started yet
                time.sleep(2)

        if response:
            logger.warn("Got a bad response from rasa core while uploading "
                        "the model (Status: {} "
                        "Response: {})".format(response.status_code,
                                               response.text))
        return None
コード例 #2
0
ファイル: conftest.py プロジェクト: stevenshichn/rasa_core
def zipped_moodbot_model():
    # train moodbot if necessary
    policy_file = os.path.join(MOODBOT_MODEL_PATH, 'policy_metadata.json')
    if not os.path.isfile(policy_file):
        trained_moodbot_path()

    zip_path = zip_folder(MOODBOT_MODEL_PATH)

    return zip_path
コード例 #3
0
ファイル: remote.py プロジェクト: githubclj/rasa_core
    def upload_model(self, model_dir, max_retries=1):
        # type: (Text, int) -> Optional[Dict[Text, Any]]
        """Upload a Rasa core model to the remote instance."""

        logger.debug("Uploading model to rasa core server.")

        model_zip = utils.zip_folder(model_dir)

        response = None
        while max_retries > 0:
            max_retries -= 1

            try:
                with io.open(model_zip, "rb") as f:
                    response = self.core_endpoint.request(
                            method="post",
                            subpath="/load",
                            files={"model": f},
                            content_type=None)

                if response.status_code == 200:
                    logger.debug("Finished uploading")
                    return response.json()
            except RequestException as e:
                logger.warn("Failed to send model upload request. "
                            "{}".format(e))

            if max_retries > 0:
                # some resting time before we try again - e.g. server
                # might be unavailable / not started yet
                time.sleep(2)

        if response:
            logger.warn("Got a bad response from rasa core while uploading "
                        "the model (Status: {} "
                        "Response: {})".format(response.status_code,
                                               response.text))
        return None
コード例 #4
0
ファイル: remote.py プロジェクト: hanish2760/ChatBot
    def upload_model(self,
                     model_dir: Text,
                     max_retries: int = 1) -> Optional[Dict[Text, Any]]:
        """Upload a Rasa core model to the remote instance."""

        logger.debug("Uploading model to rasa core server.")

        model_zip = utils.zip_folder(model_dir)

        response = None
        while max_retries > 0:
            max_retries -= 1

            try:
                with io.open(model_zip, "rb") as f:
                    response = self.core_endpoint.request(method="post",
                                                          subpath="/load",
                                                          files={"model": f},
                                                          content_type=None)

                if response.status_code == 200:
                    logger.debug("Finished uploading")
                    return response.json()
            except RequestException as e:
                logger.warning("Failed to send model upload request. "
                               "{}".format(e))

            if max_retries > 0:
                # some resting time before we try again - e.g. server
                # might be unavailable / not started yet
                time.sleep(10)

        if response:
            logger.warning("Got a bad response from rasa core while uploading "
                           "the model (Status: {} "
                           "Response: {})".format(response.status_code,
                                                  response.text))
        return None