Python client
Python client
cortex
client
client(env: Optional[str] = None) -> Client
Initialize a client based on the specified environment. If no environment is specified, it will attempt to use the default environment.
Arguments:
env
- Name of the environment to use.
Returns:
Cortex client that can be used to deploy and manage APIs in the specified environment.
new_client
new_client(name: str, operator_endpoint: str) -> Client
Create a new environment to connect to an existing cluster, and initialize a client to deploy and manage APIs on that cluster.
Arguments:
name
- Name of the environment to create.operator_endpoint
- The endpoint for the operator of your Cortex cluster. You can get this endpoint by running the CLI commandcortex cluster info
.
Returns:
Cortex client that can be used to deploy and manage APIs on a cluster.
env_list
env_list() -> list
List all environments configured on this machine.
env_delete
env_delete(name: str)
Delete an environment configured on this machine.
Arguments:
name
- Name of the environment to delete.
cortex.client.Client
create_api
| create_api(api_spec: dict, predictor=None, task=None, requirements=[], conda_packages=[], project_dir: Optional[str] = None, force: bool = True, wait: bool = False) -> list
Deploy an API.
Arguments:
api_spec
- A dictionary defining a single Cortex API. See https://docs.cortex.dev/v/0.32/ for schema.predictor
- A Cortex Predictor class implementation. Not required for TaskAPI/TrafficSplitter kinds.task
- A callable class/function implementation. Not required for RealtimeAPI/BatchAPI/TrafficSplitter kinds.requirements
- A list of PyPI dependencies that will be installed before the predictor class implementation is invoked.conda_packages
- A list of Conda dependencies that will be installed before the predictor class implementation is invoked.project_dir
- Path to a python project.force
- Override any in-progress api updates.wait
- Streams logs until the APIs are ready.
Returns:
Deployment status, API specification, and endpoint for each API.
get_api
| get_api(api_name: str) -> dict
Get information about an API.
Arguments:
api_name
- Name of the API.
Returns:
Information about the API, including the API specification, endpoint, status, and metrics (if applicable).
list_apis
| list_apis() -> list
List all APIs in the environment.
Returns:
List of APIs, including information such as the API specification, endpoint, status, and metrics (if applicable).
get_job
| get_job(api_name: str, job_id: str) -> dict
Get information about a submitted job.
Arguments:
api_name
- Name of the Batch/Task API.job_id
- Job ID.
Returns:
Information about the job, including the job status, worker status, and job progress.
refresh
| refresh(api_name: str, force: bool = False)
Restart all of the replicas for a Realtime API without downtime.
Arguments:
api_name
- Name of the API to refresh.force
- Override an already in-progress API update.
patch
| patch(api_spec: dict, force: bool = False) -> dict
Update the api specification for an API that has already been deployed.
Arguments:
api_spec
- The new api specification to applyforce
- Override an already in-progress API update.
delete_api
| delete_api(api_name: str, keep_cache: bool = False)
Delete an API.
Arguments:
api_name
- Name of the API to delete.keep_cache
- Whether to retain the cached data for this API.
stop_job
| stop_job(api_name: str, job_id: str, keep_cache: bool = False)
Stop a running job.
Arguments:
api_name
- Name of the Batch/Task API.job_id
- ID of the Job to stop.
stream_api_logs
| stream_api_logs(api_name: str)
Stream the logs of an API.
Arguments:
api_name
- Name of the API.
stream_job_logs
| stream_job_logs(api_name: str, job_id: str)
Stream the logs of a Job.
Arguments:
api_name
- Name of the Batch API.job_id
- Job ID.
Last updated