Step-by-Step Guide to Creating a Reasoning Flow

Creating a Reasoning Flow

A step-by-step guide to creating your first Reasoning Flow and adding objects.


Prerequisites

Before starting, ensure you have:


Step 1: Create a Reasoning Flow

  1. Navigate to Reasoning Flows from the main menu.

Reasoning Flows navigation

  1. Click the + button to create a new Flow.

  2. Fill in the New Flow form:

FieldDescription
NameA descriptive name for your Flow (e.g., "Sales_Data_Pipeline")
Project TypeHow the Flow will be executed (see below)
Project CategoryOrganizational label for filtering (see below)
RepositoryThe data repository this Flow will use
DescriptionOptional description of the Flow's purpose

Project Types

TypeDescriptionBest For
Batch ProcessRuns manually or on a scheduleETL pipelines, model training, reporting
Interactive ProcessRuns on demand via UI with user parametersParameterized analytics, experiment triggers
API CallsExposed as REST endpointPrediction APIs, webhook-triggered tasks

Project Categories

CategoryDescription
Data PipelineIngestion and extraction workflows
Data Preparation & TransformData cleaning, formatting, preprocessing
AI/ML WorkflowTraining, deploying, or predicting with ML models
Processes WorkflowOrchestrating multiple logic layers or dependencies
Big Data ProcessDistributed or parallel data tasks
NotificationsAutomated alert or messaging workflows
Sequential Code ProcessChained execution or custom scripts
APIServices exposed to external systems
KOELSpecialized bioacoustic analysis solution

Note: Project categories are organizational labels — they don't affect runtime behavior.

  1. Click Create.

New Flow form

  1. Click OK on the confirmation popup.

Confirmation popup

Checkpoint: Your new Flow should now appear in the Reasoning Flows list.


Step 2: Create an Object

  1. Click Enter on your newly created Flow to open it.

Enter Flow button

  1. Inside the Flow, click New Object (or the + button).

New Object button

  1. Fill in the New Object form:
FieldDescription
TypeThe functional category of the object
Development EnvironmentThe specific tool or runtime (varies by Type)
NameA descriptive name for the object
DescriptionOptional description

Object Types and Development Environments

Select a Type first, then choose the appropriate Development Environment:


Extract & Load

For automated data extraction from registered data sources.

Development EnvironmentDescription
AP DataPipe Engine - MySQLGUI-based extraction from MySQL-compatible databases
AP DataPipe Engine - FileGUI-based extraction from file sources (CSV, JSON)
Python 3.12 DataPipe EngineCode-driven extraction for custom data sources

Repository Table

For registering and managing tables in your data repository.


Transform & Prepare

For refining data before analytics or modeling.

Development EnvironmentDescription
AP Prepared TableConverts raw tables into analysis-ready datasets
AP Transform String to BinaryConverts text fields to binary representations
AP Transform String to NumericConverts text fields to numeric values
AP Transform Dates to NumericConverts date fields to numeric timestamps
AP SQL Code ExecutionExecutes custom SQL logic
AP Model RenderGenerates formatted outputs from model results
SingularAI Text SplitterSegments text into smaller chunks for processing

AI & Machine Learning

For model training, deployment, and prediction.

Development EnvironmentDescription
AP AutoML EngineLow-code model development with visual workflows
AP AutoML GPU EngineGPU-accelerated training for large datasets
SingularAI Text EmbeddingsGenerates vector representations of text
AP Generative AI WorkflowIntegrates generative AI into pipelines

When to use GPU: Choose AP AutoML GPU Engine for datasets >100,000 rows, deep learning models, or when standard training is too slow.


Visual Object

For custom applications, APIs, and visualizations.

Development EnvironmentDescriptionRecommended For
PHP 8.2 ApplicationModern PHP with latest featuresNew PHP projects
PHP 7.4 ApplicationLegacy PHP supportExisting projects requiring older dependencies
Python 3.8 Advanced ML ApplicationML workflows with scikit-learn, TensorFlow, PyTorchMachine learning
Python 3.8 Advanced ML & PlotlyML with interactive visualizationsDashboards, charts
Python 3 FastAPIHigh-performance REST APIsAPI development
Python 3.9 Google Cloud SpeechAudio transcriptionSpeech-to-text
ARPIA Python NotebookInteractive development environmentExploration, prototyping

Data Models (Nodes)

For defining semantic entities and documenting datasets in the Reasoning Atlas.


AI Apps

For orchestrating multiple objects into complete, deployable applications.


App Droplet Object

For publishing applications to external servers.

Development EnvironmentDescription
PHPTraditional web applications and backend interfaces
PythonAPIs, microservices, ML model endpoints

  1. Click Create.

New Object form

  1. Click OK on the confirmation popup.

Object confirmation

  1. Your Object editor will open, ready for development.

Object editor screen


Next Steps

Now that you've created a Flow and Object, you can:

  • Write code in the editor using PHP or Python
  • Add a config.html to create an interactive configuration form (see Configurable Objects Overview)
  • Connect to your Repository using the database helpers (dkconnect for Python, datakubes-connect.php for PHP)
  • Schedule execution for batch processing
  • Add more Objects to build complete workflows

Related Documentation