PAP-40-Layer Framework 第13層のアイキャッチ

重複資料を減らす前に、同じコピーと改訂版を見分ける

  • URLをコピーしました!

同じ資料を何度もAIへ渡しているなら、入力から重複を減らせるか確認します。ただし、似ているファイルをまとめて外すと、改訂版にだけある例外や適用日まで失うおそれがあります。同じコピーか、同じ内容を別形式で保存したものか、内容や効力が変わった版かを分け、出典へ戻れる対応を残して整理します。

目次

費用と混乱は、実際に渡された内容で確かめる

添付ファイルが重複していても、サービスが同じ資料をどう読み込み、何をモデルへ渡すかは一様ではありません。両方の全文が入力に展開されるなら、同じ記述が複数回コンテキストを占めます。一方、検索で必要箇所だけを選ぶ仕組みでは、添付の数と最終入力の量が一致するとは限りません。整理前に、二重になっているのがファイル、抽出文、検索結果、最終入力のどこなのかを見ます。

費用も、「二つ添付したから二倍」とは計算できません。入力トークン数に応じた課金で、重複部分が実際に課金対象へ加われば、費用に影響し得ます。トークンはモデルが処理する単位であり、ファイル数やページ数そのものではありません。キャッシュ利用や契約形態が異なる場合は、同じ資料量でも課金の扱いを確認する必要があります。

たとえばAnthropicのPrompt cachingでは、通常の入力、キャッシュへの書き込み、キャッシュからの読み込みを区別して料金と使用量を扱います。キャッシュは前の処理を再利用する仕組みで、資料の重複を意味上整理する処理ではありません。この仕組みがあるから同じ資料を何度入れても無費用、あるいは入力から重複が消える、とはいえません。

混乱については、同じ説明が繰り返されるだけでなく、旧版が何度も現れ、新版の例外が一度だけ現れる構成を想定できます。出現回数を根拠の強さと取り違えたり、出典が別々の独立資料であるかのように引用したりしていないかを点検します。重複があれば必ず誤答するという主張ではなく、確認したい失敗の条件です。

規程PDFのコピーと改訂版を並べてみる

ここからは、架空の研修費規程PDFを整理する例です。担当者は、2026年10月15日時点でオンライン研修が補助対象になる条件を確認したいとします。資料の管理台帳には、R1版は9月30日まで、承認済みR2版は10月1日から適用と記録されている、という前提です。

R1版は「オンライン研修は対象外」としています。R2版も原則は同じですが、付則に「会社指定の必修研修はオンラインでも対象。指定一覧への掲載を確認する」と追加されています。大半の文章が同じでも、質問への答えを変える差分があります。

受け取ったファイル 確認できた内容 整理の判断
A:研修費規程.pdf 管理台帳に対応するR1版 旧版の資料として識別して残す
B:研修費規程_控え.pdf Aをそのまま複製した同一バイト列のコピー 入力の代表をAにし、BからAへの対応を残す
C:研修費規程_改訂.pdf 承認済みR2版。付則にオンライン必修研修の例外 Aの重複として除かず、別版として保持する
D:研修費規程_再出力.pdf R1表記。抽出本文はAと同じだが、承認状態と来歴が未確認 同じ承認済み版と断定せず、確認が必要な資料として分ける

この表の状態は説明用の仮定であり、実ファイルを解析した結果ではありません。拡張子やファイル名が似ていることだけでBをコピーと決めたのではなく、バイト列の一致と来歴を照合できた条件を置いています。逆に、「改訂」という名前だけを理由にCを現行版としたのでもありません。版と適用日、承認記録が対応していることが前提です。

ファイルの一致、文章の一致、有効版の一致を分ける

ハッシュは、データから計算する照合用の値です。たとえばPythonのhashlibの公式文書は、バイト列を入力にするハッシュ計算と、ファイル内容から値を求める機能を説明しています。SHA-256などの同じ方式で値を比較すれば、同一ファイルの候補を絞る手掛かりになります。ただし、その値は文書の意味や承認状態を読んだ結果ではありません。

ファイル全体のハッシュが異なっても、規程の意味が変わったとは限りません。たとえば保存時の付加情報や出力方法だけが違うPDFでは、比較すべき文章以外の違いがあり得ます。ハッシュの不一致は内容差分を調べる入口にし、改訂された条項がある証拠として扱わないようにします。

一方、抽出した本文が同じでも、同じ有効版とは限りません。文字抽出で表紙の適用日や画像の注記を拾えていない可能性があり、同じ文章が未承認の草案と承認済み文書に載っている場合もあります。本文の一致だけでは、発行主体、承認、対象組織、適用期間まで一致したことになりません。

したがって、照合は三段階で考えます。まず同一ファイルの候補を絞り、次に文章・表・注記の差分を見て、最後に版と来歴を照合します。重要な例外がある資料では、文字抽出の結果だけでなく原本表示も確認します。判別できないDを、扱いやすくするために無理にAへ統合しないことも、この手順の一部です。

出典を残して、入力用の代表資料を決める

重複除去では、読ませる本文を一つにしても、資料の由来まで消す必要はありません。Bを入力から外す場合は、「BはAと同一のコピー。本文の代表はA」と対応を記録します。Aには、文書の識別子、版、取得元、取得した時点、確認したページや条項を結び付けておきます。これにより、Bから始まった確認でも元の内容へ戻れます。

複数の取得元があるときは、同じコピーを別々の根拠として数えず、一つの資料の取得経路として扱います。ただし、誰がいつ配布したかが論点になる場合は、その配布記録自体に意味があります。本文の重複を減らすことと、来歴を省くことを一緒にしません。

CはAと同じ規程の系列ですが、別の版です。AとCの関係には、どこが変わり、いつから適用されるかを残します。この例なら、「R2でオンラインの会社指定必修研修に例外を追加。適用開始10月1日。指定一覧の掲載確認が必要」と対応させます。R2の付則をR1本文へ無表示で継ぎ足し、存在しない混成版を作らないようにします。

今回の質問へ渡す資料は、確認済みの対象日に合うR2を中心に組みます。R1を今回の回答に使わない判断は、Bをコピーとして省く判断とは別です。過去の申請や改訂経緯を確認する仕事ならR1も必要になるため、旧版であることだけを理由に原本を削除しません。

文書の一部だけを検索して渡す場合も、抜粋に規程名、版、条項を付け、原本へ戻れるようにします。R1とR2で同じ文章があるからといって、版の対応を落とすと、どちらの有効性に基づく回答なのか確認できなくなります。共通本文を内部で共有する設計でも、利用時の版と出典の対応は別に保ちます。

整理の前後で、例外と確認条件を照合する

整理前はA、B、C、Dが混在し、同じ旧版の本文が複数回現れる状態です。整理後はBをAのコピーとして入力候補から外し、CをR2として識別し、Dは来歴未確認のまま分け、現行条件を裏付ける資料としては使いません。ここで確認するのは、ファイルが減った数ではなく、回答に必要な情報の保持です。

この架空例の期待回答は、「オンライン研修は原則対象外だが、R2では会社指定の必修研修が例外。指定一覧への掲載確認が必要」です。指定一覧そのものは与えていないため、特定の研修が対象と確認できたとは書きません。R2の付則と適用日をたどれることまで確認します。

もし整理後の回答が「オンライン研修は対象外」だけになったら、R2を重複として外していないか、付則を抽出し損ねていないか、回答が旧版の記述を参照していないかを調べます。「会社指定」の限定が消え、すべてのオンライン研修が対象になった場合も不合格です。短い要約になったことを、意味が保たれた証拠にしません。

費用を比べる場合は、この回答条件を保ったうえで、同じモデル、質問、生成設定、課金範囲で確認します。実際に処理された入力量、キャッシュの読み書き、出力や再試行の使用量を分け、適用される料金に対応させます。まだ実行していない比較に削減額や改善率を付けず、定額契約などで金額への影響が確認できない場合は、その限界を残します。

誤って外したときに戻せるようにする

整理は、まず原資料を保ったまま入力候補の一覧で行うと、誤判定を戻しやすくなります。除外した資料、代表にした資料、同一と判断した根拠、確認者または確認手順を記録します。本文の同一性が確認できても、閲覧権限や利用目的の異なる保存先を勝手に統合しないことも必要です。

Cの例外を誤って落としたと分かったら、入力用の一覧から除外を取り消し、R2の付則を含む内容へ戻します。その後、古い抽出文や要約を参照する経路も確認し、同じ質問で例外と指定一覧の条件を照合します。復旧したファイルが存在するだけでは、実際の回答が新しい入力を使ったことまでは分かりません。

また、新しいR3が届いた場合は、既存の重複判定をそのまま流用せず、版・差分・適用日を確認します。以前は重複だった取得経路が、後に改訂版を配ることもあるためです。入力から外す扱いは見直せる状態に保ち、保存元の削除は権限と保存ルールに従う別の操作として判断します。重複を減らす目的は、必要な根拠へ届きやすくすることであり、根拠の所在まで失わせることではありません。

長い入力で重要な条件が抜けたときの切り分け方は「長い入力で重要条件が抜けたとき、量・位置・重複を切り分ける」で解説しています。

出典・参考資料

  1. Anthropic「Prompt caching」(確認日:2026年10月19日)
  2. Python Software Foundation「hashlib — Secure hashes and message digests」(確認日:2026年10月19日)
よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

さかっぺのアバター さかっぺ PAP Research運営 / AIガバナンス・アーキテクト / プロンプトデザイナー

ITインフラの実務経験をもとに、AIの安全性と実用性を両立する仕組みを研究。PAP Researchでは、AIモデルの継続観測と、プロンプト・AI技術の実務解説を発信しています。

経歴や研究方法、発信方針は運営者プロフィールで紹介しています。

目次