Evaluation configuration reference
Evaluation uses typed praval.toml configuration. Defaults apply first, then
the discovered/explicit file, supported environment variables, and explicit
API construction. Unknown fields, bad references, and out-of-bound values fail
before execution.
The EvalConfig fields are enabled, store, offline_concurrency, online,
stores, ragas, judges, and suites, serialized beneath eval.
Core and stores
Field |
Type |
Default |
Validation |
|---|---|---|---|
|
bool |
|
no runtime work when false |
|
|
|
PostgreSQL block required when selected |
|
int |
|
greater than zero |
|
string |
|
local/CI path |
|
string |
none |
uppercase environment-variable name |
The named DSN environment value is read at runtime and never included in
diagnostics. Online evaluation requires store="postgres".
Judge profiles
Each [eval.judges.<name>] sets exactly one of agent or model.
Field |
Default |
Validation |
|---|---|---|
|
|
positive |
|
|
positive |
|
|
explicit opt-in |
|
|
subset of configured evaluator tools |
|
|
or |
|
|
|
|
|
or |
|
|
positive |
|
|
positive finite |
|
default outcome rubric |
1 to 16,384 characters |
|
|
1 to 128 characters |
|
|
1 to 128 characters |
Agent references must exist under [agents]; model references must exist
under [models]. Agent profile max_tool_rounds defaults to 8, and memory
requires a stable memory_namespace.
Suites and gates
Each [eval.suites.<name>] requires dataset and target; judges, metrics,
and gates default empty. Referenced judges and gate result names must exist.
Each gate has optional gate_id, required metric, aggregation, operator, and
finite threshold. required defaults true. percentile is required only for
percentile aggregation and must be in (0, 100].
baseline_max_regression, when supplied, is finite and non-negative.
RAGAS
eval.ragas is optional. model and embedding reference named Praval
profiles, timeout_seconds defaults to 60 and is positive, and
strict_tool_order defaults true. Selected metrics may require only the model,
only embeddings, or both; see Metrics, plugins, and RAGAS.
Online workers
Field |
Default |
Hard bound |
|---|---|---|
|
false |
boolean |
|
0.01 |
0 through 1 |
|
1000 |
1 through 100,000 |
|
2 |
1 through 64 |
|
3 |
1 through 3 |
|
3 |
1 through 3 |
|
180 |
positive, at most 3,600 |
|
120 |
positive, at most 1,800 |
|
0.1 |
positive, at most 60 |
|
0.25 |
0 through 300 |
|
5 |
positive, at most 300 |
|
262,144 |
1 through 1,048,576 |
The lease must be longer than the processor timeout. Configuration never starts a worker; application lifecycle must explicitly construct and start the service.