MLflow 发布候选版
·3 分钟阅读
我们很高兴地宣布为 MLflow 实施发布候选(Release Candidate, RC)流程!MLflow 的功能开发速度比以往任何时候都快,核心维护团队在不久的将来还有更多令人兴奋的计划!然而,随着主要功能开发速度的提高,也带来了破坏现有功能的风险。作为如此广泛使用的项目的维护者,我们深知回归(regressions)的破坏性,并力求尽可能避免它们。除了新功能开发工作外,我们的首要目标是确保生产系统的稳定性。虽然我们有快速(或更快地)发展的理想目标,但我们当然不希望“走得太快而把事情搞砸”。基于这一目标,我们决定引入一个发布候选(RC)流程。RC 流程允许我们在新功能和修复正式发布之前,在一个受控的环境中引入它们。
工作原理
从 MLflow 2.13.0 开始,新的 MLflow 主版本和小版本将在正式发布前两周在 PyPI 上标记为发布候选版本(例如 2.13.0rc0)。
发布候选流程涉及几个关键阶段
- 功能开发冻结:在切出 RC 分支并宣布其可用性之前,我们将冻结 RC 分支,禁止合并功能提交。一旦分支切出,只允许合并错误修复和稳定性相关的 PR,以确保意外的、迟到的、可能引起回归的合并不会破坏即将发布的版本。
- 预发布公告:我们将宣布即将推出的功能和改进,为我们的社区提供预期路线图。
- 发布候选版本推出:我们将提供一个可供测试的发布候选版本,并附有详细说明变更的发布说明。
- 社区测试和反馈:我们鼓励用户在自己的环境中测试发布候选版本,并通过在 MLflow Github 仓库上提交问题报告与我们分享反馈。这些反馈对于识别问题并确保最终版本符合用户需求(即我们没有破坏您的工作流程)至关重要。
- 最终发布:在整合反馈并进行必要的调整后,我们将进行最终发布。该版本将包含在 RC 阶段测试过的所有更新,为所有用户提供一个完善且稳定的体验。
这种方法带来了几项优势
- 增强的稳定性:通过严格测试发布候选版本,我们可以及早识别和解决潜在问题,从而降低对生产环境造成干扰的可能性。
- 社区反馈:RC 阶段为您——MLflow 社区的一员——提供了对即将到来的变更提供反馈的机会。这种协作方法确保最终发布符合我们用户的需求和期望。
- 渐进式采用:用户可以选择在不承诺完全升级的情况下,在新功能发布候选版本中进行试验。这种灵活性支持在各种环境中进行谨慎的集成和彻底的评估。
参与进来
您的参与对该流程的成功至关重要。我们邀请您加入我们,测试即将到来的发布候选版本并分享您的见解。通过共同努力,我们可以确保 MLflow 继续作为您机器学习项目的可靠基础。请继续关注有关我们首个发布候选版本的公告。在我们迈出迈向更稳定、更可靠的 MLflow 的重要一步时,我们期待您的贡献和反馈。
