0Pricing
AI Prompt Engineering · レッスン

100万トークンのコンテキストウィンドウ

可能性と注意点を学びます。

「100万トークンのコンテキストウィンドウ」はCoddyKit上の無料AI Prompt Engineeringレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAI Prompt Engineering学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 AI Prompt Engineeringコースには全4レッスンが含まれています。

100万トークンでできること

100万トークンのウィンドウがあれば、コードベース全体、文書コーパス、数時間分の文字起こしを、検索システムなしでコンテキストに直接配置できます。これはコンテキスト内のすべてという約束です。モデルは情報量の少ない要約ではなく、生の素材をもとに推論します。

  • リポジトリ全体を対象にした推論とリファクタリング。
  • チャンク分割なしの文書横断的な統合。
  • 初期の詳細を保持する、長期的な会話。

ただし、容量が大きいことと効果的に使えることは同じではありません。

容量と有効コンテキスト

公称のウィンドウサイズは上限であり、どの位置でも均一に想起できる保証ではありません。有効コンテキスト、つまりモデルが確実に検索して推論できる範囲は、通常それより小さく、位置によってばらつきます。

ウィンドウを、価値が均一ではない予算として扱います。中央の奥深くに埋め込まれたトークンよりも、端に近いトークンのほうが想起されやすくなります。

レイテンシーとコストの現実

コンテキストの長さが増えるとアテンションのコストが増え、time-to-first-tokenも長くなります。100万トークンのプロンプトでは、回答が短くても、プリフィルのレイテンシーが数秒に及び、呼び出しごとのコストも相当な額になる可能性があります。

  • 巨大なプロンプトでは、プリフィルがレイテンシーの大部分を占めます。
  • 出力サイズにかかわらず、コストは入力トークン数に比例します。
  • 必要のないコンテキストを詰め込むのは、モデルを混乱させるために料金を払うことです。
# Rough mental model: input tokens drive both $ and prefill ms.
# 900k tokens of haystack to answer one question is rarely optimal.

注意の分散と希薄化

コンテキストを増やすと精度が下がることがあります。無関係な情報は注意を分散させ、モデルが引きずられる可能性のあるノイズを持ち込みます。特定の質問に対しては、ノイズの多い50万トークンのプロンプトより、焦点を絞った2万トークンのプロンプトのほうが優れていることがよくあります。

原則は、タスクに役立つものを含め、関連するかもしれないだけのものは除外することです。

長大なコンテキストが検索を上回る場合

検索では分断されてしまう全体的かつ横断的な推論が必要な場合は、長大なコンテキストが有効です。たとえば「リポジトリ全体でこの不変条件に違反している箇所をすべて見つける」「10件すべての契約書にある矛盾を調整する」といったタスクです。チャンク分割した検索では、チャンクをまたぐつながりを見落とす可能性があります。

統合には完全なコンテキストを使い、巨大なコーパスから特定の一点を探す検索にはリトリーバルを使います。

検索が長大なコンテキストを上回る場合

関連する割合がごく小さく、内容が安定している場合は、検索が有効です。5万ページすべてを詰め込み、モデルが見つけてくれることを期待するよりも、5万ページから関連する5ページを取得するほうが安価で高速であり、多くの場合に正確です。

  • 静的なコーパスへの頻繁なクエリ → 一度インデックスを作成し、低コストで検索します。
  • 一度限りの全体的な統合 → 長大なコンテキストを使います。

多くのシステムは両方を組み合わせます。検索で範囲を絞り、その後、長大なコンテキストで統合します。

def route(task):
    if task.is_global_synthesis: return 'long_context'
    if task.relevant_fraction < 0.05: return 'retrieval'
    return 'hybrid'

位置はリソース

位置によって想起率が変わるため、コンテンツをどこに配置するかは設計上の決定事項です。モデルが最もよく想起できる境界にタスクの指示と最重要の素材を置き、必ず使う事実をコンテキストの中央奥深くに埋め込まないようにします。

位置は、単純な連結順序の偶然に任せず、意図的に管理します。

長大なコンテキストの想起の検証

埋め込んだ事実をモデルが使ったと決めつけてはいけません。検証してください。既知の深さに既知のカナリア情報を挿入して尋ね、深さごとの想起率を測定します。本番で信頼する前に、自分のプロンプト構成における自分のモデルの特性を把握します。

canary = 'The internal code name is BLUE_HERON.'
# Place at depth d, then ask: 'What is the internal code name?'
# Sweep d across the window to map recall vs position.

蓄積よりコンパクション

長時間にわたるエージェントセッションでは、コンテキストを無制限に増やしてはいけません。定期的にコンパクションを行い、古くなったターンを密度の高い状態オブジェクトに要約して、生の履歴を削除します。これにより信号を維持しながら予算を取り戻し、希薄化を減らせます。

蓄積はデフォルトであり、罠でもあります。コンパクションは規律です。

state = summarize(old_turns)  # dense facts, decisions, open items
context = [system, state] + recent_turns

ハイブリッドアーキテクチャ

最も強力な設計は、複数の戦略を組み合わせます。焦点を絞った候補集合を検索し、意図的な位置に配置し、安定したプレフィックスをキャッシュし、会話をコンパクションします。長大なコンテキストは予算管理ツールキットの1つであり、エンジニアリングの代替ではありません。

  • 縮小するために検索します。
  • 見せるために配置します。
  • 低コストにするためにキャッシュします。
  • 維持するためにコンパクションします。

判断のヒューリスティクス

ウィンドウ全体を使う前に、次の点を確認します。

  • タスクには全体的な推論が必要ですか、それとも一点検索ですか。一点検索ならリトリーバルを使います。
  • 関連する割合は小さく、安定していますか。はい → リトリーバルまたはキャッシュを使います。
  • 巨大なプリフィルのレイテンシーとコストは許容できますか。いいえ → 縮小します。
  • 依存している深さで想起率を検証しましたか。まだなら、先に検証します。

容量は許可であって、計画ではありません。

クイックチェック

静的な4万ページのアーカイブのうち、およそ3ページにしか存在しない、限定的な事実質問に答える必要があり、このクエリを1日に数千回実行するものとします。

振り返り:100万トークンのウィンドウ

巨大なウィンドウは、自由にすべてを想起できるものではなく、不均一な予算です。実効コンテキストは容量より小さく、レイテンシーとコストは入力に応じて増加し、無関係な情報は精度を薄めます。グローバルな統合には長大なコンテキストを、ピンポイントの情報には検索を、それ以外にはハイブリッド方式を使います。その際、重要な内容を想起されやすい位置に配置し、安定したプレフィックスをキャッシュし、長いセッションを圧縮し、埋もれた事実を信頼する前に必ず想起性能を検証します。

よくある質問

「100万トークンのコンテキストウィンドウ」レッスンは無料ですか?

はい。「100万トークンのコンテキストウィンドウ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、AI Prompt Engineeringコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 AI Prompt Engineeringコースには全4レッスンが含まれています。

「100万トークンのコンテキストウィンドウ」で何を学びますか?

可能性と注意点を学びます。 ブラウザで直接実行するハンズオンコードでAI Prompt Engineeringを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

AI Prompt Engineeringを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのAI Prompt Engineeringは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「100万トークンのコンテキストウィンドウ」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このAI Prompt Engineeringレッスンでコードを書いて実行できますか?

はい。すべてのAI Prompt Engineeringレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 100万トークンのコンテキストウィンドウ
  2. Lost in the Middle
  3. 巨大なプロンプトの構成
  4. 長いプレフィックスのキャッシュ
← AI Prompt Engineeringに戻る