Aan de slag
Snel aan de slag
Installeer de engine, zet een project op en krijg een eerste run en een gate-beslissing op je eigen machine. Er verlaat niets die machine tenzij je pusht.
Deze stappen zijn die van de README, hier weergegeven in plaats van overgetypt: README.md is de versie die een ontwikkelaar op GitHub tegenkomt en die de onboardingtests tegen de code toetsen, dus die blijft de bron en deze pagina wordt eruit gegenereerd door scripts/generate_quickstart.py.
Installeren voor ontwikkeling
Vanuit de root van de repository:
python3 -m venv .venv
.venv/bin/python -m pip install -e '.[dev]'
pnpm install --frozen-lockfile
make check
pnpm --filter @oloproof/web checkHet publieke Python-oppervlak is:
from oloproof import evaluate, system, current_case
from oloproof.evaluators import ExactMatch, Contains, JsonSchema, Regex, RubricJudge, evaluatorAlles onder oloproof_core is interne engine-code.
Snelstart
Genereer een klein project:
. .venv/bin/activate
oloproof init /tmp/oloproof-demo
cd /tmp/oloproof-demo
oloproof runEvaluators
De type:-waarden die oloproof.yaml accepteert:
| deterministisch | exact_match, contains, regex, json_schema |
| LLM-judge | rubric_judge, groundedness_judge, citation_support_judge; probability_judge: een ja/nee-, keuze- of scorevraag beantwoord door de waarschijnlijkheden van één token; cascade: eerst een probability judge, een tweede judge alleen waar die onzeker is |
| model | model_classifier: een getrainde classifier of NLI-model op een TEI-server, gescoord tegen een drempel |
| retrieval | hit_rate, recall, mrr, ndcg, citation_validity |
| agent | agent_max_steps, agent_tool_called, agent_no_tool_loop, agent_tool_sequence, agent_no_undeclared_tool, agent_constraints_satisfied |
| multi-agent | agent_route, agent_tool_permissions, agent_max_handoffs |
| predictief | predictive_correct, predictive_precision, predictive_recall, predictive_ranking, predictive_brier, predictive_log_loss, predictive_absolute_error |
Een judge noemt zijn provider (anthropic, openai of openai_compatible), zijn model en zijn rubric als rubric_text of rubric_file. Een judge op een provider die de OpenAI-API spreekt maar niet OpenAI is — Groq, Together, een lokale server — heeft ook base_url en api_key_env nodig:
evaluators:
- type: rubric_judge
criterion: answer_correct
provider: openai_compatible
model: openai/gpt-oss-20b
base_url: https://api.groq.com/openai/v1
api_key_env: GROQ_API_KEY
rubric_text: "PASS if the answer conveys the same fact as the reference."Wie een veld noemt dat een evaluator niet kent, krijgt de velden te zien die hij wel kent.
Beslis opnieuw over een bestaande run zonder het systeem of de evaluators opnieuw te draaien:
oloproof gate RUN_ID --policy release.yamlBekijk de mislukkingen en één case:
oloproof inspect RUN_ID --failures
oloproof inspect RUN_ID --case refund_00Exporteer een bundle en open die in de webworkbench:
oloproof export RUN_ID
OLOPROOF_BUNDLE_DIR="$PWD/.oloproof/bundles" pnpm --dir /path/to/Oloproof --filter @oloproof/web devHet bundlepad moet absoluut zijn, omdat pnpm de app start vanuit apps/web. De workbench opent op zijn werkruimte-overzicht; een losse OLOPROOF_BUNDLE_DIR verschijnt daar als het project local/bundles. Om meerdere projecten op één machine te houden, laat je OLOPROOF_WORKBENCH_DIR in plaats daarvan wijzen naar een map met een workbench.json (docs/API_CONTRACTS.md).