3秒でわかる
生成AIの学習データに含まれる最も新しい時点のこと。それ以降の出来事をモデルは知らないため、回答の鮮度を見極める目安になります。
30秒図解
もう少し詳しく
どういうものか
知識カットオフは、生成 AI モデルの学習に使われたデータが、どの時点までを含んでいるかを示す境界です。モデルは公開後に自分で情報を取り込む仕組みを持たないため、カットオフより後に起きたことは原理的に答えられません。同じ製品名でもバージョンによって日付が違い、提供元のドキュメントに記載されています。
カットオフ直前の数か月ぶんは、その時点でまだ Web 上の記述が少ないため、学習量が薄くなりがちです。境界のぎりぎり手前の話題は、日付の上では範囲内でも精度が落ちることがあります。
なぜ必要か
生成 AI の誤りには、事実を知らないまま作文する種類のものがあります。カットオフ後にリリースされたライブラリの新しい書き方を尋ねると、モデルは古い書き方を自信のある口調で提示します。存在しない引数名を出してくることもあり、そのまま貼り付けると動きません。
カットオフを知っていれば、質問の性質で扱いを変えられます。数学の考え方やアルゴリズムのように時間で変わらない話題はそのまま使え、フレームワークの最新仕様や料金体系のように動く話題は裏を取る、という切り分けができます。
具体例
カットオフより新しい情報は、こちらから渡せばモデルは使えます。
悪い聞き方
「◯◯フレームワークの最新の書き方を教えて」
-> 学習時点の古い書き方が返り、それが古いことも分からない
渡してから聞く
「以下は公式ドキュメントの抜粋です。
---
(ドキュメントの該当部分を貼る)
---
この仕様に沿って、旧<a href="/glossary/api" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">API</a>を使っている次のコードを書き直してください」
-> 貼った内容を根拠に書き換えるので、学習時点に引きずられない# 検索結果を文脈として渡してから答えさせる形
docs = search("公式ドキュメント 新しい設定方法")
lines = [
"次の資料だけを根拠に答えてください。",
"資料に無いことは「資料に無い」と答えてください。",
"",
docs,
"",
"質問 設定ファイルの書き方は",
]
prompt = "
".join(lines)
answer = llm.complete(prompt)つまずきやすいところ
回答が古いかどうかを、モデル自身に聞いて確かめようとするのは当てになりません。モデルは自分のカットオフ日を正確に把握しているとは限らず、実際より新しい日付を答えることも、逆に古く答えることもあります。日付は提供元の公表値で確認します。
もうひとつ、Web 検索機能が付いた製品では境界が見えにくくなります。検索が働けば新しい情報が入りますが、働かなかった質問では学習時点の知識だけで答えます。同じ画面の中で鮮度の違う回答が混ざるため、出典が示されているかを毎回見る必要があります。