Who produces the labels?
Two answers: expert labelers, or an LLM under synthetic labeling.- Expert labelers are the default. People label each item, so you get human judgment on the task. You choose the audience they are drawn from and set the per-task price. How their work is reviewed is a separate choice, covered below.
- Synthetic labeling has an LLM produce the labels instead. It suits high-volume work where you accept automated quality control in place of expert review, and it is billed by tokens rather than a per-task price.
- It runs only on the Generation node. The Quorum node always uses expert labelers.
- It forces the review path to LLM review. Human review is not available on it.
- It is unavailable for data collection, where experts produce new content rather than label data you already have.
One answer or several?
A single expert labels each item on the Generation node. The Quorum node has several experts label the same item independently and returns every answer, one per expert, so you can see where they agree and where they disagree. It picks no winner. To reduce the answers to one, such as a majority vote, you add a Code node after it. The charge for expert labeling scales with the expert count. Three experts per item incur three charges at the per-task price you set plus the platform commission. LLM review, when enabled, also scales with the expert count. Use several answers to measure agreement across experts or avoid relying on one person’s judgment. See the Quorum node reference for the answer array, expert agreement, and what happens when review rejects every answer.Do different items need different handling?
If every item takes the same path, you need no routing. If some items should be handled one way and others another, a Match node routes each item down a branch by testing its field values. Its tests compare text values for equality or inequality, so a Match node can route on a category or a flag. It cannot route directly on a numeric threshold. To route on a threshold, such as a score above a cutoff, put a Code node ahead of the Match node to turn the number into a text flag the test can read. See the Match node reference for conditions, branches, and how routing shapes the cost estimate.Do you need to compute anything?
A Code node runs Python once per item. Use it to reshape fields, compute a value, or call an external service when the answer can be derived without human judgment. It can prepare a routing flag for a Match node, reduce a Quorum node’s several answers to one, or call out to a system of your own. See the Code node reference for the function contract, environment variables, and run-time limits.How quality is enforced on each path
Quality control is on by default on labeling nodes. See Quality control for review settings. LLM review checks every item. Human review checks a sample and is available on expert-labeling Generation nodes only. Quorum also offers a no-review mode that offboards experts who persistently disagree with the majority. Match, Code, Start, and End nodes do not review labels.A worked example: triaging support tickets
Label incoming support tickets by intent. Most are routine and an LLM can handle them. A minority are ambiguous and need expert scrutiny. One pipeline routes each ticket to the treatment it needs.- The Start node reads each ticket’s fields.
- A Code node derives a routing flag from the ticket. For example, a rules check on the text can set
needs_expert. The flag has to exist as a value first, because a Match node tests values, not raw logic. - A Match node reads the flag and routes: routine tickets to one branch, flagged tickets to another. The test is a text comparison, which is why the Code node wrote the flag as text.
- On the routine branch, a Generation node under synthetic labeling has an LLM assign the intent. This is the high-volume, tokens-priced path.
- On the flagged branch, a Quorum node has three experts label the ticket independently. A Code node after it reduces the three answers to one by majority vote, since Quorum picks no winner on its own.
- Both branches connect to the End node, which returns the final intent label. Every branch must reach End, including the default branch a Match node always adds for items that match no condition, or the deploy is blocked.
A Match node reshapes the forecast’s two totals: Expected assumes items spread evenly across the branches, while Maximum sends every item down the costliest path. The forecast does not know your real match rates. See Pipeline pricing.
Ask the agent to build it
You do not wire this route by hand. Describe the shape you want: “route the routine tickets to an LLM and send the rest to three experts, then take the majority”. The agent adds the nodes and connects them. Read back what it built, and adjust any setting either by asking the agent or by editing the node’s cards by hand. The two surfaces change the same settings, apart from a few asymmetries each node’s reference page notes.Related
- Pipeline nodes — the comparison table for all node kinds, side by side
- How data labeling works — how you and the agent divide the work of building a pipeline
- Quality control — the review model behind each labeling path
- Pipeline pricing — what each path costs and how branching shapes the estimate