Can the frustration classifier tell why a user is upset, or just that they are?
The classifier on its own says only that a user is unhappy with the assistant; the why comes from root cause analysis on the case, which groups the frustrated conversations by what the agent did.
Scoring is narrow on purpose. It reads one user message with the four before it, and answers one question: is this person unhappy because of the assistant? That’s enough to count frustrated conversations per call site, and not enough to explain them.
When a call site’s rate rises and a case opens, you can run RCA on it. It reads the conversations the finding cites and writes a report of causes, each naming what the agent did, the conversations that show it, where in your code or prompt it comes from when a change lines up with it, and a suggested fix. Causes are grouped by the agent’s behavior, not by what users said.
The limit: a report can come back with no cause found, and it says so rather than inventing one.