RemoteHttpRuntime

class RemoteHttpRuntime(BaseRuntime):

A runtime that runs functions in a remote HTTP server. You need to run the API server in the remote server first.

Parameters:

  • host (str): The host of the remote server.
  • port (int): The port of the remote server. (default: :obj: 8000) (default: 8000)
  • python_exec (str): The python executable to run the API server. (default: :obj: python3)

init

def __init__(
    self,
    host: str,
    port: int = 8000,
    python_exec: str = 'python3'
):

build

def build(self):

Returns:

RemoteHttpRuntime: The current runtime.

_cleanup

def _cleanup(self):

Clean up the API server when exiting.

add

def add(
    self,
    funcs: Union[FunctionTool, List[FunctionTool]],
    entrypoint: str,
    redirect_stdout: bool = False,
    arguments: Optional[Dict[str, Any]] = None
):

Add a function or list of functions to the runtime.

Parameters:

  • funcs (Union[FunctionTool, List[FunctionTool]]): The function or list of functions to add.
  • entrypoint (str): The entrypoint for the function.
  • redirect_stdout (bool): Whether to return the stdout of the function. (default: :obj: False)
  • arguments (Optional[Dict[str, Any]]): The arguments for the function. (default: :obj: None)

Returns:

RemoteHttpRuntime: The current runtime.

ok

def ok(self):

Returns:

bool: Whether the API Server is running.

wait

def wait(self, timeout: int = 10):

Wait for the API Server to be ready.

Parameters:

  • timeout (int): The number of seconds to wait. (default: :obj: 10) (default: 10)

Returns:

bool: Whether the API Server is ready.

del

def __del__(self):

Clean up the API server when the object is deleted.

stop

def stop(self):

Returns:

RemoteHttpRuntime: The current runtime.

reset

def reset(self):

Returns:

RemoteHttpRuntime: The current runtime.

docs

def docs(self):

Returns:

str: The URL for the API documentation.