Working paper / 2026
Conversational AI LLM Bench
Abstract
We define conversational AI LLMs as the language models at the center of cascaded voice pipelines, between speech recognition and speech synthesis, that return a first token within one second: a median time to first token of 1,000 ms or less. The Conversational AI LLM Bench (CALLM) benchmarks this category. Each model operates every agent of a multi-agent front desk in healthcare, legal, and customer support, with production-length prompts, executable tools, and per-call database state. A simulated caller pursues a locked task over a simulated phone line, so the model receives only what a speech recognizer would have transcribed, errors included. A deterministic verifier scores tool calls, handoffs, and final database state; pass@1 and pass5 measure single-attempt capability and five-attempt reliability.
Clone the repository, point a model at an industry pack, and reproduce the evaluation environment.
Legal / C2-H1
What this task measures
The caller is on the line with Halverson & Reed for one locked request: Conflict unclear, Harlow Properties. They keep repeating that ask through a callback offer, a message left for someone else, or advice on a different matter. We included it as a hard conflicts and barred callers case because conflict screening before facts is the firm’s hard rule, including keeping existing-client names off the line. The agent succeeds only if it stays on that request, reaches the outcome by following the conflict screening then intake path, and leaves the record exactly as this case requires: the right row written or cleared, and nothing extra.
One model at a time, with a representative pass and fail conversation when both exist. GPT-4.1 is the default view.
Conversation cost $0.020
0:00 / 0:00 · scrub · trace sample · click a span to play, drag to scrub, scroll to pan
Audio
Speech Audio
Agent Audio
Handoffs
Tool Calls
Errors
Transcript
How a conversation passes
Combined pass is the logical and of three deterministic gates. Tools, handoff path, and final database state must all pass on the same conversation. One miss fails the call.
Combined
Fail
This sample fails because tools and handoff path and final database state did not match. Combined cannot pass unless every gate does.
Expected versus actual tool calls on this conversation.
Expected
Actual
Parameters
full_name: Bernice Tolliver
full_name: Bernice Tolliver
phone: 559-555-0208
phone: 559-555-0208
Output
+ caller_safe_message: empty
+ data: {"caller_id":"c_new","name":"Bernice Tolliver","returning_caller":false,"prior_matter_count":0}+ error_code: empty
+ ok: true
Parameters
+ handoff_summary: Bernice Tolliver called to discuss a slip and fall injury outside her apartment that resulted in a broken wrist.
Output
+ role: screening
+ success: true
Parameters
opposing_party: Harlow Properties
opposing_party: Harlow Properties
Output
+ caller_safe_message: empty
+ data: {"status":"unclear","opposing_party":"Harlow Properties","may_proceed":false,"disclosure":"Do not tell the caller who the firm represents or why a conflict exists."}+ error_code: empty
+ ok: true
Parameters
None recorded.
None recorded.
Output
None recorded.
None recorded.
Parameters
- incident_date: 2026-01-18
- practice_area: premises_liability
- state: CA
- summary: Slipped on ice outside apartment and broke wrist; Harlow Properties.
Output
None recorded.
None recorded.
Parameters
- reason_code: conflict_review
Output
None recorded.
None recorded.
Open a row for parameters and outputs. Required tools must appear. Extra industry tools are allowed. Missing: transfer_to_intake, record_intake, escalate_to_human.
Full industry architecture, same graph as the industry page. The left diagram marks the expected specialist path in green. The right diagram marks the path this conversation actually took in green through the shared prefix, then red from the first wrong hop.
Expected path
transfer_to_screening → transfer_to_intake
Actual path
transfer_to_screening
Rows that differ between the expected hangup and the actual hangup.
missing · escalations · 1
Expected
Actual
- caller_id: c_new
- id: 1
- reason_code: conflict_review
missing · intakes · 1
Expected
Actual
- caller_id: c_new
- id: 1
- incident_date: 2026-01-18
- practice_area: premises_liability
- state: CA
- summary: Slipped on ice outside apartment and broke wrist; Harlow Properties.
The locked caller script. Copy it as written.
Open with exactly: "I slipped on ice outside my apartment and broke my wrist." When asked who this would be against, say exactly: "It's Harlow Properties." When asked which state this happened in or where it took place, say exactly: "In CA." If they say they did not catch the state or ask whether you said California, say exactly: "Yes, California." When asked when, say exactly: "It was January eighteenth, twenty twenty six." If asked to describe details or to give a written account of the incident, say exactly: "I'd rather go through that with the lawyer." Do not volunteer the other side, the state, or the date unless asked. If they offer a packet, an appointment, or a person before confirming your contact details are on the file, decline and ask them to finish. Stay until they confirm your contact details are on the file and that a person will review the conflict. A spoken 'we'll take care of it' or sending you to a person without the contact write is not enough. After they confirm your contact details are on the file and a person will review the conflict, say exactly: "Okay, thank you." and end the call.