BentoML-0.8.6
What's New
Yatai service helm chart for Kubernetes deployment #945 @jackyzha0
Helm chart offers a convenient way to deploy YataiService to a Kubernetes cluster
# Download BentoML source
$ git clone https://github.com/bentoml/BentoML.git
$ cd BentoML
# 1. Install an ingress controller if your cluster doesn't already have one, Yatai helm chart installs nginx-ingress by default:
$ helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx && helm dependencies build helm/YataiService
# 2. Install YataiService helm chart to the Kubernetes cluster:
$ helm install -f helm/YataiService/values/postgres.yaml yatai-service YataiService
# 3. To uninstall the YataiService from your cluster:
$ helm uninstall yatai-service
@jackyzha0 added a great tutorial about YataiService helm chart deployment. You can find the guide at https://docs.bentoml.org/en/latest/guides/helm.html
[Experimental] AnnotatedImageInput adapter for image plus additional JSON data #973 @ecrows
The AnnotatedImageInput adapter is designed for the common use-cases of image input to include additional information such as object detection bounding boxes, segmentation masks, etc. for prediction. This new adapter significantly improves the developer experience over the previous workaround solution.
Warning: Input adapters are currently under refactoring #1002, we may change the API for AnnotatedImageInput in future releases.
from bentoml.adapters import AnnotatedImageInput
from bentoml.artifact import TensorflowSavedModelArtifact
import bentoml
CLASS_NAMES = ['cat', 'dog']
@bentoml.artifacts([TensorflowSavedModelArtifact('classifier')]
class PetClassification(bentoml.BentoService):
@api(input=AnnotatedImageInput)
def predict(self, image, annotations):
cropped_pets = some_pet_finder(image, annotations)
results = self.artifacts.classifier.predict(cropped_pets)
return [CLASS_NAMES[r] for r in results]
Making a request using curl
$ curl -F image=@image.png -F annotations=@annotations.json http://localhost:5000/predict
You can find the current API reference at https://docs.bentoml.org/en/latest/api/adapters.html#annotatedimageinput
Improvements:
- #992 Make the prediction and feedback loggers log to console by default - @jackyzha0
- #952 Add tutorial for deploying BentoService to Azure SQL server to the documentation @yashika51
Bug Fixes:
- #987 & #991 Better AWS IAM roles handles for Sagemaker Deployment - @dinakar29
- #995 Fix an edge case for encountering RecursionError when running gunicorn server with
--enable-microbatch
on MacOS @bojiang - #1012 Fix ruamel.yaml missing issue when using containerized BentoService with Conda. @parano
Internal & Testing:
- #983 Move CI tests to Github Actions
Contributors:
Thank you, everyone, for contributing to this exciting release!
@bojiang @jackyzha0 @ecrows @dinakar29 @yashika51 @akainth015