diff --git a/app/components/InfoTooltip.tsx b/app/components/InfoTooltip.tsx
index b8601fd..d070496 100644
--- a/app/components/InfoTooltip.tsx
+++ b/app/components/InfoTooltip.tsx
@@ -1,7 +1,9 @@
"use client";
+import type { ReactNode } from "react";
+
interface InfoTooltipProps {
- text: string;
+ text: ReactNode;
}
export default function InfoTooltip({ text }: InfoTooltipProps) {
diff --git a/app/components/evaluations/EvalRunCard.tsx b/app/components/evaluations/EvalRunCard.tsx
index c50db96..65990d1 100644
--- a/app/components/evaluations/EvalRunCard.tsx
+++ b/app/components/evaluations/EvalRunCard.tsx
@@ -8,10 +8,12 @@ import {
AssistantConfig,
getScoreObject,
} from "@/app/components/types";
-import { getStatusColor } from "@/app/components/utils";
+import { getStatusColor, formatCostUSD } from "@/app/components/utils";
import { timeAgo } from "@/app/lib/utils";
import ConfigModal from "@/app/components/ConfigModal";
import ScoreDisplay from "@/app/components/ScoreDisplay";
+import CostIcon from "@/app/components/icons/evaluations/CostIcon";
+import InfoTooltip from "@/app/components/InfoTooltip";
export interface EvalRunCardProps {
job: EvalJob;
@@ -81,7 +83,7 @@ export default function EvalRunCard({
)}
- {/* Row 3: Dataset + Config (left) | Actions (right) */}
+ {/* Row 3: Dataset + Config + Cost (left) | Actions (right) */}
)}
+ {job.cost?.total_cost_usd != null && (
+
+
+ {formatCostUSD(job.cost.total_cost_usd)}
+
+ {job.cost.response && (
+
+ Response generation
+
+ {formatCostUSD(job.cost.response.cost_usd)}
+
+
+ )}
+ {job.cost.embedding && (
+
+ Cosine similarity calculation
+
+ {formatCostUSD(job.cost.embedding.cost_usd)}
+
+
+ )}
+
+ }
+ />
+
+ )}