首页 > 解决方案 > 在后台加载新模型

问题描述

我为我的 AI 模型制作了一个 API,但我不想在更新模型时有任何停机时间。我搜索了一种在后台加载的方法,一旦加载,我就用新模型切换旧模型。我尝试在子进程之间传递值,但效果不佳。你知道我该怎么做吗?

标签: pythonfastapi

解决方案


如果您在 AWS 上,您可以将序列化模型放在原始存储中,例如 S3 存储桶。在 S3 的情况下,您可以使用可能会有所帮助的存储桶版本控制。然后设置某种触发器。你绝对可以在这里发挥创意,我已经考虑了很多。在实践中,我尝试过的最佳选择是:

  1. 设置一个端点,当调用该端点时,它将在您存储它的任何位置打开新模型。在 storage/S3 存储桶上设置一个 webhook,它将向给定端点发送快速自动调用并自动加载该新项目
  2. 与 #1 相同,但您只需手动加载它。在这两种情况下,您确实需要该端点上的一些安全性,否则任何找到您的站点的人都可以绝对滥用您的堆栈。
  3. 在启动时设置一个计时器,它每晚调用一个给定的函数,在应用程序本身内部运行。该函数被调用,然后继续并重新加载。

可能是我不够聪明(还没有!)使用的其他想法,只是想开始一些对话。


推荐阅读