Claude の search results は「検索して貼る」より citation を壊さないほうが大事
このノートは原文の代替ではありません。読むべきポイントと実装上の意味を整理し、原典への入口を示します。
要点まとめ
- この docs の一番大事な点は、AI に検索結果を渡す時、本文だけを寄せ集めると答えは作れても『どこから来た情報か』が壊れやすいと示していることだ。
- 価値は『検索できる』ことより、『出典の筋道を保ったまま答えさせる』ことにある。
- Anthropic はそのために、検索結果を source 情報つきの専用ブロックで渡し、引用の細かさは最初のデータ分け方で決まると明記している。
- 読後にやるべきことは、検索結果を長文へ潰すことではなく、title、URL、本文断片を分けたままモデルへ渡せているかを点検することだ。
何が変わったのか
Anthropic は `search result content block` を、検索結果を source 情報つきで渡す専用の入れ物として置いています。`source attribution` は『どの情報がどの source 由来かを保つこと』、`provenance` は『情報の来歴を追えること』です。実装面では `type: "search_result"` の block に `source`、`title`、`content` を持たせます。重要なのは citation の単位で、Claude は本文の一部分ではなく text block 全体を引用単位として扱います。細かい citation が欲しいなら、あとでモデルに頑張らせるのではなく、最初から content を小さめの block に分ける必要があります。
なぜ重要か
日本語圏の RAG 実装では、検索精度より『それはどこ情報なのか』が崩れるほうが信頼低下につながりやすいです。本文を寄せ集めてから要約させる運用は、出典表記がきれいでも根拠の追跡性が弱くなります。この docs は、citation 品質がモデルの賢さだけで決まるわけではないと教えてくれます。PM や実装者は検索 UX を磨く前に、source preservation、つまり出典を保ったまま渡せているかを設計対象に戻すべきです。
技術的ポイント
- `search result content block` は、検索結果を source 情報つきで Claude に渡すための構造で、本文だけの投入とは別物だ。
- `source attribution` は『どの情報がどの source から来たか』を保つことを指し、citation の前提になる。
- `type: "search_result"` block には `source`、`title`、`content` を持たせる。URL や見出しを落とさないことが重要だ。
- citation の最小単位は text block 全体で、細かい出典が欲しいなら最初から content block を小さく分ける必要がある。
- docs は custom applications や RAG を主用途としており、citation 品質を上流の schema 設計へ戻している。
英日キーワード
| 英語 | 日本語 | 補足 |
|---|---|---|
| search result content block | 検索結果コンテンツブロック | source を保ったままモデルへ渡す検索結果の構造。本文だけへ潰すより citation と説明責任を保ちやすい。 |
| source attribution | 出典帰属 | どの情報がどの source 由来かを保つこと。citation の前提になる。 |
| provenance | 情報の来歴 | 情報がどこから来たかを後で追える状態。RAG の信頼性はここで決まる。 |
| citation | 引用表示 / 出典表示 | 回答の根拠文書を示す仕組み。RAG を信用できる運用にするには UI 側の見せ方まで要設計。 |
| content block | コンテンツブロック | 本文を区切って渡す単位。citation の粒度や再利用のしやすさに効く。 |
試すなら
- 今の RAG 実装で、検索結果を一つの長文へ潰していないか確認する。
- title、URL、本文断片を保った schema に変えられるか試す。
- citation を細かく出したい箇所だけ、content block を小さく分ける。
- 回答品質だけでなく、『どの block が根拠か』を検証項目に入れる。
注意点
- docs では search result 内は text content 前提で、画像など他 media の扱いまではそのまま広がらない。
- block を細かくしすぎると管理負荷は上がるため、citation 粒度との交換になる。
- `Published date` は docs page 上で確認できなかった。
この記事は役に立ちましたか
公益的に続けるため、役に立った点や読みづらかった点だけを短く送れます。メールアドレスは不要です。