Agents need something to check against
A talk from Frank Coyle argues that agentic systems need something formal to check against. We put RDF on the wire for our own reasons, and the two lines of thinking meet in the same place.
A talk from Frank Coyle argues that agentic systems need something formal to check against. We put RDF on the wire for our own reasons, and the two lines of thinking meet in the same place.
Frank Coyle, who teaches at Berkeley, gave a talk at the AI Engineer conference called Why Agentic Systems Need Ontologies. It is twenty minutes, and it names precisely the problem we designed the network around.
Frank Coyle, UC Berkeley — Why Agentic Systems Need Ontologies, at the AI Engineer conference. Watch on YouTube.
His starting point is that a language model is probabilistic by construction. Hallucination is not a defect waiting to be trained away, it is what the machinery does. So you do not correct it from inside the model. You put something formal outside the model, and you check against it.
Two of his points are load-bearing for us, and we arrived at them from a different direction.
The first is why a graph rather than a table. He puts it plainly: adding something to a relational schema means adding a column and restructuring around it, while adding something to a graph means attaching one more edge. That is the same property we rely on for a different reason — merging two RDF graphs is concatenation, so two peers can combine what they know without negotiating a schema first. He wants it for evolution over time. We want it for evolution across machines. Same property, two payoffs.
The second is reusing vocabularies that already exist rather than inventing private ones — schema.org, FOAF, Dublin Core. On a peer-to-peer network that stops being good manners and becomes the mechanism. Predicates are URIs, so two nodes that have never met can mean the same thing without ever having coordinated. There is no registry to agree on, because the names are already global.
Then there is a structural fit that falls straight out of the design. In our envelope, a query is itself an RDF object — it arrives as a statement carrying its engine-specific text as a literal. Which means a request can be inspected as data before it is executed, by exactly the same machinery that inspects everything else on the wire. Coyle argues that an agent should stay free of side effects until its result has been validated. On this network, the place to put that check already exists: every message is a statement, and statements can be checked.
That is the whole reason the wire language is RDF and not a packed binary struct. A message that describes itself can be examined by something other than the code that produced it — which is what you need when the thing on the other end is probabilistic, and what you need when it is simply a peer running software you did not write.