Among other deployment options, Flai supports running the automatic classification flows on your hardware, keeping all data private to your local environment. To run Flai flows locally, you need to download the precompiled executable Flai command line tool, create a flow on Flai Web App and execute the same flow using a simple CLI command. The tool supports all processing nodes available on Flai WebApp and agreed FlaiNet classification models.
Supported hardware and operating systems
You can run the Flai command line tool on a Linux-based operating system with a compatible graphical card that greatly speeds up the classification procedure. If a supported graphic card is unavailable or drivers are not properly installed, the software will fall back to using CPU processing power for the classification, increasing its processing time.
The command line tools also require a constant internet connection to our servers to request the created flow, communicate with our WebApp and download all model files for the selected classification model.
Local running benefits
Running the classification procedures locally has many benefits in comparison to running the same procedures on our WebApp:
• Easy to use as it requires only three inputs (WebApp flow, input folder and output folder).
• Data stays with you and is not shared as we do not collect any processing information that could be used to identify what kind of dataset was used.
• Getting faster from raw to processed data as WebApp uploading, preprocessing and downloading are not required.
• Can use the same processing flow locally as on WebApp.
• Processing starts immediately, without the need to wait for available WebApp resources.
• Depending on your local hardware, you can process as large files as you want, without any point count or area limitations.
How to create a local flow
To run any processing on your local machine, you need to create a compatible flow on Flai WebApp. Go to any of your existing Flai projects or create a new one where you create a new flow or edit an existing one to meet local execution requirements.
When you create a new flow you need to use local readers and writer nodes of appropriate data type. Add processing steps that you want to execute. If you want to reuse an existing flow, you need to replace WebApp readers and writers with their local counterparts. Example of a simple point cloud classification flow that uses an Aerial Mapping FlaiNet model:
To link local folders with reader and writer nodes you have to enable API dev mode by selecting a checkbox above the Used processing units progress bar. The option is marked in the above image with a green rectangle. When dev mode is enabled, press the gear icon on every reader and writer to get their unique flow node key. The key is located below a node title (marked with the blue rectangle in the below image) and can be copied using the copy icon.
When you are finished with flow editing, choose a flow title and save it.
How to run local flow
To run a created flow locally, you construct and execute a simple command with just three parameters (more in the case of multiple readers and writers). Every command has to start with the name of the Flai executable which is run_flai_flow.
To connect the tool with the selected flow, you must provide a unique Flai flow identifier that is given as an additional parameter flow_id. To link your local folders with readers and writers you will need a node unique flow keys. Their name is structured as local_point_cloud_reader_X and local_point_cloud_writer_Y, where X and Y are consecutive node numbers of the same node type. If you want to link the folder /folder/with/point_cloud with the first local point cloud reader, set the attribute local_point_cloud_reader_1 to the value of /folder/with/point_cloud.
The command for running example classification flow:
run_flai_flow
--flow_id ba58304b-07dc-4c27-aa7b-b055cd2863d6
--local_point_cloud_reader_1 /folder/with/point_cloud
--local_point_cloud_writer_1 /folder/to/save/results/in
If you want to try running Flai locally, contact us for further information on how to download the executable and prepare your local environment.
Additional information about installing the command line tool, its system requirements and processing nodes is accessible on our documentation page.
Kommentare