Skip to main content
Conversation evaluators assess quality across a full conversation, not just a single response. They use case.conversation — a list of {"role", "content"} message dicts.

Setting up a conversation case

All conversation evaluators require case.conversation. The latest response (the assistant turn being evaluated) is passed in as the model’s output.

ConversationRelevance

Checks that the latest assistant response stays on topic relative to the conversation history. When to use: Long support sessions, multi-turn assistants, or any chat where the model must track an ongoing thread instead of resetting context each turn.
Catches assistants that go off-topic, bring up unrelated information, or lose the thread of the conversation. Requires case.conversation.

KnowledgeRetention

Checks that the assistant correctly recalls and applies information from earlier in the conversation. When to use: Personal assistants, onboarding flows, or any session where the user provides facts (preferences, constraints, identifiers) that the model must respect later.
Example: if the user mentioned “I’m vegetarian” in turn 2, and the assistant recommends a steakhouse in turn 6, this fails. Requires case.conversation.

ConversationCompleteness

Checks that the conversation, taken as a whole, resolves the user’s original goal. When to use: Support bots, task-completion agents, or any session whose success is measured by whether the user got what they came for — not just whether individual turns were helpful.
Infers the user’s original goal from the first user turn and assesses whether the final response brings the dialogue to a satisfying resolution. Requires case.conversation.

TurnConsistency

Checks for contradictions between turns — the assistant shouldn’t say one thing and then contradict it later. When to use: Long sessions where the model’s position can drift, or factual chat where flip-flopping erodes user trust.
Catches cases where the model’s stated facts, recommendations, or persona drift across the session. Requires case.conversation.

Full conversation eval example