跳到主要内容

运行时环境 FAQ(常见问题解答)

如何保存我已经安装的依赖而不必每次重启都重复安装?

有以下两种方式可以保存你的依赖:

  1. 在默认环境中使用 pip install --user xxx 命令安装依赖,这样安装的依赖会保存在用户目录下,不会因为重启而丢失。
  2. 创建自定义的独立环境,并将该环境放置在用户目录下(/openbayes/home)。内置 Conda 的运行时参考用 Conda 进行依赖管理;使用 uv 的运行时(Ubuntu 24.04 及更新,如 vllm 0.20 及之后)参考用 uv 管理 Python 环境

但是对于通过 apt 安装的依赖无法保存,需要启动时重新安装。

uv pip install 装的包,重启后怎么没了?还能用 uv 装依赖吗?

可以正常用 uv,平台没有限制 uv 命令。需要区分的是包装到哪里、以及重启后是否保留

uv 系运行时自带的默认 Python 环境是一个位于 /opt/venv 的虚拟环境。uv pip install <包名> 会把包装进这个 venv——可以立即使用,但 /opt/venv 不在持久化目录下,容器重启后会丢失。

如果需要保留,根据场景二选一:

  • 只是在自带环境上多装或固定几个包:用 pip install --user <包名>。包会装到 /output/.pylibs(持久化目录)并自动加入 sys.path,重启后依然可用,详见保留 pip 依赖。注意 uv 自身不支持 --user 参数,这一步用系统自带的 pip
  • 需要一整套独立环境(更换 Python 版本或完全隔离依赖):用 uv venv/openbayes/home 下创建环境,全程用 uv 管理。环境创建在持久化目录下,重启后重新 source 激活即可继续使用,详见用 uv 管理 Python 环境
需求命令重启后保留
临时装包,仅本次会话使用uv pip install <包名>
在自带环境上叠加 / 固定少量包pip install --user <包名>是(/output/.pylibs
整套独立环境(换 Python 版本 / 完全隔离)/openbayes/homeuv venv是(环境在持久化目录)
信息

在自建的 uv 独立环境里安装依赖时不要加 --user;加了之后包会装到 /openbayes/home/.pylibs 而不是当前环境,容易引发依赖冲突。

升级运行时自带的包时报错 "Will not install to the user site because it will lack sys.path precedence"?

新版平台已修复此问题:在 uv 系运行时中直接 pip install --user <包名> 即可升级运行时内置的包(如 transformers、numpy),新版本会正确生效并随工作空间持久保存。

如果你所在的环境仍出现此报错(集群尚未更新到新版),可临时加上 --ignore-installed 参数完成升级:

pip install --user --ignore-installed transformers

如果需要变更多个内置包的版本(例如更换整套框架版本),更推荐创建独立环境,见用 uv 管理 Python 环境

我是否可以使用自定义运行时(镜像)?

目前平台用户暂时无法直接使用自定义镜像,但可以在相应镜像中使用自定义框架(framework)

我们已经添加了 TensorFlow、PyTorch、MXNet、Darknet 常见版本的预置镜像可供直接使用。更多有关镜像的信息可以访问 运行时环境(镜像)概览 了解更多信息。

我们的 私有部署 服务可为企业提供定制化镜像服务。

是否提供 Caffe2 的支持?

根据 Caffe2 的 官方公告,Caffe2 已合并至 PyTorch,所以我们不再提供 Caffe2 框架的支持,目前 OpenBayes 平台已支持 PyTorch 框架