Local / Edge解説

長いコンテキストへ対応したローカルLLMを自分の文書で評価する方法

長いコンテキストへ対応したローカルLLMを自分の文書で評価する方法
目次

「128Kコンテキスト対応」のような数字は、一度に扱える入力の上限を考える重要な仕様だ。

ただし、その長さ全体を同じ精度で理解できることまでは示していない。必要なのは、自分が使う長さの文書で、必要な作業を安定してこなせるかだ。

自分の用途に近い文書で試す

内容を自分で確認できる長文を用意する。機密情報を含む場合は評価用に安全な複製を作る。

説明文、議事録、仕様書など、自分が実際に使う種類に近い文書を選ぶ。

評価では、答えがどこに書かれているか自分で分かる文書を使う方が、モデルの失敗を確認しやすい。

文書の長さを段階的に増やす

最初から最大コンテキスト長へ入れず、短い文書、中くらいの文書、長い文書のように段階を作る。

同じ質問形式を使い、どの長さから精度が落ちるかを見る。

重要情報を置く位置も、

  • 冒頭
  • 中央
  • 末尾

で変える。

これで「文書が長いと失敗する」のか、「末尾にある情報だけ拾いにくい」のかを分けやすい。

3種類の作業を別々に評価する

1. 特定情報の抽出

文書内に一箇所だけある固有情報を正しく取り出せるかを見る。

2. 文書全体の要約

主要な論点を落とさずまとめられるかを見る。

3. 離れた箇所を組み合わせる質問

文書の前半と後半など、離れた場所にある情報を合わせないと答えられない質問を使う。

一つの固有情報を見つけられただけで、長文全体の要約や複数箇所の参照まで成功したとは判断しない。

実行環境で入力が切られていないか確認する

モデルが公称する最大コンテキスト長と、実際に実行環境へ設定した長さは別だ。

llama.cppなどを使う場合はコンテキスト設定やKVキャッシュ条件を確認し、入力が途中で切り捨てられていないかログやトークン数を見る。

モデルの品質を評価する前に、そもそも全文が入力されているか確認することが重要だ。

質問と回答だけでなく条件も残す

各試行で次を保存する。

モデル / リビジョン:
実行環境 / バージョン:
コンテキスト設定:
文書の長さ:
重要情報の位置:
質問:
回答:
入力の切り捨て有無:

失敗が見えたときに、「最大値まで使える・使えない」という二択へせず、自分の用途で安定して使える実用的な長さを採用する。

評価用の質問セット自体を作りたい場合は、ローカルLLMを自分の質問セットで評価する方法も確認できる。

まとめ

  • 最大コンテキスト長の仕様と、長文を正しく扱える品質は別に評価する
  • 文書の長さだけでなく、重要情報を冒頭・中央・末尾へ置いて差を見る
  • 単純な情報抽出、要約、離れた箇所を組み合わせる質問を別々に試す
  • 入力が途中で切られていないか確認し、質問・回答・実行条件を保存する

公式サイトで次に進む

この記事で明示的に扱うソフトだけを表示します。配布・手順は各公式ページで確認してください。

local-gen.jpがファイルを配布するものではなく、互換性を保証するものでもありません。

同じテーマから

この記事で扱ったデータ

モデル・GPU・実行ソフトの確認済みデータを、記事とは別に確かめられます。

サイト内検索