ベンチマーク・レビュー

TextQuests

原文:TextQuests

TextQuestsは、Infocomのインタラクティブフィクション(テキストアドベンチャー)のゲーム群に基づく、長期にわたるツールなしのエージェント型ベンチマークである。チェックポイントに基づく「ゲーム進行度」の指標を報告しており、これはゲーム組み込みの得点よりも進み具合をよく表す信号となるはずだったが、327個のチェックポイントのうち74個(22.6%)に誤りが見つかった。

方法論

リーダーボードは、「ゲーム進行度」(下で詳しく論じる、独自に作られた指標)、クリアしたゲームの数、「害スコア」を、ヒントなしの実行と、ゲームのInvisiClues(ヒント集)を与えた実行の両方について報告している。すべてのタスク、採点のコード、モデルごとのハーネスの設定は公開されている。リポジトリには、各ゲームについて人間による最適な道筋を示す攻略手順(ウォークスルー)が収められている。用意された攻略手順は82〜604ステップ(平均270)である。これらの攻略手順を使って、ゲーム進行度の指標を評価した。害スコアには数多くの問題があるが1、主要な報告指標ではないため評価しなかった。Claude Opus 5を使い、25本のゲームそれぞれと327個のチェックポイントを監査した。攻略手順を再生し、達成不可能なチェックポイントや、偽陽性・偽陰性となるチェックポイントを探した。そのうえで、すべての誤りを人間によるレビューと、該当箇所を一歩ずつたどる攻略手順で検証した。

各チェックポイントは、名前、何を評価するかの詳しい説明、発火の条件となる出力文字列、完了率からなる。完了率は、ゲームのクリアまでの道筋にあるパズルやゲームの節目といった必要な目標に向けて、どれだけ進んだかをベンチマークの作成者が判断したものである。「ゲーム進行度」の指標は、達成したチェックポイントに対応する完了率の最大値をとって作られる。

ゲーム進行度の指標には、二つの決定的な欠陥がある。

  • それより前のチェックポイントがすべて達成されたかどうかに関係なく、達成したチェックポイントに対応する最大の割合をスコアとして与える。チェックポイントによるスコアの増分は中央値で8%だが、2%から20%までの幅がある。ゲームのプレイではチェックポイントを異なる順序で達成でき、用意された最適な攻略手順でさえ、必ずしもスコアの小さい順にチェックポイントを達成するわけではない。たとえば、用意されたenchanterの攻略手順では、進行度がステップ98で25%から45%に、ステップ115で45%から70%に跳ね上がり、35%、40%、55%、60%のチェックポイントはすべてその後で発火するが、ゲーム進行度はそれに応じて変化しない。攻略手順を使って、17本のゲームにわたり、こうしたスコアに反映されないチェックポイントを35個特定した。
  • ゲーム進行度の指標は、実際のゲームの状態ではなく、文字列の照合に頼っている。そのため多くの誤りが生じる。特に多いのは、よくある節目である物の入手をめぐる誤りである。Infocomのパーサーは、取った物の数によって異なるテキストを表示する。「get X」の形の入力にはどれも「Taken」と返すので、ゲーム進行度は、固有の応答を返すその前のステップで更新される。したがってゲームのプレイでは、物を入手したかどうかを評価するはずのチェックポイントが、その物を一度も入手しないまま発火することがある。こうしたチェックポイントの大部分は直前の行動に照合しており2、エージェントが次にその物を入手すると想定するのは妥当である。しかし、物の入手に複数のステップを要する場合もあり、そうしたチェックポイントは偽陽性とした。複数の物を取る形式を使うチェックポイントもある。「get X and Y」の形の入力にはどれも「X: Taken. / Y: Taken.」と返す。これらは指定が不十分なことが多く、偽陽性と偽陰性を生みやすい。たとえば、Zork2の5%のチェックポイントは、ランプと剣の両方を入手したかを評価するはずだが、その複数の物の照合では、文字列「lamp: Taken」を探して、ランプを入手したことしか確かめていない。
    • get sword → Taken.
      get lamp → Taken.(進行度0%)[正しい答えが不正解と判定される]
    • get lamp and tunnel → lamp: Taken. / tunnel: You must specify a direction to go.(進行度5%)[誤った答えが正解と判定される]
    • get lamp and sword または get all → lamp: Taken. / elvish sword: Taken.(進行度5%)

代表的な誤り

タスクに起因するその他の誤りは、次の区分に分かれる。

達成不可能

  • 各ゲームは500ステップが上限である。Trinityの攻略手順は604ステップあり、攻略手順を500ステップで打ち切ると、スコアは71%になる。攻略手順からステップを削って500ステップ未満で満点をとることは可能だが、私たちが短縮した攻略手順では、欠かせない情報収集のステップが削られており、この解き方は現実的でない3。後知恵に頼らない、より短い解き方がありうるかは、まだ確かめられていない。
  • 各ゲームの開始時に、エージェントはfeelies_text.txt4を開くことができ、ヒントが許されていればinvisiclues.txtも開ける。ゲームによっては、scansフォルダー内の追加のファイルやmanual.pdfが必要になるが、それらは与えられないので、達成不可能なタスクが生じる。
    • Cutthroatsの座標は、wrecks-map.jpegにしか載っていない。
    • Sherlockでは、feelies_text.txtのファイルがまるごと欠けている。

誤った答えが正解と判定される

  • Trinityの100%のチェックポイントは「A shower of sparks erupts from the enclosure(囲いから火花が噴き出す)」に照合するが、この文は正しい電線を切っても誤った電線を切っても表示される。
  • starcrossでは、赤い棒をスロット1、2、3のどれに差し込んでも、出力文字列の照合があいまいなために60%のチェックポイントが発火する。しかしこのチェックポイントは、棒が2番目のスロット(酸素のスロット)に差し込まれたことを確かめるためのもので、メタンやアンモニアのスロットに差し込むと致命的になる。

正しい答えが不正解と判定される

  • Sherlockの96%のチェックポイントは「Crown Jewels Recovered – Moriarty Subdued(王冠の宝石を回収、モリアーティを制圧)」と題されているが、「get jewels」では発火せず、「get all」では発火する。

ゲーム別のチェックポイントの誤り

ゲームチェックポイント(誤り / 総数)種類別の誤り(達成不可能 - 正解を不正解と判定 - 不正解を正解と判定 - 効果なし)5該当するゲーム進行度のチェックポイント(チェックポイントに対応する%で表示)
ballyhoo5 / 200 - 1 - 0 - 5正解を不正解と判定:20%;効果なし:20%、45%、50%、55%、70%
borderzone2 / 140 - 0 - 2 - 0不正解を正解と判定:35%、85%
cutthroats5 / 113 - 1 - 2 - 1達成不可能:80%6、90%、100%;正解を不正解と判定:90%;不正解を正解と判定:30%、90%;効果なし:60%
deadline3 / 130 - 0 - 2 - 1不正解を正解と判定:78%、92%;効果なし:23%
enchanter5 / 150 - 1 - 2 - 4正解を不正解と判定:60%;不正解を正解と判定:60%、95%;効果なし:35%、40%、55%、60%
hitchhiker1 / 130 - 1 - 0 - 0正解を不正解と判定:80%
hollywoodhijinx1 / 120 - 0 - 1 - 0不正解を正解と判定:22%
infidel1 / 101 - 0 - 0 - 0達成不可能:20%(緩い)7
lurkinghorror8 / 193 - 1 - 2 - 6達成不可能:5%、60%、100%;正解を不正解と判定:70%;不正解を正解と判定:70%、75%;効果なし:5%、35%、40%、50%、70%、75%
moonmist5 / 103 - 0 - 0 - 3達成不可能:35%、45%、90%8;効果なし:45%、65%、75%
planetfall1 / 130 - 0 - 0 - 1効果なし:20%
plunderedhearts2 / 121 - 0 - 0 - 1達成不可能:40%(緩い)9;効果なし:16%
seastalker2 / 130 - 0 - 2 - 0不正解を正解と判定:15%、50%
sherlock8 / 127 - 1 - 0 - 1達成不可能:55%、65%、70%、80%、90%、96%、100%;正解を不正解と判定:96%;効果なし:45%
sorcerer2 / 170 - 0 - 0 - 2効果なし:45%、50%
spellbreaker2 / 110 - 1 - 1 - 1正解を不正解と判定:45%;不正解を正解と判定:95%;効果なし:45%
starcross3 / 160 - 0 - 2 - 1不正解を正解と判定:60%、75%;効果なし:70%
stationfall1 / 120 - 0 - 0 - 1効果なし:40%
suspect3 / 100 - 2 - 1 - 1正解を不正解と判定:35%(ライブ採点)、60%(ライブ採点)10;不正解を正解と判定:85%;効果なし:60%
trinity6 / 134 - 0 - 3 - 0達成不可能:82%、92%、95%、100%;不正解を正解と判定:42%、71%、100%
このゲームの攻略手順は604ステップを要するが、プレイは500ステップが上限である。
wishbringer1 / 130 - 0 - 0 - 1効果なし:30%
witness0 / 110 - 0 - 0 - 0
zork13 / 130 - 1 - 0 - 3正解を不正解と判定:30%;効果なし:30%、40%、50%
zork23 / 140 - 2 - 2 - 2正解を不正解と判定:5%、30%;不正解を正解と判定:5%、40%;効果なし:30%、40%
zork31 / 100 - 0 - 1 - 0不正解を正解と判定:55%
合計74 / 327 (22.6%)22 - 12 - 23 - 3574個の異なるチェックポイントについて92件の指摘

評価基準

1. レビュー可能性

水準意味扱い
完全すべてのタスクと採点のロジックが確認でき*、各モデルに使ったハーネスとAPIの設定(推論の度合い、トークン数・時間の上限、ツールへのアクセス、システムプロンプト)がすべて開示されている [2へ進む]
部分的タスクと採点のロジックの代表的な標本が確認でき、ハーネスとAPIの設定がすべて開示されている [2へ進む]
不十分確認できるタスクや採点のロジックが限られている、偏っている、またはまったくなく、ハーネスとAPIの設定が開示されていない [終了 → 情報不足]

* 一般に公開されているか、レビュー担当者に非公開で提供されているかは問わない。

2. 採点

これは「検証済み」となるのに必要な最低基準である。これらの項目のどれか一つでも満たさなければ、「欠陥あり」の判定になる。

採点
例
  • 書かれたとおりでは正しく答えることが事実上不可能(例:タスクの指定が不十分、隠れた要件がある、ファイルやツールが欠けている)
  • 偽陰性(例:採点器が厳しすぎる、正解データが古いか誤っている、変化しうる外部の現在の状態に依存している、エージェントと無関係なサンドボックスの障害)
  • 偽陽性(例:採点器が甘い、報酬ハッキングができる環境、採点のロジックの誤りを突く、ハーネスやウェブから答えを取ってくるといった近道で、測るはずの技能を迂回できる)
  • タスクが、うたわれている能力をまるで測っていない
「欠陥あり」とする標準の基準確認した標本†の20%以上に誤りがある、または大規模に採点を損なう問題がある
扱い 合格 指摘あり[終了 → 欠陥あり] 未レビュー
備考—
ベンチマークの一貫性
例
  • バージョン番号を上げずに、採点器、指示、正解データが変更された
「欠陥あり」とする標準の基準リーダーボードに、異なる版による比較できない結果が並んでいる
扱い 合格 指摘あり[終了 → 欠陥あり] 未レビュー
備考—
能力の引き出し
例

モデルの能力の引き出し方が極端に制約されており、しかもそれがベンチマークの主眼ではない。

  • タスクの規模に比べてリソースが足りない(トークン数・ターン数・時間の上限、サンドボックスのリソース)
  • コンテキストの管理がまずい
  • エージェント用の環境を用意するのが自然な場面で、それがない
  • エージェント型のベンチマークで、意図しない強制終了が多すぎる
「欠陥あり」とする標準の基準そのタスクに対する妥当な代替の設定と比べて、性能が大幅に下がっている
扱い 合格 指摘あり[終了 → 欠陥あり] 未レビュー
備考25本のゲームのうち1本(Trinity)では、500ステップの上限が、604ステップの参照解答を下回っている。その他の参照解答はすべて500ステップ未満である。
評価設定の偏り
例
  • 計算資源やトークンの予算が不均等
  • スキャフォールドの選び方が不公平(例:一部のモデルだけに最適化されている)
「欠陥あり」とする標準の基準特定のモデルに有利な重大な偏りが見つかった
扱い 合格 指摘あり[終了 → 欠陥あり] 未レビュー
備考—

† 利用できるタスクが50を超えるベンチマークでは、(カテゴリーがあればカテゴリーで層別して)50件を無作為に抽出する。観測された誤りの率が15〜25%なら、標本を100件に増やす。利用できるタスクが50以下のベンチマークでは、すべてのタスクを評価する。

3. 評価の質

これは、すべてのベンチマークに満たしてほしい基準だが、これらの項目を欠いていたり満たしていなかったりしても、ただちに失格になるわけではない。

問い扱い備考
能力の引き出しとリソースの十分さ:モデルに与えるリソース(推論トークン・ターンの予算、ツールへのアクセスなど)は、モデルが上限に近い性能を出すのに十分か 十分 制約あり 不当に制約されている 不明 未レビュー論文の500ステップと800ステップのアブレーション結果から、性能はまだ伸び続けていることが分かる。1本のゲーム(Trinity)では予算が足りない。最も成績のよいモデルは、ヒントなしで25本中2本、ヒントありで25本中13本をクリアした。
スキャフォールドの公平性:リーダーボードはどのスキャフォールドでの結果を報告しているか 共通のスキャフォールド モデル固有のものと共通のものが混在 モデル固有のスキャフォールド 未レビュー—
汚染(コンタミネーション)の証拠やリスクはあるか2026年8月10日時点:
タスクの100%が公開
解答の100%が公開 未レビュー
—
人間が解けるかどうかは評価されているか すべてのタスク 代表的なタスクの集合 実施方法に問題あり(タスクの集合が代表的でない、参加者の集団が妥当でない) 確認されていない 未レビュー—
スコアの範囲(推定できる場合)下限 —、上限 — 未レビュー—
統計的な十分さ:モデルあたりの実行回数(誤差範囲を示すには5回以上を推奨)モデルあたり1回 不明 未レビュー—
構成概念妥当性 うたわれている能力を測っている うたわれている能力を部分的に測っている うたわれている能力を測っていない 未レビュー—

免責事項

これは部分的なレビューである。欠陥のあるベンチマークについて私たちが公表している基準を超える誤りが見つかった時点で、確認を打ち切った。

公開前にベンチマークの開発者への連絡を試みた。開発者がこのレビューへの回答を書いた場合は、ここにリンクを載せる。ベンチマークの開発者の方で、回答をここに載せてほしい場合は、回答へのリンクを添えてreviews@epoch.aiまでメールでお知らせいただきたい。

注

注
  1. 害は、とったステップにわたる合計なので、進行度と交絡している。成績の悪いモデルには、害をなす機会がそれほどない。意味のある解釈をするには、害スコアを正規化する必要がある。しかし報告されているのは「Mean Harm(平均の害)」だけで、「Relative Harm(相対的な害)」は報告されていない。害スコアは元になったJiminy Cricketのリポジトリに由来するもので、TextQuestsは「bad」/「others」(他者への悪い行い)の区分だけを報告し、「bad」/「self」、「good」/「others」、「good」/「self」の区分は報告していない。 ↩

  2. ballyhoo 35/90 · hitchhiker 70 · hollywoodhijinx 12/30/40/60/68/78/86/93 · infidel 45 · starcross 30 · stationfall 30/40/70 · trinity 82 · wishbringer 50/60 · zork1 60 · zork2 58/75 · zork3 20
    注:これらのチェックポイントは、(他の問題がない限り)下の表には含めていない。 ↩

  3. たとえば、「examine coin」では「It’s standard British currency, worth fifty pence(標準的な英国の通貨で、50ペンスの価値がある)」と表示されるが、これは必要な情報ではない。一方、「examine sundial」では「inscribed with seven curious symbols and a compass rose(7つの奇妙な記号と方位図が刻まれている)」と表示され、これは次のステップ「turn ring to sixth symbol」に必要である。後知恵なしに、ゲームのプレイに欠かせない情報を明かさないexamineのステップだけを取り除くことはできない。invisiclues.txtなしで可能な、500ステップ未満の解き方は、まだ見つかっていない。 ↩

  4. フィーリーズ(feelies)とは、これらのゲームの箱に同梱されていた実物の付属品のことである。ゲームを正しく遊ぶのに欠かせないもので、もともとは海賊版ではクリアできないようにする役割があった。テキストはfeelies_text.txtに収められているが、画像のスキャンは見られないので、達成不可能なタスクが生じる。 ↩

  5. 4つの数は、そのゲームのチェックポイントの誤りを種類別に、この順で数えたものである。達成不可能:必要なゲームファイルが欠けている、攻略手順が500ステップの上限を超えるなどの理由で、チェックポイントを発火させられない。正解を不正解と判定:正しい行動をとってもチェックポイントが発火しない。不正解を正解と判定:その節目を達成していないのにチェックポイントが発火する。効果なし:より高いチェックポイントをすでに達成しているので、最適な攻略手順でこのチェックポイントを発火させてもスコアが変わらない。 ↩

  6. チェックポイント80/90/100に必要なwrecks-map.jpegにアクセスできない。 ↩

  7. ピラミッドの場所は、ゲームのパッケージに入っていた地図(収録されていない)にしか記されていないが、総当たりでその場所にたどり着くことはできる。InvisiCluesにも、それを見つけるための正確な道順が載っている。 ↩

  8. 緑以外の色を選ぶと、チェックポイント35/45/90を発火させられない。 ↩

  9. 紙幣にはアクセスできないが、ポーズはゲーム内で総当たりにより再現できる。InvisiCluesには次のようにある。
    「C. 図書室の肖像画のJean Lafondは、紙幣に描かれているのとまったく同じポーズをとっている。手がかりを得るには、ゲームのパッケージに入っていた紙幣を調べよう。
    D. Lafondが何を持っているかに注目しよう。
    E. Lafondが何を身に着けているかに注目しよう。
    F. Lafondが何をしているかに注目しよう。これは最後にしなければならない。ほら、できた!」 ↩

  10. この欠陥は、リーダーボード(整形したテキストに基づいて再計算している)ではなく、プレイ中の採点器に現れる。その結果、game_finished()が期待どおりに動かず、予算を無駄にし、公表される害スコアを押し上げるおそれがある。 ↩

← ベンチマーク一覧へ

非公式の日本語訳公式ページ(英語):epoch.ai/benchmarks/textquests/review