Developer Portal
Expert Center
API ReferenceConsole

Step 2: Label

The Label step is where domain experts classify and enrich a sample of entities, creating the foundation for training AI models. Labeling captures domain expertise in a scalable format and builds a localized training dataset for inference.

Understanding Labeled and Derived Entities

During labeling, you’ll work with and create two types of entities:

Labeled Entities are Source Entities that you manually classify. When you label AHU-01_SAT as a "Supply Air Temperature Sensor," you’re creating a Labeled Entity with your domain expertise.

Derived Entities are new entities that don’t exist in the original data but are implied by Source Entity patterns. Each Derived Entity is always associated with one or more Source Entities that reference it. For example, when labeling VAV1.ZNT, you identify that:

  • The Source Entity is a BACnet point
  • It implies the existence of “VAV1” (a Variable Air Volume box)
  • Expert Center creates “VAV1” as a Derived Entity linked to the Source Entity VAV1.ZNT

The Labeling Workflow

1. Inspect the Queue

Navigation: Connector Overview → Click Queued in Labeling Progress bar

Screenshot of the Connector overview with Labeling Progress and Inference Results. Queued under Labeling Progress is circled.

Before labeling begins, familiarize yourself with the data in the queue and identify common naming patterns so you can prioritize high-value patterns based on your needs.

Screenshot of the Labeling page from an example organization and CSV Connector, showing a table with Labeling Status, Entity ID, Name, Description, Base Type, Exact Type, DE, and DR.

2. Assign Work

To distribute labeling tasks to your team, click Assign from any connector view.

Screenshot of the Connector overview with Labeling Progress and Inference Results. Assign in the upper right is circled.

When assigning work, you specify:

  • Labeler’s email: Team member responsible
  • Max quantity: Number of entities to assign
  • Base type: Point, Thing, Collection, Place
  • Text pattern (optional): Filter by naming patterns

Screenshot of Assign Labeling Job modal with fields for Labeler Email, Max Quantity, Base type, and Text Pattern.

3. Label Entities

Each Labeled Entity requires completing 3 steps:

  • Classification: Assign the correct type to the entity
  • Derived Entities: Create new entities implied by this one
  • Derived Relations: Define relationships between the source entity itself (SELF) and the derived entities

As an example, let's start with source entity: VAV1.ZNT (Point)

Classification: Classify source entity as Zone_Air_Temperature_Sensor

Add Derived Entities: Create new Derived Entity "VAV1" (and classify as Variable_Air_Volume_Box)

Add Derived Relations:

  • Create relationship VAV1 hasPoint SELF
  • "VAV1.ZNT (SELF) is a point of VAV1 (derived entity)"

Key Concept: SELF always refers to the current source entity being labeled. Derived relations connect SELF to any entities you created in the Derived Entities step.

Assignment Strategies

By Complexity

One strategy is to start with labeling the entities that you know you need, then progress to ambiguous ones:

  • Well-named entities that you need
  • Abbreviated names with context
  • Ambiguous or poorly named entities

By Team Expertise

It's best practice to match assignment to your team members' strengths:

  • Assign HVAC experts to air handling systems
  • Assign controls specialists to sensors and setpoints
  • Assign local specialists to spatial relationships

Progress Tracking

You can monitor labeling through the Labeling Progress bar. Entities will change from Queued to Assigned to Completed.

Screenshot of Label Progress bar, with 20 Entities Queued, 1087 Entities Assigned, 19 Entities Declined, and 8 Entities Completed.

Common Labeling Challenges

Missing Metadata

If there's missing metadata, you have the option to label conservatively with limited information or consider deferring until more data is available.

Completion Indicators

You'll know labeling is complete when all assigned entities are marked Completed.

⚠️Warning signs:

  • If there's a large amount of Assigned entities, check with the assigned labelers on your team.
  • If there are too few labeled examples, assign more entities before proceeding to process.

Next Step

Once assigned entities are completed, proceed to Step 3: Process to generate AI predictions for remaining entities.