ray/doc/source/serve/doc_code/handle_guide.py

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

45 lines
953 B
Python
Raw Normal View History

import ray
from ray import serve
import requests
# __basic_example_start__
@serve.deployment
class Deployment:
def method1(self, arg):
return f"Method1: {arg}"
def __call__(self, arg):
return f"__call__: {arg}"
handle = serve.run(Deployment.bind())
ray.get(handle.remote("hi")) # Defaults to calling the __call__ method.
ray.get(handle.method1.remote("hi")) # Call a different method.
# __basic_example_end__
# __async_handle_start__
@serve.deployment(route_prefix="/api")
class Deployment:
def say_hello(self, name: str):
return f"Hello {name}!"
def __call__(self, request):
return self.say_hello(request.query_params["name"])
handle = serve.run(Deployment.bind())
# __async_handle_end__
# __async_handle_print_start__
print(requests.get("http://localhost:8000/api?name=Alice"))
# Hello Alice!
print(ray.get(handle.say_hello.remote("Alice")))
# Hello Alice!
# __async_handle_print_end__