Skip to content

はじめる

クイックスタート

エンジンをインストールし、プロジェクトの雛形を作成して、ご自身のマシン上で最初の実行とゲートの判断を得ます。push しない限り、何もそのマシンの外には出ません。

以下の手順は README のものを打ち直さずにここに表示しています。README.md は開発者が GitHub で目にするコピーであり、オンボーディングのテストがコードと照合するものでもあります。そのため README が原本であり、このページは scripts/generate_quickstart.py によってそこから生成されます。

開発用にインストールする

リポジトリのルートで次を実行します。

python3 -m venv .venv
.venv/bin/python -m pip install -e '.[dev]'
pnpm install --frozen-lockfile
make check
pnpm --filter @oloproof/web check

公開されている Python のインターフェースは次のとおりです。

from oloproof import evaluate, system, current_case
from oloproof.evaluators import ExactMatch, Contains, JsonSchema, Regex, RubricJudge, evaluator

oloproof_core 配下はすべてエンジンの内部実装です。

クイックスタート

小さなプロジェクトを生成します。

. .venv/bin/activate
oloproof init /tmp/oloproof-demo
cd /tmp/oloproof-demo
oloproof run

評価器

oloproof.yaml が受け付ける type: の値は次のとおりです。

決定的exact_match、contains、regex、json_schema
LLM ジャッジrubric_judge、groundedness_judge、citation_support_judge; probability_judge: 1 トークンの確率で答える yes/no・選択・スコアの質問; cascade: まず確率ジャッジを使い、それが確信を持てない場合にだけ 2 つ目のジャッジを使う
モデルmodel_classifier: TEI サーバー上の学習済み分類器または NLI モデルで、しきい値に照らして採点します
検索hit_rate、recall、mrr、ndcg、citation_validity
エージェントagent_max_steps、agent_tool_called、agent_no_tool_loop、agent_tool_sequence、agent_no_undeclared_tool、agent_constraints_satisfied
マルチエージェントagent_route、agent_tool_permissions、agent_max_handoffs
予測predictive_correct、predictive_precision、predictive_recall、predictive_ranking、predictive_brier、predictive_log_loss、predictive_absolute_error

ジャッジには、その provider(anthropic、openai、openai_compatible のいずれか)、model、そして rubric_text または rubric_file としてのルーブリックを指定します。OpenAI API を話すが OpenAI ではないプロバイダー(Groq、Together、ローカルサーバーなど)上のジャッジには、さらに base_url と api_key_env が必要です。

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."

評価器が受け付けないフィールドを指定すると、受け付けるフィールドの一覧が返されます。

システムや評価器を再実行せずに、既存の実行を再判定します。

oloproof gate RUN_ID --policy release.yaml

失敗と、1 つのケースを確認します。

oloproof inspect RUN_ID --failures
oloproof inspect RUN_ID --case refund_00

バンドルをエクスポートし、Web ワークベンチで開きます。

oloproof export RUN_ID
OLOPROOF_BUNDLE_DIR="$PWD/.oloproof/bundles" pnpm --dir /path/to/Oloproof --filter @oloproof/web dev

pnpm はアプリを apps/web から起動するため、バンドルのパスは絶対パスでなければなりません。ワークベンチはワークスペースの一覧で開き、単独の OLOPROOF_BUNDLE_DIR はそこに local/bundles プロジェクトとして表示されます。1 台のマシンで複数のプロジェクトを扱うには、代わりに workbench.json を含むディレクトリを OLOPROOF_WORKBENCH_DIR に指定します(docs/API_CONTRACTS.md)。