Agents
Agentic Pipelines
How Altius combines ontology-grounded agents with composable pipeline stages, including the LLMTransformNode.
Overview
Altius pipelines are designed for agentic workflows: each stage has explicit contracts, validation boundaries, and semantic context preserved through ontology snapshots.
LLMTransformNode
The LLMTransformNode is the governed LLM row-transform stage. It calls an external model (OpenRouter in v1), requires structured JSON output, and enforces a hard PII boundary before any data leaves your deployment.
Configuration
| Field | Required | Description |
|-------|----------|-------------|
| promptTemplate | Yes | Template with {row} and optional {context} placeholders |
| modelId | Yes | OpenRouter model slug (e.g. anthropic/claude-3.5-sonnet) |
| outputJsonSchema | Yes | JSON Schema every output row must satisfy |
| groundingMode | Yes | none or ontology_retrieve |
| groundingQueryColumn | When grounded | Column value used as the ontology retrieval query |
| evalScenarios | For promotion | Golden scenarios that gate autonomy level upgrades |
Add the node from the canvas sidebar under Transforms → LLM Transform. Configure it in the node panel; validation runs at design time via /nodes/validate.
OpenRouter provider
Set deployment credentials before enabling the node:
OPENROUTER_API_KEY=<from-secret-store>
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1 # default
LLM_NODE_ENABLED=true # deployment kill switch
Token usage is metered per call (prompt_tokens, completion_tokens) and emitted as usage events for billing dashboards.
Ontology grounding
When groundingMode is ontology_retrieve, the node calls schema-engine's retrieve endpoint via OntologyRetrieveAdapter and injects cited snippets into {context}. Retrieval failures degrade gracefully — the row still processes, but without extra context.
Mark your query column in the input schema; non-PII columns only are eligible for the retrieval query.
Eval gating
Attach evalScenarios to the node config to gate autonomy promotion:
{
"evalScenarios": [
{
"name": "fraud-high-amount",
"input_data": { "amount": 99999, "merchant": "unknown" },
"golden_output": { "category": "fraud", "confidence": 0.95 },
"expected_rules": ["output.category in ('fraud','legit','review')"]
}
]
}
Run evals via POST /evals/run (pipeline-core). Promotion requires can_promote: true — all scenarios must pass at the configured min_pass_rate (default 100%).
PII boundary
Columns flagged pii, sensitive, or masked in the input schema are never sent to the LLM provider. This is enforced in execute(), not by prompt engineering.
- Flag identity and financial columns at schema design time.
- Review
pii_columns_detectedwarnings from node validation. - Quarantined rows (schema parse failures) land in the node DLQ — inspect before replay.
See LLM node security review for the full threat model.
Stage Contracts
Every pipeline node declares input and output schemas. Agent stages consume typed context — object types, link types, and action types — so downstream agents reason over structured knowledge, not raw strings.
Verification Boundaries
Schema validation runs at design time on the canvas. At execution time, each stage verifies its inputs against registered contracts before processing. Failed validation surfaces immediately with actionable diagnostics.
Ontology Snapshots
When you propose pipeline changes, Altius attaches an ontology snapshot to the proposal. Reviewers see both graph structure and semantic layer changes, enabling confident approval of agentic pipeline updates.
Getting Started
- Define object types and link types in the Ontology workspace.
- Add an LLM Transform node to your pipeline canvas and configure structured output.
- Attach eval scenarios before promoting autonomy levels.
- Validate connections and propose changes through the sandbox workflow.
See Quick Start for a hands-on walkthrough.