Esempio n. 1
0
 def set_dependencies(self, env: BentoServiceEnv):
     # Note that keras module is not required, user can use tf.keras as an
     # replacement for the keras module. Although tensorflow module is required to
     #  be used as the default Keras backend
     pip_deps = ['tensorflow']
     if self._keras_module_name == 'keras':
         pip_deps.append('keras')
     env.add_pip_packages(pip_deps)
Esempio n. 2
0
 def set_dependencies(self, env: BentoServiceEnv):
     logger.warning(
         "BentoML by default does not include spacy and torchvision package when "
         "using FastaiModelArtifact. To make sure BentoML bundle those packages if "
         "they are required for your model, either import those packages in "
         "BentoService definition file or manually add them via "
         "`@env(pip_packages=['torchvision'])` when defining a BentoService"
     )
     env.add_pip_packages(['torch', "fastai<2.0.0"])
Esempio n. 3
0
    def _config_environments(self):
        self._env = self.__class__._env or BentoServiceEnv()

        for api in self._inference_apis:
            self._env.add_pip_packages(api.input_adapter.pip_dependencies)
            self._env.add_pip_packages(api.output_adapter.pip_dependencies)

        for artifact in self.artifacts.get_artifact_list():
            artifact.set_dependencies(self.env)
Esempio n. 4
0
 def decorator(bento_service_cls):
     bento_service_cls._env = BentoServiceEnv(
         pip_packages=pip_packages or pip_dependencies,
         pip_index_url=pip_index_url,
         pip_trusted_host=pip_trusted_host,
         pip_extra_index_url=pip_extra_index_url,
         infer_pip_packages=infer_pip_packages or auto_pip_dependencies,
         requirements_txt_file=requirements_txt_file,
         conda_channels=conda_channels,
         conda_dependencies=conda_dependencies,
         conda_env_yml_file=conda_env_yml_file,
         setup_sh=setup_sh,
         docker_base_image=docker_base_image,
     )
     return bento_service_cls
Esempio n. 5
0
    def decorator(bento_service_cls):
        artifact_names = set()
        for artifact in artifacts:
            if not isinstance(artifact, BentoServiceArtifact):
                raise InvalidArgument(
                    "BentoService @artifacts decorator only accept list of "
                    "BentoServiceArtifact instances, instead got type: '%s'" %
                    type(artifact))

            if artifact.name in artifact_names:
                raise InvalidArgument(
                    "Duplicated artifact name `%s` detected. Each artifact within one"
                    "BentoService must have an unique name" % artifact.name)

            artifact_names.add(artifact.name)

        bento_service_cls._declared_artifacts = artifacts
        bento_service_cls._env = BentoServiceEnv(infer_pip_packages=True)
        return bento_service_cls
Esempio n. 6
0
 def set_dependencies(self, env: BentoServiceEnv):
     if env._infer_pip_packages:
         env.add_pip_packages(['xgboost'])
Esempio n. 7
0
 def set_dependencies(self, env: BentoServiceEnv):
     if self.backend == 'onnxruntime':
         env.add_pip_packages(['onnxruntime'])
Esempio n. 8
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(["fasttext"])
Esempio n. 9
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(["easyocr>=1.3.0"])
Esempio n. 10
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(['h2o'])
     env.add_conda_dependencies(['openjdk'])
Esempio n. 11
0
 def set_dependencies(self, env: BentoServiceEnv):
     if env._infer_pip_packages:
         env.add_pip_packages(["mxnet"])
Esempio n. 12
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(["numpy"])
Esempio n. 13
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(['pytorch-lightning'])
Esempio n. 14
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(['tensorflow'])
Esempio n. 15
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(['torch', "detectron2"])
Esempio n. 16
0
 def set_dependencies(self, env: BentoServiceEnv):
     if self.backend == "onnxruntime":
         env.add_pip_packages(["onnxruntime"])
     elif self.backend == "onnxruntime-gpu":
         env.add_pip_packages(["onnxruntime-gpu"])
Esempio n. 17
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(['spacy'])
Esempio n. 18
0
 def set_dependencies(self, env: BentoServiceEnv):
     env.add_pip_packages(['coremltools>=4.0b2'])
Esempio n. 19
0
 def set_dependencies(self, env: BentoServiceEnv):
     if env._infer_pip_packages:
         env.add_pip_packages(['scikit-learn'])