功能请求:为deepspeed-mii提供Docker镜像,

ctehm74n  于 3个月前  发布在  Docker
关注(0)|答案(3)|浏览(166)

动机:

作为一名开发者,我希望能够轻松地测试 deepspeed-mii
然而,在使用conda(或其他Python包管理器,如pypenv)时,我仍然遇到错误(例如protobuf)。

解决方案:

最快的方法是提供一个 Dockefile ,让开发者/用户可以构建并测试 deepspeed-mii
更令人惊喜的是,在每次 deepspeed-mii 修改后,进行CI构建docker镜像并将其上传/更新到dockerhub。
这可能需要很长时间,但如果能实现就太好了。

yr9zkbsy

yr9zkbsy1#

我认为这是一个很好的主意。我们现在通过DeploymentType.AML途径有一些类似的内容,但是我们在那里构建的Docker镜像是专为AzureML设计的。我们可能会将在那里所做的工作调整为创建一个便于部署的Docker镜像。

同时,你能告诉我在安装deepspeed-mii时遇到了什么错误吗?这个错误是否与protobuf版本有关?我们可能在需求或打包方面有一个需要解决的bug。

mznpcxlj

mznpcxlj2#

我认为这是一个很好的主意。我们现在通过DeploymentType.AML途径有一些类似的内容,但是我们在那里构建的Docker镜像是针对AzureML的。我们可能能够将我们在那里所做的工作调整为创建一个便于部署的Docker镜像。
太好了!如果我能提供任何帮助,我会很高兴的!这对我来说是有用的,因为我需要一个合适的镜像来部署。
与此同时,你能告诉我在安装deepspeed-mii时遇到了什么错误吗?这个错误是否与protobuf版本有关?我们的需求或打包中可能有一个应该解决的错误。
是的,以下是我遵循相应输出所采取的步骤:

- conda create -n mii

- conda activate mii

- conda install pip

- pip install deepspeed-mii

- python main.py:
File "/home/vdmatos/miniconda3/envs/mii-2/lib/python3.10/site-packages/mii/models/providers/diffusers.py", line 6, in diffusers_provider
    from diffusers import DiffusionPipeline
ModuleNotFoundError: No module named 'diffusers'

- pip install diffusers

- python main.py:
File "/home/vdmatos/miniconda3/envs/mii-2/lib/python3.10/site-packages/deepspeed/ops/transformer/inference/attention.py", line 22, in load_triton_flash_attn
    raise ImportError("Please install triton 2.0+ or `pip install deepspeed[sd]`")

- pip install deepspeed[sd]

- python main.py:
File "/home/vdmatos/miniconda3/envs/mii-2/lib/python3.10/site-packages/deepspeed/inference/engine.py", line 238, in _validate_args
    raise ValueError(f"model must be a torch.nn.Module, got {type(self.module)}")
ValueError: model must be a torch.nn.Module, got <class 'diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline'>

(仍在运行this example)
如果你有任何疑问:

  • 我在安装步骤中犯了任何错误
  • 你希望我为此错误打开一个适当的问题(而不是关注这个功能请求)
daolsyd0

daolsyd03#

@Thytu,最近MII和DeepSpeed针对稳定扩散进行了一些更新。您的安装方法看起来没问题,您可以尝试使用最新版本的每个进行再次运行吗?

相关问题