DeepSpeed-MII 如何查询远程DeepSpeed服务器?

beq87vna  于 3个月前  发布在  其他
关注(0)|答案(4)|浏览(99)

我看不到任何参数允许用户指定要针对的远程DeepSpeed服务器。
有这样的选项吗?
如果有:

  • 如何操作?

如果没有:

  • 我们如何手动实现?
  • 你是否考虑在不久的将来实现这样一个功能?

第二个问题:是否有选项可以在查询时手动加载/卸载模型?

kxeu7u2r

kxeu7u2r1#

如果我理解正确的话,您正在尝试启动一个DeepSpeed-MII GRPC服务器,然后远程向该服务器发送查询。这是正确的吗?
至于第二个问题,我们目前不支持在查询时加载/卸载模型。您可能可以通过使用mii.terminate(old_deployment_name)mii.deploy(new_deployment_name, ...)来实现这一点,当您检测到正在运行的查询与当前部署不匹配时。

xghobddn

xghobddn2#

如果我理解正确的话,您正在尝试启动一个DeepSpeed-MII GRPC服务器,然后远程向该服务器发送查询。是这样吗?
在我看来,DeepSpeed既是一个优化解决方案,也是一个推理引擎( cf )。
有没有办法使用DeepSpeed-MII,让DeepSpeed引擎位于远程服务器上,并向客户端指定目标主机/端口?
至于第二个问题,我们目前不支持在查询时加载/卸载模型。您可能可以通过在检测到运行的查询与当前部署不匹配时,使用mii.terminate(old_deployment_name)和mii.deploy(new_deployment_name, ...)来实现这一点。
您打算处理这个功能吗?如果需要,我很乐意帮助实现这个功能(使用 mii.terminate(old_deployment_name) 然后是 mii.deploy(new_deployment_name, ...) 会非常慢)

d7v8vwbk

d7v8vwbk3#

对不起,这次回复晚了。有一种方法可以在远程服务器上使用MII,并让客户端发送查询并接收响应。目前这个功能仅限于AML部署。你可能可以调整我们在AML部署docker镜像中所做的工作,以便自己实现这个功能:
DeepSpeed-MII/mii/aml_related/templates.py
第105行 747072b
| | dockerfile= \ |
我意识到你之前曾询问过关于为MII提供Docker镜像的问题( #83 )。我一直在努力自动生成我们可以在DockerHub和Azure Marketplace上共享的最新镜像,以便更轻松地部署MII。我认为我们还可以将一些东西从我们的AML docker构建中捆绑起来,以便在非AML部署上实现远程服务器功能。
你打算处理这个功能吗?如果需要的话,我很乐意帮忙实现这个功能😉
我们目前没有计划添加这个功能,但我们始终对外部贡献持开放态度。这里的主要目标是有一个持久的GRPC服务器,可以在运行时切换它正在运行的模型吗?

hsgswve4

hsgswve44#

你好,@mrwyattii,我认为grpc客户端的问题是这个
DeepSpeed-MII/mii/server_client.py
第70行 in 79b56af
| | assertself.num_gpus>0, "GPU count must be greater than 0" |

  • 它在检查GPU是否可用时实际上是在客户端端,所以它不应该关心 :) 将那部分注解掉,使其与远程GRPC服务器一起工作。

相关问题