as_dsprrr_traces() reshapes vitals samples (from a Task's
$get_samples() or from as_vitals_samples()) into the traces format, so
that summarize_traces_df() and other trace tools can analyze them.
Value
A tibble with columns timestamp, latency_ms, input_tokens,
output_tokens, total_tokens, cost, model and prompt_length,
plus prompt and output when requested.
Details
Latency, token counts, cost and timestamp are read from the
solver_metadata (or metadata) list-column; missing values are NA and
missing timestamps are set to the current time.
See also
Other integrations:
as_dsprrr_metric(),
as_ellmer_tool(),
as_vitals_cost(),
as_vitals_samples(),
as_vitals_solver(),
as_vitals_task(),
create_search_tool(),
llm_predict(),
ragnar_tool(),
reasoning_effort(),
register_dsprrr_engine(),
summarize_traces_df(),
temperature(),
top_p(),
use_dsprrr_template(),
validate_workflow(),
vitals_metrics
Examples
samples <- as_vitals_samples(tibble::tibble(
prompt = "question: What is 2+2?",
output = list(list(answer = "4")),
model = "gpt-6-luna",
input_tokens = 52L,
output_tokens = 6L,
cost = 0.0001
))
as_dsprrr_traces(samples)
#> # A tibble: 1 × 10
#> timestamp latency_ms input_tokens output_tokens total_tokens cost
#> <dttm> <dbl> <int> <int> <int> <dbl>
#> 1 2026-09-30 17:43:52 NA 52 6 58 0.0001
#> # ℹ 4 more variables: model <chr>, prompt_length <int>, prompt <chr>,
#> # output <list>
if (FALSE) { # \dontrun{
traces <- as_dsprrr_traces(tsk$get_samples())
summarize_traces_df(traces)
} # }