GEPA.Visualization (GEPA v0.3.0)

Copy Markdown View Source

Candidate-lineage visualization helpers.

This module ports upstream GEPA's candidate tree utilities to Elixir. It can generate either Graphviz DOT or a self-contained HTML page from raw data, GEPA.State, or GEPA.Result.

Summary

Functions

Generate Graphviz DOT from a GEPA.State or GEPA.Result.

Generate a self-contained HTML visualization from a GEPA.State or GEPA.Result.

Generate a self-contained HTML page from raw optimization data.

Functions

candidate_tree_dot(state)

@spec candidate_tree_dot(GEPA.State.t() | GEPA.Result.t()) :: String.t()

Generate Graphviz DOT from a GEPA.State or GEPA.Result.

candidate_tree_dot_from_data(candidates, parents, val_scores, pareto_front_programs)

@spec candidate_tree_dot_from_data([map()], list() | map(), [number()], map()) ::
  String.t()

Generate Graphviz DOT from raw optimization data.

candidate_tree_html(state)

@spec candidate_tree_html(GEPA.State.t() | GEPA.Result.t()) :: String.t()

Generate a self-contained HTML visualization from a GEPA.State or GEPA.Result.

candidate_tree_html_from_data(candidates, parents, val_scores, pareto_front_programs)

@spec candidate_tree_html_from_data([map()], list() | map(), [number()], map()) ::
  String.t()

Generate a self-contained HTML page from raw optimization data.