Skip to content
Maxim AI → EvalGuard

Import your traces. Keep your evaluator results. 

Maxim traces, evaluates and simulates your LLM app. EvalGuard imports that trace and evaluator history and brings a 300+-plugin red-team library, a firewall with 439 DLP patterns of its own, and a managed BYOK gateway to the same spans — one workspace, one bill.

SOC 2 evidence engineISO 42001 mappedEU AI ActGDPR

Observability + evals was the start

What you keep — and what you gain

Keep
  • Trace + span timeline (sessions group into traces)
  • Model + provider (inferred from the model when absent)
  • Input + output capture
  • Token usage — prompt / completion / total
  • Cost + latency per trace
  • Evaluator scores + reasoning per trace
  • Your agent-simulation runs, as trace history
Gain
  • + Firewall with its own detection engine on the request path — 439 DLP patterns, no third-party scanner contract
  • + 300+ red-team plugins + 100+ adversarial strategies, run as a library rather than a services engagement
  • + 200+ eval scorers (LLM-as-judge, pairwise, rubric)
  • + Prompt IDE + optimizer across 90+ providers
  • + Managed BYOK gateway with similarity response caching — hosted by us, not self-run
  • + 50 compliance frameworks mapped to live evidence + a tamper-evident audit log

Maxim AI claims on this page were verified against their source maxim-docs @ 09f5c3e, maxim-py @ 38ce0ad, maximhq/bifrost @ c07758342 (2026-08-08) — on 2026-08-10. Capabilities move; check their current docs before you decide.

Backfill your history

Bring your Maxim traces along

Export your traces from Maxim (their trace-export API, or a dashboard download), then convert them with the EvalGuard CLI. No record is dropped — anything the importer can't parse is surfaced as an error — and re-running the same import never double-counts, because spans use a stable content hash.

# Convert your Maxim export to neutral-shape spans:
npx @evalguard/cli import:traces --from maxim maxim-export.json --output spans.json

Prints an import summary (spans imported / duplicates skipped / parse errors) and writes the neutral spans to spans.json. This is a trace / observability import — it moves your trace history and its evaluator results, not your Maxim project configuration.

What importsWhere it lands
Traces + spansOne EvalGuard span each, grouped by session id
Model + providerspan.model / span.provider (provider inferred when absent)
Input / outputspan.input / span.output
Token usage (prompt / completion / total)span.promptTokens / completionTokens / totalTokens
Costspan.costUsd
Latencyspan.durationMs (duration_ms or latency)
Evaluator scores + reasoning + tags + metadataspan.attributes (maxim.* namespace)

Maxim records token usage as prompt_tokens / completion_tokens / total_tokens. The importer also accepts input_tokens / output_tokens, so a hand-rolled export in either shape lands. Evaluator scores and reasoning are preserved under maxim.eval.*.

One platform, one bill

Trace once. Secure, eval, optimize — everywhere.

Observability is the hook. The platform is why you stay.

Start free