Benchmark API¶
decision_bench.benchmark.Benchmark
¶
A named collection of tasks whose datasets remain independently pinned.
Source code in src/decision_bench/benchmark.py
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 | |
datasets
property
¶
Return the benchmark's unique immutable datasets in task order.
examples
cached
property
¶
Load each immutable dataset once, then materialize its member tasks.
select(*, task_name=None, family=None, domain=None, primitive=None)
¶
Return a task-filtered benchmark without changing task identity.
Source code in src/decision_bench/benchmark.py
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 | |
decision_bench.benchmark.BenchmarkSpec
¶
Bases: BaseModel
Describe a named, immutable collection of registered tasks.
Source code in src/decision_bench/benchmark.py
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | |
decision_bench.benchmark.get_benchmark(benchmark='DecisionBench', *, project_root=None)
¶
Resolve a registered name, TOML specification, or BenchmarkSpec.
Source code in src/decision_bench/benchmark.py
148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 | |
decision_bench.task_spec.DecisionTask
¶
One independently versioned dataset-backed evaluation task.
Contributors normally subclass this class, declare metadata, and only
override :meth:dataset_transform when their source dataset does not
already use the :class:DecisionExample schema.
Source code in src/decision_bench/task_spec.py
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | |
dataset_transform(row)
¶
Transform one source row into the normalized DecisionExample shape.
Source code in src/decision_bench/task_spec.py
52 53 54 55 | |
includes(example)
¶
Return whether a normalized row belongs to this task.
Source code in src/decision_bench/task_spec.py
57 58 59 60 61 62 63 64 65 | |
load_data(*, project_root=None, rows=None)
¶
Load, transform, filter, and validate this task's evaluation rows.
Source code in src/decision_bench/task_spec.py
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | |
decision_bench.task_spec.TaskMetadata
¶
Bases: BaseModel
Describe one task, its taxonomy, and its pinned dataset.
Like MTEB's TaskMetadata, this metadata belongs to the task rather than
to a benchmark. Many tasks may point at the same dataset revision, but no
benchmark owns or republishes their rows.
Source code in src/decision_bench/task_spec.py
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | |
decision_bench.task_spec.get_task(name)
¶
Return one freshly initialized registered task.
Source code in src/decision_bench/task_spec.py
107 108 109 110 111 112 113 114 115 | |
decision_bench.task_spec.get_tasks(task_names=None, *, languages=None, families=None, domains=None, primitives=None, exclude_superseded=True)
¶
Return registered tasks selected by metadata, following MTEB's shape.
Source code in src/decision_bench/task_spec.py
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 | |