戻る
E-004 / エッセイ

KLMを初めて検証する

正しい記録と不正な記録を検証し、適合性の結果が示す範囲を読む。

言語モデルを実行せずにKLMを試せます。例の検証は、契約が要求することと拒否する不整合を知る実用的な入口です。このガイドは2026年10月9日に確認した公開版を使い、モデル全体の振る舞いではなく記録を検証します。

1. リポジトリを取得する

Python 3とGitを用意します。

git clone https://github.com/omasim/KLM.git
cd KLM
git checkout 459aa899c42d27afcbaf475546542b7d17d2cc29

固定した版で、このガイドの確認を再現できます。その後の開発はメインブランチで別に追ってください。検証経路はPython標準ライブラリを使います。

2. 完成した例を検証する

python3 schema/validate_attestation.py --level 4 \
  schema/examples/attestation-worked-example.json

この例ではKLM-4 Attributableが返りました。主張2件、証拠2件、手順1件、関係6件を含み、klm-attestation/0.1を宣言します。旧記録には旧規則が適用されます。

すべての主張が真という意味ではありません。根拠のない主張も含まれ、検証器はその状態と証拠関係の記録方法を確認します。

3. 失敗すべき記録を実行する

python3 schema/validate_attestation.py \
  schema/examples/invalid/attestation-violations.json

FAILとゼロ以外の終了コードが期待されます。パラメトリック知識の出典欄の不整合、トリガーが偽なのに起動した手順、存在しない出力部分への参照、構成値と合わない確信度の差などを検出します。不正な記録の拒否も、正しい記録の受理と同じくらい重要です。

4. 根拠ラベルだけを変える

元を残してコピーします。

cp schema/examples/attestation-worked-example.json \
  /tmp/klm-supported-without-evidence.json

コピー内の該当する主張で、support_statusのunsupportedだけをsupportedに変え、証拠関係は追加しません。

python3 schema/validate_attestation.py --level 2 \
  /tmp/klm-supported-without-evidence.json

ラベルだけでは根拠になりません。検証器はsupports関係の欠如を報告し、指定したKLM-2を拒否します。

結果の読み方

合否の対象は、指定したスキーマと水準の下の 記録 です。モデル全体の適合性、独立した認証、事実の正しさの保証ではありません。

自分の実装では、実際の出典と主張の識別子を作り、欠けた信号を明示し、受理・拒否の理由を調べることが次の段階です。紹介と未知とゼロの論考も参照してください。

出典と版

この文章は次の日に確認した公開版に基づきます: 2026年10月9日. リンクはその版に固定しています。説明例は編集上の解釈であり、研究結果は元の範囲を保持します。その後、研究が変わっている可能性があります。

つながり

記録するKLM — Knowledge Layers Model

正しい例と不正な例でKLMの検証器を説明します。