Ray Serve 无法创建后端

问题描述

我在尝试运行一个非常基本的光线程序时遇到一个非常奇怪的错误

import ray
from ray import serve
import time

ray.init()

# This will start Ray locally and start Serve on top of it.
serve.start()

def my_backend_func(request):
  return "hello"

serve.create_backend("my_backend",my_backend_func)

运行此命令会出现以下错误AttributeError: module 'ray.serve' has no attribute 'create_backend'

如果我将通过调用 serve.start() 创建的对象存储在一个变量中,并使用它来调用 .create_backend 而不是 serve 它可以工作。每个测试用例、示例等都没有这样做,所以我想知道我可能做错了什么。我能够在我尝试过的每台 Linux 机器上以及在 python3.6 和 python3.8 中重新创建这个问题。谢谢!

解决方法

如果将来有人遇到这个问题,这里是答案:

您正在运行较旧的稳定版本 1.2.0,当您使用 pip 安装 ray 时,默认情况下该版本会出现。 Github 存储库中列出的所有示例以及我查看的源代码/测试都在运行较新的 2.0.0 版本,您必须download in a different way