Clarification that carries state
Return a structured question. Accept the user’s choice without losing the rest of the request.
Entity resolution for applications and AI agents
A name is only the beginning. SuperER connects references to your catalog, keeps track of corrections, and asks when the next action needs a clearer answer.
Python library · v0.10
Explore entity resolution
Change the task. See what needs to be resolved.
The request
“Notify Alex.”
Loading the recorded example…
Both names match. Sending a notification requires one specific person.
Requires a person ID and email.
No tool parameters proposed.Evidence: “Alex” matches two directory aliases.
Why resolution gets complicated
Finding a name in a sentence is extraction. Connecting it to the right record is entity resolution. A conversation adds another challenge: knowing which parts of the previous request still apply.
Understand the concepts“Send it to Alex.”
Which person does the name refer to?“Actually, Alex Rivera.”
Replace the identity; preserve unrelated constraints.“Route it to their team instead.”
The tool now needs a team, rather than a person.Inside the library
Find mentions, roles, constraints, and requested changes.
Retrieve catalog candidates and select supported identities.
Apply updates with provenance and explicit uncertainty.
Validate the parameters required by the next tool.
Deterministic rules, retrieval, and optional model adapters share typed evidence. Your application authorizes and executes actions.
Return a structured question. Accept the user’s choice without losing the rest of the request.
Track scope, validity, and provenance. Invalidate dependent decisions when their evidence changes.
Retain independently valid fields. Block contracts that depend on unresolved information.
Build with the concepts