Skip to content

Pipelines Client

KavinKrishnan edited this page Nov 30, 2020 · 2 revisions

This client can be utilized to create, remove, and manage pipelines.

>>> from pathlib import Path
>>> from nvidia_clara.pipelines_client import PipelinesClient
>>> import nvidia_clara.pipeline_types as pipeline_types

# Client Creation with IP and Port of running instance of Clara
>>> clara_ip_address = "10.0.0.1"
>>> clara_port = "30031"

>>> pipeline_client = PipelinesClient(target=clara_ip_address, port=clara_port)

# Create list of pipeline_types.PipelineDefinition with local path to pipeline .yaml
>>> file_path = "./liver-tumor-pipeline.yaml"
>>> definitions = [pipeline_types.PipelineDefinition(name=file_path, content=Path(file_path).read_text())]

# Create Pipeline with definition list created
>>> pipeline_id = pipeline_client.create_pipeline(definition=definitions)
<pipeline_types.PipelineId object at 0x05369B78>

>>> pipeline_id.value
'3fd032fcb1a441a1936654b58b1df43b'

# Get List of Created Pipelines PipelinesClient.list_pipelines()
>>> pipelines = [(pipe_info.pipeline_id.value, pipe_info.name) for pipe_info in pipeline_client.list_pipelines()]
[('3fd032fcb1a441a1936654b58b1df43b', 'liver-tumor-pipeline'), ('a4ea69a01a434ad09d05d2e6bf362e70', 'dicom-io-example'), ('e62b8d0207aa4d20b1e4aedd629902c7', 'dicom-io-example')]

# Get Details of Pipeline with PipelinesClient.pipeline_details()
>>> pipeline_details = pipeline_client.pipeline_details(pipeline_id=pipeline_id)
<pipeline_types.PipelineDetails object at 0x05CB6F88>

# Remove Pipeline
>>> pipeline_client.remove_pipeline(pipeline_id=pipeline_id)
Clone this wiki locally