首页
/ BentoML 1.4发布:云原生AI应用开发新体验

BentoML 1.4发布:云原生AI应用开发新体验

2025-06-08 00:39:39作者:蔡怀权

BentoML是一个开源的机器学习模型服务框架,它帮助开发者将训练好的模型快速打包成可部署的服务。作为一个云原生AI应用开发平台,BentoML简化了从模型开发到生产部署的整个流程,支持多种机器学习框架,并提供高性能的API服务能力。

20倍迭代速度提升:BentoML Codespaces

BentoML 1.4最引人注目的新特性是引入了BentoML Codespaces,这是一个基于BentoCloud构建的开发平台。通过bentoml code命令,开发者可以轻松创建一个Codespace环境,实现本地代码与云端环境的自动同步。

这一功能解决了AI开发中的几个关键痛点:

  1. 环境一致性:消除开发与生产环境差异带来的问题
  2. 资源访问:直接使用云端强大的GPU资源
  3. 实时调试:通过云仪表板查看实时日志和进行调试
  4. 依赖管理:自动处理复杂的依赖关系,避免环境配置冲突

Python优先的运行时配置

1.4版本引入了全新的Python SDK来定义运行时配置,开发者现在可以直接在service.py中使用bentoml.images.PythonImage来定义Bento运行时环境,而不再需要依赖bentofile.yamlpyproject.toml文件。

这种改进带来了几个优势:

  • 配置与代码共存,提高可维护性
  • 支持更灵活的运行时定制(Python版本、系统包、依赖项等)
  • 新增上下文敏感的run()方法,用于执行自定义构建命令
  • 保持向后兼容,现有项目可以平滑迁移

模型加载性能优化

针对大型模型加载慢的问题,1.4版本实现了多项优化:

  • 构建时下载模型,减少冷启动时间
  • 使用safetensors并行加载模型权重
  • 新增bentoml.models.HuggingFaceModel,支持从HuggingFace加载模型(包括私有仓库和自定义端点)
  • 引入bentoml.models.BentoModel,支持从BentoCloud和模型存储加载模型

这些改进显著提升了模型服务的启动速度和扩展性能,特别是对于大型语言模型(LLM)等资源密集型应用。

外部部署依赖支持

1.4版本扩展了bentoml.depends()的功能,使其能够支持外部部署依赖:

  • 可以通过名称或URL调用BentoCloud部署
  • 支持调用自托管的HTTP AI服务
  • 简化分布式服务架构的实现

这一特性使得构建复杂的微服务架构变得更加容易,开发者可以轻松集成各种外部服务。

服务API演进

值得注意的是,1.4版本正式弃用了传统的bentoml.Service API(带runners的版本),并计划在未来版本中移除。官方推荐使用新的@bentoml.service装饰器来定义服务。

总结

BentoML 1.4通过引入Codespaces、优化模型加载、改进配置方式等一系列创新,为AI应用开发者提供了更高效、更灵活的工具链。这些改进不仅提升了开发体验,也为生产环境部署带来了更好的性能和可靠性。对于正在构建AI服务的团队来说,1.4版本无疑是一个值得升级的重要里程碑。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
470
3.48 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
718
172
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
209
84
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
695
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1