27 lines
658 B
Python
27 lines
658 B
Python
import requests
|
|
from starlette.requests import Request
|
|
from typing import Dict
|
|
|
|
from ray import serve
|
|
|
|
|
|
# 1: Define a Ray Serve application.
|
|
@serve.deployment
|
|
class MyModelDeployment:
|
|
def __init__(self, msg: str):
|
|
# Initialize model state: could be very large neural net weights.
|
|
self._msg = msg
|
|
|
|
def __call__(self, request: Request) -> Dict:
|
|
return {"result": self._msg}
|
|
|
|
|
|
app = MyModelDeployment.bind(msg="Hello world!")
|
|
|
|
# 2: Deploy the application locally.
|
|
serve.run(app, route_prefix="/")
|
|
|
|
# 3: Query the application and print the result.
|
|
print(requests.get("http://localhost:8000/").json())
|
|
# {'result': 'Hello world!'}
|