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)} + +
+ )} +
+ } + /> + + )}