Skip to content
Back to skills

Sampling And Evaluation

ASecurity

"Use Mellea 0.8.0.dev0 sampling, requirements, verifiers,

  • 247 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 8, 2026
developmentpythonrustgoshellexpressdockerapibackendsecurity

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 7 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill sampling-and-evaluation --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sampling And Evaluation?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sampling And Evaluation
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-sampling-and-evaluation/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-sampling-and-evaluation)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sampling-and-evaluation
description: "Use Mellea 0.8.0.dev0 sampling, requirements, verifiers,
  evaluators, metrics, and m eval workflows to make generation more reliable and
  measure outputs safely."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# Sampling and evaluation

Use this route when the task involves retries, rejection, majority voting,
feedback, a verifier, an LLM judge, generated-code tests, benchmarks, metrics,
or `m eval`. It turns a generation call into an explicit **candidate → check →
repair/select → report** pipeline.

## Route first

1. Decide whether the goal is reliability during one generation or evaluation
   across a dataset. Use [strategies.md](references/strategies.md) for the
   former and [evaluators-and-verifiers.md](references/evaluators-and-verifiers.md)
   for the latter.
2. Make every check that can be expressed in Python deterministic. Reserve
   LLM-as-a-judge for semantic or subjective criteria, and label its result
   qualitative and model-dependent.
3. Bound both attempts and tokens before running a model. With
   `concurrency_budget > 1`, the upper bound is approximately
   `loop_budget * concurrency_budget` generations per base action; majority
   voting multiplies this again by `number_of_samples`.
4. Use `return_sampling_results=True` when failure diagnosis, per-attempt
   comparisons, or evidence is needed. Otherwise consume the output thunk.
5. For bulk judge evaluation, validate the dataset shape first, then run
   `m eval run`; the bundled validator checks a local configuration without
   opening files, calling a backend, or executing generated code.

## Strategy decision table

| Need | Start with | Important output/limit |
|---|---|---|
| Retry an unchanged prompt | `RejectionSamplingStrategy` | First passing attempt; failed fallback is index 0 |
| Give repair reasons to an instruction | `RepairTemplateStrategy` | Copy of `Instruction` with failed reasons |
| Continue a conversation while repairing | `MultiTurnStrategy` | Requires `ChatContext`; failed fallback is last attempt |
| Fast solver then escalation | `SOFAISamplingStrategy` | S1 loop, then one S2 attempt |
| Consensus-like math/text selection | MBRD strategy | Pairwise score maximum, not a semantic guarantee |
| Force a reasoning token budget | direct budget-forcing module | Ollama-only and usage metadata required |
| Safe generated Python checks | code-generation preset | Prefer static or Docker policy; never trust an allowlist as isolation |

## Reliability contract

A `Requirement` validates the latest model output and returns a
`ValidationResult`. A passing result is `bool(result)` or
`result.as_bool()`—there is no public `.result` property on
`ValidationResult`. Failure `reason` is the repair signal. `score`, `thunk`,
and `context` are optional evidence, not automatic acceptance criteria.

`SamplingResult` contains `success`, the selected `result`, and parallel
histories: `sample_generations`, `sample_validations`, `sample_actions`, and
`sample_contexts`. Treat `success=False` as a failed reliability gate even
though a best-effort selected output is still available.

## Evaluation contract

`TestBasedEval.from_json_file()` accepts one object or a JSON array. Each test
needs `source`, `name`, `instructions`, `id`, and a non-empty `examples` list.
Examples contain role/content messages; the last user message becomes the
input and assistant messages become reference targets. `set_judge_context()`
then supplies input, prediction, target(s), and guidelines to one judge call.

The `m eval` runner produces per-input `score`, `passed`, and `justification`,
plus per-test and overall pass rates. A missing or unparsable score is a failed
input. Do not compare raw judge prose as if it were a deterministic metric.

## Safety and boundaries

Generated code is untrusted input. Static Python requirements parse and inspect
without execution. If execution is required, choose a declared policy and
prefer the Docker tier; `ImportRestrictions` is only an AST check, not a
security boundary. Do not put generated code, shell commands, credentials, or
network side effects into the configuration validator.

`seed` in `model_options` is only a request to the selected backend; it does
not make providers, retries, concurrency, or judges universally reproducible.
Record model, backend, strategy, budgets, seed, requirement definitions, and
raw validation reasons with benchmark results.

## Handoff and related routes

- Typed `@generative`, Pydantic output, parsing, and structured generation:
  route to `generative-programming`.
- General `m` command discovery, serving, backend flags, and deployment:
  route to `serving-and-cli`; this route owns only evaluation semantics and
  the `m eval` contract.
- Hooks and OpenTelemetry setup details: route to
  `observability-and-extensions`; this route records which evaluation signals
  are useful.

Read [api-reference.md](references/api-reference.md) for exact signatures,
[evaluators-and-verifiers.md](references/evaluators-and-verifiers.md) for
assertion-backed patterns, [cli-reference.md](references/cli-reference.md) for
`m eval`, and [troubleshooting.md](references/troubleshooting.md) before
classifying a failure as a model failure.

Files in this skill

  • SKILL.md5.2 KB
  • references/api-reference.md7.6 KB
  • references/cli-reference.md4.3 KB
  • references/evaluators-and-verifiers.md7.4 KB
  • references/strategies.md6.1 KB
  • references/troubleshooting.md6.3 KB
  • scripts/validate_eval_config.py11.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.