Back to components

AI Interfaces

Model Eval Comparison

A side-by-side model decision card balancing quality, latency, cost, and groundedness.

evalmodelscomparison

Installation

Copy and paste the code into your project.

Accessibility notes

Every score and tradeoff is expressed as text, and the preferred candidate includes a visible label instead of color alone.

Evaluation run

Support answer quality

240 cases

Fast

v2-mini

86%

quality score

Latency
420ms
Cost / 1k
$0.18

Balanced

v3

Best

94%

quality score

Latency
880ms
Cost / 1k
$0.42

Balanced improves groundedness by 9 points with a 460ms latency tradeoff.

Preview accent

TypeScript
const candidates = [
  { name: "Fast", model: "v2-mini", quality: 86, latency: "420ms", cost: "$0.18" },
  { name: "Balanced", model: "v3", quality: 94, latency: "880ms", cost: "$0.42" },
];

export function ModelEvalComparison() {
  return (
    <section className="w-full max-w-md rounded-xl border border-white/12 bg-[#0b0f14]/92 p-4 shadow-2xl">
      <header className="flex items-start justify-between gap-4">
        <div><p className="text-xs font-semibold uppercase tracking-[0.18em] text-[#40E0D0]">Evaluation run</p><h3 className="mt-1 text-base font-bold text-white">Support answer quality</h3></div>
        <span className="rounded-full bg-white/[0.06] px-2.5 py-1 text-[0.65rem] font-semibold text-slate-400">240 cases</span>
      </header>
      <div className="mt-4 grid grid-cols-2 gap-3">
        {candidates.map((candidate, index) => (
          <article key={candidate.model} className={index === 1 ? "rounded-lg border border-[#40E0D0]/28 bg-[#40E0D0]/[0.07] p-3" : "rounded-lg border border-white/10 bg-white/[0.035] p-3"}>
            <div className="flex items-center justify-between gap-2"><div><h4 className="text-xs font-bold text-white">{candidate.name}</h4><p className="font-mono text-[0.6rem] text-slate-500">{candidate.model}</p></div>{index === 1 && <span className="rounded-full bg-[#40E0D0]/12 px-2 py-1 text-[0.6rem] font-bold text-[#d8fffb]">Best</span>}</div>
            <p className="mt-4 text-2xl font-black text-white">{candidate.quality}%</p><p className="text-[0.65rem] text-slate-500">quality score</p>
            <dl className="mt-3 space-y-1.5 border-t border-white/8 pt-3 text-[0.65rem]"><div className="flex justify-between"><dt>Latency</dt><dd>{candidate.latency}</dd></div><div className="flex justify-between"><dt>Cost / 1k</dt><dd>{candidate.cost}</dd></div></dl>
          </article>
        ))}
      </div>
      <p className="mt-3 text-[0.65rem] text-slate-500">Balanced improves groundedness by 9 points with a 460ms latency tradeoff.</p>
    </section>
  );
}
Usage
<ModelEvalComparison />

Related components

Confidence

ready
Grounded91%
Coverage84%
Risk12%

AI Interfaces

Confidence Meter

Intermediate

A multi-signal confidence card for grounded AI answers, eval reviews, and release checks.

confidenceevalsignals
View component

Dataset slices

Eval performance

338 cases
  • English · Enterprise

    184 cases

    96%
  • Spanish · SMB

    91 cases

    82%
  • Complex queries

    63 cases

    74%

Largest gap: complex queries trail the average by 14 points.

AI Interfaces

Dataset Slice Explorer

Advanced

A slice-level evaluation view revealing performance gaps across language, customer tier, and query complexity.

datasetevalslices
View component

Failure clusters

Eval root causes

36 failures
  1. 1

    Missing citation

    18 related cases

    High
  2. 2

    Stale context

    11 related cases

    Medium
  3. 3

    Format mismatch

    7 related cases

    Low

AI Interfaces

Eval Failure Clusters

Advanced

A root-cause explorer that groups failed evaluation cases by pattern, volume, and impact.

evalfailuresanalysis
View component