結論:「150タイル × 8並列」が、Claudeに大量画像を読ませる時の安全運転ルールです。
- 1セッションで1134タイル一気読みすると、容量上限で落ちる
- 8つの「サブエージェント」に150タイルずつ渡せば、同じ処理が約6倍速で安定
- 失敗の経験を スキル化 すれば、二度と同じミスを踏まない
1300枚の画像を一気に読ませて、途中で全部消えたんですよね…
私もその失敗から学びました。原因と解決策を、非エンジニアでも使える形で整理します。
「失敗の再現を仕組みで防ぐ」が、今回の主題です。
誰向けの記事か
これ、誰が読むといいの?
Claude Codeで「大量の画像・PDF・データを一気に読ませたい」と思っている非エンジニアの方です。
具体的には次のような方を想定しています。
- 録画動画を切り出した画像が数百〜数千枚たまっている
- 大量のPDFや資料から情報を抜き出したい
- 「サブエージェント」という単語を聞いたが、実例が分からない
技術解説より、実際の作業で失敗しないための実践ルール に重きを置いています。
何が起きたか:1300枚を1回で読ませて落ちた
具体的に何が起きたんですか?
あるコミュニティのAI活用事例集を、動画録画から約1,300枚の画像に切り出していました。これを全部読み込んでカテゴリ別に集計したかったのです。
最初の作戦はシンプルでした。
「Claude Codeに全部の画像を渡して、カテゴリ集計してください」
これを 1セッションで一気にやろうとした わけです。
起きたこと
| タイミング | 状態 |
|---|---|
| 開始 | 1,134タイルを順番に読み込み開始 |
| 中盤 | 約241ツールコール、進捗60%程度 |
| ある瞬間 | 「32MB上限を超えた」エラーで停止 |
| 結果 | それまでの進捗データが回収不能、ゼロからやり直し |
⚠️ Claudeのセッションには「画像データを保持できる総容量」の上限があります。大量の画像を1回に読ませると、ある時点で必ず詰まります。それまでの作業がすべて消えるリスクは想像以上に痛いです。
なぜ起きるのか
Claude Code は 会話履歴 + 画像データ をまとめて記憶するため、画像を大量に読み込むほど記憶容量を圧迫します。
ある容量を超えると、Claudeはそれ以上の処理を受け付けなくなり、そのセッションは復旧不能 になります。
📌 「全部読んで」と1回で頼むのは、AIにとって『重すぎる荷物を一度に運べ』と命じているのと同じ。途中で必ずバランスを崩します。
解決策:「150タイル × 8並列」のルール
じゃあ、どうやって乗り越えたの?
作業を **8つに分割して、それぞれを別のClaudeに同時にやらせる** ことです。これが「サブエージェント並列」と呼ばれる手法です。
採用したルールはシンプルです。
📌 大量画像処理の安全運転ルール - 1チャンク = 最大150タイルまで - 同時起動するサブエージェント = 最大8つ - 各サブエージェントには「画像はテキスト抽出だけして、JSONで返して」と指示する
全体の流れ
なぜ150タイルなのか
過去に 1,134タイル一気読みで落ちた という具体的な失敗データから逆算しました。
| 数値 | 根拠 |
|---|---|
| 1,134タイル | 落ちた実績ライン |
| 150タイル | 1,134 ÷ 8 = 約142、安全マージンで150に設定 |
| 8並列 | 安定して同時起動できる目安 |
⚠️ 「大丈夫そうだから200にしよう」と上限を上げると、また落ちます。失敗の経験から作ったルールは、そのまま守る のが正解です。
なぜ画像をテキストだけにして返すのか
サブエージェントが読んだ画像を そのままメインに渡すと、結局メインの容量を圧迫 します。
そこで「画像はテキスト抽出にしか使わない、戻すのはJSONテキストだけ」とルール化しました。
📌 画像はサブで読み捨て、戻すのはテキストだけ。これが容量問題を回避する最大のコツです。
結果:6倍速で安定処理
実際どれくらい早くなったの?
処理全体で約6倍速、しかも途中で落ちることがなくなりました。
| 指標 | 1セッション一気読み | 並列サブエージェント |
|---|---|---|
| 処理時間 | 完走できず(途中停止) | 約10分で完了 |
| 安定性 | 途中で落ちると全進捗消失 | チャンク単位で再投入できる |
| 並列度 | 1(直列) | 8(並列) |
| 速度比較 | - | 約6倍速(推定) |
✅ 並列サブエージェント導入で得たもの 1. 約6倍速の処理時間短縮 2. 途中で落ちても全部消えない安心感 3. 同じ規模のタスクを次回も再現できる仕組み
スキル化して「失敗の再現」を仕組みで防ぐ
1度成功したら、次回も同じやり方を使えるようにしたいよね?
その通り。一度上手くいった手順を **スキル** として保存すれば、半年後の自分も、別のClaudeセッションも、同じ勝ち方を再現できます。
スキルファイルに書いた禁止事項
スキル化する時、冒頭に「絶対やってはいけないこと」を明記 しました。
## 絶対禁止事項
1. Claudeがコードを自作して実行するの禁止
2. 1チャンク=150タイル上限を厳守
3. 各サブエージェントには「画像はテキストだけ返す」と明記
4. 古いスキルファイルが残っていないか確認
📌 「次回もまた同じミスをするかも」と思ったポイントは、スキルの先頭に書く のが効きます。Claudeが先にそれを読むので、二度と踏まなくなります。
呼び出し方は1行
スキル化した後の呼び出しは、たった1行です。
○○フォルダを精読して
これだけで、Claudeが自動的に「150タイル × 8並列」の手順を再生してくれます。
💡 一度作ったスキルは、別のセッションでも使えます。半年後に「あれ、どうやったんだっけ?」となっても、ファイルを呼ぶだけで瞬時に再現できるのがスキルの強さです。
「並列サブエージェント」が向く作業 / 向かない作業
何でも並列にすればいいわけじゃないよね?
その通り。**作業同士が独立しているか** が判断基準です。
向いている作業
| 作業 | 例 |
|---|---|
| 大量画像の情報抽出 | 数百〜数千枚の事例画像からカテゴリ集計 |
| 大量PDFの要約 | 100本の論文から論点を抽出 |
| 独立した重複除去 | IDが被らないようマージするだけの作業 |
これらは チャンクごとに独立して結果が出る ので、並列が効きます。
向かない作業
| 作業 | 理由 |
|---|---|
| 1個目の結果を見て2個目を書く文章生成 | 順番に依存するため並列不可 |
| ストーリーやコードの連続生成 | 直前の結果が次の入力 |
| 議論や戦略の積み上げ | 文脈の積み上げが必要 |
⚠️ 並列にしていいのは、タスク同士が完全に独立している時だけ 。順序や依存関係がある作業を並列化すると、結果が壊れます。
補足:実際にどれだけ集計できたか
このスキルで実際に何件集計できたの?
複数の範囲を順次処理し、合計約1,387件のデータを精密集計できました。
| 範囲 | 集計件数 |
|---|---|
| 範囲A(100〜500) | 392件 |
| 範囲B(1500〜2002) | 499件 |
| 範囲C(2000〜2502) | 496件 |
| 合計 | 約1,387件 |
人手で同じ作業をすると 1ヶ月 かかる規模ですが、並列スキルなら 1日強 で完了しました。
📌 個人で1,387件のデータ整理を自動化できる時代。「人を雇うかわりに仕組みを残す」感覚が、非エンジニアにも届く範囲に来ています。
学んだ3つのこと
今回の経験で得た一番の学びは?
失敗をルールに変換すれば、同じ失敗を二度としなくて済むこと。それが「スキル化」の真価です。
✅ 大量データ処理 × Claude Code で学んだ3つのこと
- 「全部一気に」は禁物 — 容量上限は必ず存在する
- チャンクサイズの上限は失敗から逆算する — 「これくらいなら」は再発の元
- 失敗をスキルファイルに書き残す — 半年後の自分も、別のセッションも救える
最後に:自分の思い
これから大量データを扱いたい非エンジニアに、何を伝えたい?
『失敗は仕組みに変えられる』ということです。落ち込む時間より、ルールに書き起こす時間に投資すれば、未来の自分が必ずラクになります。
非エンジニアの自分は、失敗するたびに「また自分はダメだった」と落ち込んできました 。
でも、Claude Codeで一度この経験をして気づきました。
失敗は、仕組みに変えれば資産になる。
「1,134タイルで落ちた」という1回の経験が、150タイル × 8並列という再現可能なルール に変わった瞬間、それは失敗ではなく 次の成功の地図 になりました。
💡 失敗した時こそ「これをスキルに書き残せる」と思うとラクになります。落ち込む暇があったら、.md ファイルを1枚開いて、禁止事項を書き留めておけばいい。それで未来の自分が救われます。
「人を雇うかわりに仕組みを残す」この感覚に慣れてきたら、もう何枚画像が増えても怖くない はずです。
これからも、自分の失敗を仕組みに変えながら、できることを少しずつ増やしていきます。
この記事は前回記事「スキルとMCPの違い」で書いた「スキル化」の応用編です。基本ルールを押さえた後の発展編として読むと、より腹落ちすると思います。