BentoML:一体化模型服务框架

BentoML 框架的核心特点及其在AI应用中的实际应用,包括如何快速构建、测试和部署具有高性能和可扩展性的机器学习模型。
直达下载
回到上一页
clickgpt_line.png_noView
介绍

BentoML 是一个开源的模型服务库,旨在使用 Python 构建高性能和可扩展的人工智能应用。它提供了服务优化、模型打包和生产部署所需的一切。

github_ai_big_model_bentoml_1

核心特点:

  1. Bento 容器:为 AI 应用打包代码、推理管道、模型文件、依赖项和运行时配置。
  2. 自动生成 API 服务器:支持 REST API、gRPC 和长时间运行的推理任务。
  3. 自由构建任何 AI 模型:支持从任何模型中心导入或自带使用 PyTorch、TensorFlow 等框架构建的模型。
  4. 推理优化:集成高性能运行时如 ONNX-runtime 和 TorchScript,提高响应时间和吞吐量。
  5. 简化现代 AI 应用架构:Python 优先!轻松扩展复杂的 AI 工作负载。
  6. 随处部署:一键部署到 BentoCloud,或使用 Kubernetes 上的 Yatai 进行可扩展部署。

安装指令:

安装指令:pip install bentoml

应用示例:

  • OpenLLM:在本地及云端运行开源大型语言模型(LLM),如 Llama 2 和 Mistral,作为兼容 OpenAI 的 API 端点。
  • BentoXTTS:根据自定义音频数据将文本转换为语音。
  • BentoSDXLTurbo:创建图像生成应用并一步完成推理操作。
  • BentoControlNet:通过集成 ControlNet 调整图像组成,确保空间一致性。

部署示例:

安装依赖后,定义服务逻辑并在本地运行 BentoML 服务。以下示例展示了如何使用 BentoML 服务本地运行和部署一个简单的文本摘要应用。

    
pip install torch transformers "bentoml>=1.2.0a0"
    
from __future__ import annotations
import bentoml
from transformers import pipeline

@bentoml.service(
    resources={"cpu": "2"},
    traffic={"timeout": 10},
)
class Summarization:
    def __init__(self) -> None:
        self.pipeline = pipeline('summarization')

    @bentoml.api
    def summarize(self, text: str) -> str:
        result = self.pipeline(text)
        return result[0]['summary_text']
    
bentoml serve service:Summarization

BentoML 提供了一个强大的框架,用于快速开发和部署机器学习模型,使得机器学习工程师可以更加专注于模型的创新和优化。

编程学习
编程学习 免费领取编程学习资料 进编程学习交流群
订阅号
视频号
公众号 关注公众号,回复关键字java领取大厂最新面试题
×
编程学习
免费领取编程学习资料 进编程学习交流群