Platform

client.platform is the SDK surface for durable artifacts including navigation configs, maps, rosbags, and navigation deployment lifecycle.

Navigation config and map listing appear in Simple navigation. Cloud archive catalog listing appears in Cloud archive catalog. Image description appears in Describe an image, and object detection in Detect objects.

Image description and detection

client.platform.ai sends one camera frame to the platform server, which asks a cloud model about it. AI compares this with on-robot models.

  • describe_image returns a text description. Without prompt it describes the scene; with prompt it answers that request from the image.

  • detect_objects returns olo.ai.Detection boxes in the image’s pixels. prompt names what to find; without it every notable object is returned. The boxes feed olo.vision.deproject_region() with an aligned depth image. They come from a general-purpose model, not a trained detector: expect approximate boxes, free-text labels, class_id -1 and a score of 1.0.

  • The server resizes the frame to at most 1024 px on its long edge before inference. Raw images up to 32 MiB are accepted; the Python SDK sends a JPEG.

  • Each call is metered against the organization’s AI credit, like the AI assistant. No API key is needed beyond the platform token.

  • Requests go only to model providers that do not retain or train on them.

  • image_usable is false when darkness, blur, glare, occlusion or framing prevents a reliable answer; read unusable_reason and retake the frame rather than trusting the description.

  • Results describe what the model sees; they are not inspection verdicts.

Platform catalog APIs — durable org artifacts via server Connect RPC.

Client interfaces

class olo.platform.Platform[source]

Bases: object

Server-direct platform surface (client.platform).

__init__(url=None, token=None, *, namespace_resolver=None)[source]
Parameters:
property robot_id: str

Platform robot UUID for this runtime (from OLO_SDK_ROBOT_ID).

class olo.platform.PlatformNavigation[source]

Bases: object

Durable navigation artifact catalogs.

__init__(transport, namespace_resolver=None)[source]
Parameters:
  • transport (ConnectUnaryTransport)

  • namespace_resolver (Callable[[str | None], str] | None)

deployment(robot_id=None, *, namespace=None, timeout=30.0)[source]

Get current navigation deployment state for a robot.

robot_id defaults to OLO_SDK_ROBOT_ID. namespace resolves like start().

Return type:

NavigationDeploymentInfo

Parameters:
  • robot_id (str | None)

  • namespace (str | None)

  • timeout (float)

get_configs(mode, *, timeout=30.0)[source]

List org nav config summaries for a navigation mode (metadata only, never YAML).

Return type:

list[NavConfigInfo]

Parameters:
list_maps(*, timeout=30.0)[source]

List org map summaries (metadata only, never map blobs).

Return type:

list[MapInfo]

Parameters:

timeout (float)

start(robot_id=None, *, mode, config_id, map_id='', initial_pose=None, lidar3d=False, has_laser_scan=False, namespace=None, timeout=30.0)[source]

Start a navigation deployment.

robot_id defaults to OLO_SDK_ROBOT_ID (Appliance-managed runs inject this automatically). namespace defaults to the unambiguous appliance robot namespace (same as client.robot()); pass "" for a global launch or an explicit value when multiple robots share the appliance.

Return type:

NavigationDeploymentInfo

Parameters:
stop(robot_id=None, *, namespace=None, timeout=30.0)[source]

Stop a navigation deployment.

robot_id defaults to OLO_SDK_ROBOT_ID. namespace resolves like start().

Return type:

NavigationDeploymentInfo

Parameters:
  • robot_id (str | None)

  • namespace (str | None)

  • timeout (float)

class olo.platform.PlatformArchive[source]

Bases: object

Cloud archive catalog (bags, videos, and images).

__init__(transport)[source]
Parameters:

transport (ConnectUnaryTransport)

class olo.platform.PlatformAi[source]

Bases: object

Cloud model inference, metered against the organization’s AI credit.

__init__(transport)[source]
Parameters:

transport (ConnectUnaryTransport)

describe_image(image, *, prompt='', timeout=120.0)[source]

Describe an 8-bit image, e.g. from robot.core.get_image(topic).

Without prompt the result describes the scene; with one it answers that request. Check image_usable before trusting the description.

Return type:

ImageDescription

Parameters:
detect_objects(image, *, prompt='', timeout=120.0)[source]

Locate objects in an 8-bit image, e.g. from robot.core.get_image(topic).

prompt names what to find (“fire extinguishers”); without it every notable object is returned. Boxes are in the image’s pixels and feed olo.vision.deproject_region() with an aligned depth image.

Return type:

ImageDetections

Parameters:

Catalog types

class olo.platform.NavConfigInfo[source]

Bases: object

NavConfigInfo(id: str, name: str, is_default: bool, source: olo.platform.types.NavConfigSource, updated_at: Optional[datetime.datetime], supported_modes: tuple[olo.platform.types.NavigationMode, …] = ())

__init__(id, name, is_default, source, updated_at, supported_modes=())
Parameters:
Return type:

None

class olo.platform.MapInfo[source]

Bases: object

MapInfo(id: str, name: str, description: str, map_type: str, file_size: int, is_active: bool, created_at: Optional[datetime.datetime], updated_at: Optional[datetime.datetime])

__init__(id, name, description, map_type, file_size, is_active, created_at, updated_at)
Parameters:
Return type:

None

class olo.platform.BagInfo[source]

Bases: object

BagInfo(name: str, robot_id: str, robot_name: str, total_bytes: int, file_count: int, category: str, location: olo.platform.types.CatalogLocation, updated_at: Optional[datetime.datetime])

__init__(name, robot_id, robot_name, total_bytes, file_count, category, location, updated_at)
Parameters:
Return type:

None

Navigation deployment types

class olo.platform.NavigationDeploymentInfo[source]

Bases: object

NavigationDeploymentInfo(robot_id: str, namespace: str, desired: Optional[olo.platform.types.NavigationDesiredSpec], observed: Optional[olo.platform.types.NavigationObservedStatus])

__init__(robot_id, namespace, desired, observed)
Parameters:
Return type:

None

class olo.platform.NavigationDesiredSpec[source]

Bases: object

NavigationDesiredSpec(state: olo.platform.types.NavigationDesiredState, mode: olo.platform.types.NavigationMode, config_id: str, map_id: str = ‘’, initial_pose: Optional[olo.platform.types.Pose2D] = None, lidar3d: bool = False, has_laser_scan: bool = False, generation: int = 0)

__init__(state, mode, config_id, map_id='', initial_pose=None, lidar3d=False, has_laser_scan=False, generation=0)
Parameters:
Return type:

None

class olo.platform.NavigationObservedStatus[source]

Bases: object

NavigationObservedStatus(state: olo.platform.types.NavigationObservedState, mode: olo.platform.types.NavigationMode = <NavigationMode.UNSPECIFIED: ‘unspecified’>, config_id: str = ‘’, map_id: str = ‘’, generation: int = 0, error_message: str = ‘’)

__init__(state, mode=NavigationMode.UNSPECIFIED, config_id='', map_id='', generation=0, error_message='')
Parameters:
Return type:

None

class olo.platform.Pose2D[source]

Bases: object

Planar pose. yaw maps to proto theta.

__init__(x, y, yaw)
Parameters:
Return type:

None

Image description types

class olo.platform.ImageDescription[source]

Bases: object

Structured description of one image from the platform’s cloud model.

__init__(description, image_usable, unusable_reason, model)
Parameters:
  • description (str)

  • image_usable (bool)

  • unusable_reason (str)

  • model (str)

Return type:

None

class olo.platform.ImageDetections[source]

Bases: object

Objects the platform’s cloud model located in one image.

Boxes are in the request image’s pixels. Labels are open vocabulary, so class_id is -1 and score is 1.0 rather than a calibrated confidence.

__init__(detections, image_usable, unusable_reason, model)
Parameters:
Return type:

None

Enums

class olo.platform.NavConfigSource[source]

Bases: Enum

class olo.platform.CatalogLocation[source]

Bases: Enum

class olo.platform.NavigationMode[source]

Bases: Enum

class olo.platform.NavigationDesiredState[source]

Bases: Enum

class olo.platform.NavigationObservedState[source]

Bases: Enum

client.platform on Client:

Client interfaces

  • Platform — server-direct catalog surface.

  • PlatformNavigation — getConfigs(mode), listMaps(), start(), stop(), deployment().

  • PlatformArchive — listBags(), listVideos(), listImages().

  • PlatformAi — describeImage(image, options), detectObjects(image, options).

  • resolveRobotId — resolve OLO_SDK_ROBOT_ID / an explicit robot UUID.

Catalog types

Navigation deployment types

Image description types