# 分担と単体（＋見直し）を比べる実験

記事「『調べ物は分けて、1つの文書の編集は1体で』は本当？」の実験コードと生データです。素材はすべて架空のデータです。

## 何を比べたか

2つの課題を、呼び出しの組み方だけ変えて解かせました。道具は一切渡していません（テキストを読んで、テキストを返すだけ）。

| 課題 | 内容 | 採点 |
|---|---|---|
| 編集（E） | 10章・約1,800字の運用ガイドに、6つの変更（用語の統一、料金改定と計算値の更新、保管期間、新章の挿入と章番号の繰り下げ、受付時間、それ以外は変えない）を入れる | 29項目のチェックを、すべて満たした回を「完全合格」 |
| 調べもの（R） | 20製品の製品ガイド（合計約3.4万字）から、製品ごとに4項目を答え、2つの横断質問に答える | 82項目（20×4＋2）を、すべて満たした回を「完全合格」 |

| 記号 | 組み方 |
|---|---|
| E1 / R1 | 単体、1回だけ |
| E2 / R2 | 単体＋見直し1回 |
| E7 / R5 | 単体＋見直し2回 |
| E3 | 3人で分担（章ごとに分け、つなげるだけ。新章を誰が書くかは決めない） |
| E5 | E3に「新章は第4〜7章の担当が書く」と決めた版 |
| E4 / E6 | E3 / E5 のあと、1人が全体を見直す |
| R3 | 20人で分担（製品ごとに1人）。最後に1人が、表だけを見て横断質問に答える |
| R4 | R3のあと、1人が全体を見直す |

## 使ったもの

- モデル：Claude Haiku 4.5（`claude-haiku-4-5-20251001`）各24回、Claude Sonnet 5.5（`claude-sonnet-5-5`）各6回（E7・R5はHaikuのみ）
- 実行：Claude Code 2.1.308 の `claude -p`。`--tools ""`、`--setting-sources ""`、`--strict-mcp-config`、`--no-session-persistence`、空の作業フォルダ。同時に8呼び出しまで
- 日付：2026年10月23日

## 手順

```bash
python3 run.py claude-haiku-4-5-20251001 24 raw_haiku.jsonl   # 実行（Claude Codeにログイン済みであること）
python3 analyze.py raw_haiku.jsonl                            # 完全合格・トークン・換算費用
python3 stats.py raw_haiku.jsonl                              # フィッシャーの正確検定（両側）
python3 review_steps.py                                       # 調べものの「初稿→見直し」の段ごとの合格数
```

## ファイル

- `materials.py`：架空の素材（編集する文書、製品ガイドの生成）と採点（`grade_edit`、`research_gold`）
- `run.py`：実行とモデル呼び出し。`raw_*.jsonl`：1行が1回の実行（呼び出しごとのトークン、最終成果、採点）。編集の中間出力は容量のため空にしてあり、最終稿は `final` に残しています
- トークンは「入力＋キャッシュ読み書き＋出力（思考を含む）」の合計。費用は、API料金に換算した額で、実際の請求ではありません

最初に、素材を小さくした予備実験（編集は6章・約1,200字、調べものは6製品）を各2回だけ回しました。どの組み方でもほぼ満点だったので、素材を今の大きさにしました。今の大きさでも、本実験の前に各2回だけ動作確認をしています。予備実験の結果は集計に入れていません。

## 採点訂正

編集は旧28診断＋期待文書との一致（Lは29、予備実験Sは21チェック）です。期待文書は元の文書と6要求から決定的に作ります。空行の増減と改行コードだけを不問とし、非空行の空白・文字・順序は保ちます。章の重複、参照誤変更、指定外の言い換えも不合格です。`raw_*.jsonl`のfinal・calls・旧checksは変更せず、`analyze.py`・`stats.py`・図は`materials.row_checks`から保存finalを現在のgraderで再採点します。研究課題Rは保存checksを使用します。モデル再実行は不要です。
