Jev の確率は何に反応しているか — 質問文から名前を消したら 0.81 が 0.03 になった

by ZeroZawa

Jev の確率は、本文にある語そのものではなく、質問文の語と本文の語が一致していることに引かれていました。質問文から対象の名前を消すだけで、0.81 だった確率が 0.03 まで下がります。

たとえば、CSS の cursor プロパティについて書いた記事に「この記事に cursor タグ(AI エディタの Cursor)を付けるべきか」と聞くと、Jev は 0.94 と答えました。質問に「Cursor 自体の話であること」という条件を書き足しても 0.81 です。ところが、質問文から cursor という語を消して「AI 補完を中心に据えた商用のコードエディタ」と言い換えると、0.03 まで下がりました。記事の本文には cursor が残ったままです。

この記事は、Jev を3回に分けて測る連載の Part 2 です。Jev は、文章ではなく「はい」の確率や選択肢で答える判断モデルで、何を返すモデルかは Part 1 に書きました。この Part では、確率が何に反応しているかを、正解が作り方で決まる記事で切り分けます。最後に、人に説明するときの要約と、質問文の書き方を3つにまとめます。

名前だけ同じ記事と、中身も同じ記事をつくる

正解が作り方で決まる記事を20件書き、10組の対にしました。Part 1 で、実際の記事では答えが割れたところを人が判断してもほとんど「どちらでも間違いではない」になり、正誤の無い題材ではモデルを測れないと分かったからです。

対の片方は、タグと同じ名前が出てくるのに中身は別のものの「名前だけ同じ記事」(以下、名前だけの記事)、もう片方は、名前も中身も同じ「中身も同じ記事」です。

タグ名が本文に出るかタグが指すものを扱うか正解
名前だけ同じ出る扱わない付けるべきでない
中身も同じ出る扱う付けるべき

名前だけの記事10件の中身は、こうなっています。

対象タグ名前だけの記事の中身
cursorCSS の cursor プロパティの設計
astro星野写真の機材(Astro Tracer)
bunバーガー店のバンズの在庫
pythonボールパイソンの飼育
rust橋の錆をドローンで見つける
docker港湾労働者のシフト
claudeクロード・モネの連作の配信
codex中世の写本の撮影
mcp映画『トロン』の Master Control Program
geminiNASA のジェミニ計画の飛行記録

中身も同じ記事は、同じ名前のそのもの(たとえば cursor なら AI エディタの Cursor)を扱った記事です。2つで名前の出方を揃えているので、比べているのは「名前があるか」ではなく「指すものを扱っているか」です。名前だけの記事には、書いた時点で「そのタグは付けるべきでない」という正解が付きます。人が判断する必要がありません。

送るのは記事の題名と概要文だけで、登録済みの56語それぞれに「このタグを付けるべきか」を Noul(はい/いいえの確率で答える質問の型)で聞きます。何を見て、どこで線を引くかは、送る前に書き留めておきました。送ったのは 2026年9月20日〜21日、モデルは jev-1.13.0 です。20件の記事は Claude Opus 5 に書かせ、設計と読み方は私が決めました。

最初の質問文では、名前だけの記事10件中6件でタグが付いた

最初の質問文では、確率の差は付いていたのに、名前だけの記事10件中6件で付けるべきでないタグが選ばれました。

確率の差そのものは付いていました。10組中9組で、中身も同じ記事のほうが名前だけの記事より高く、差の中央値は 0.50 です。事前に決めた合格の線は超えています。

ところが、確率から上位のタグを選ぶ自作の規則(Part 3 で中身を開けます)に通すと、名前だけの記事10件中6件で、付けるべきでないタグが選ばれましたcursor 0.96、astro 0.95、bun 0.85 と、高い値が付いたままです。

質問文を6通りに変える

記事の本文は1文字も変えずに質問文だけを変えると、付けるべきでないタグが選ばれる名前だけの記事は、6件から0件まで減りました。

モデルの性質なのか、質問文のせいなのかを分けるために、同じ20件に質問文を当て直しました。criteria は、どういうときに「はい」かを質問に書き添える欄です。

質問文何を変えたかタグが選ばれた名前だけの記事(少ないほどよい)タグが選ばれたままの中身も同じ記事(多いほどよい)
最初の質問文6 / 1010 / 10
条件を1つに絞る6 / 1010 / 10
「付けるべきか」を「何の話か」に変える5 / 1010 / 10
② に criteria で境界を書き足す3 / 1010 / 10
② の質問文から対象の名前を消す1 / 109 / 10
名前を消し、criteria も書く0 / 109 / 10

中身も同じ記事の列も見ているのには理由があります。名前だけの記事の件数だけを見ると、すべての確率を一律に下げただけの質問文でも改善に見えてしまうからです。中身も同じ記事まで落ちていたら、それは名前だけの記事を見分けたのではなく、判断そのものをやめただけです。

criteria で境界を書くと、タグが選ばれる名前だけの記事は半分になりました。それでも残ったのが cursorastrobun の3件です。

名前を消すと、残った3件が消えた

質問文から対象の名前を消すと、criteria を書いても残った3件の確率が 0.03 前後まで落ちました。

⑤ では、質問文に出てくる対象の名前を言い換えに置き換えました。

② 名前あり : This post should carry the tag "cursor" (Cursor)
⑤ 名前なし : This post should carry the tag for: AI 補完を中心に据えた商用のコードエディタ(Visual Studio Code 派生)

criteria でも残った3件は、こう動きました。

名前だけの記事名前あり名前あり+境界名前なし
cursor(CSS のプロパティ)0.940.810.03
astro(星野写真)0.920.770.03
bun(バンズ)0.870.750.02

同じ3組の中身も同じ記事は、平均で 0.96 から 0.77 に下がりましたが、残っています。言い換えが弱くて何もかも下がったのではなく、名前だけの記事のほうだけが大きく落ちたということです。

本文には cursorastrobun も残っています。変えたのは質問文だけです。つまり Jev が引かれていたのは「本文にその語がある」ことではなく、「質問文の語と本文の語が一致している」ことでした。

1つ補足があります。この実験では名前を消すときに、質問の ID も tag_cursor から tag_47 のような番号に変えていました。ところが API のリファレンスには、こう書かれています。

The key is not sent to the underlying model and is not used in inference.

(訳)このキー(質問の ID)は、下にあるモデルには送られず、推論にも使われません。

— TypeSafe Docs「API」1

これに従えば、ID の変更は効いておらず、効いたのは説明文の言い換えのほうだけです。結論の向き(質問文の語と本文の語の一致に引かれていた)は変わらず、むしろ原因が1つに絞れます。

公式の弱点一覧との関係

この「質問文と本文の語の一致に引かれる」反応は、TypeSafe が公開している既知の弱点のどれとしても名指しされていません。

TypeSafe は jev-1.13 の既知の弱点を9つ公開しています(ページの最終確認日は 2026-09-17)2。字面どおりに読む、計算や数え上げが苦手、日付を順序のある量として扱わない、といったものです。このうち、今回の反応に近いものは2つあります。

jev-1.13 answers the question you wrote, not the one you meant.

(訳)jev-1.13 は、あなたが書いた質問に答えるのであって、意図した質問には答えません。

— TypeSafe Docs「Model jaggedness: jev-1.13」Literal reading2

Content written to adversarially steer the model, whether that is an injected instruction, a deliberately misleading framing, or text that argues for its own classification, can move the answer.

(訳)モデルを意図して誘導するように書かれた内容は、仕込まれた指示でも、わざと誤解を招く書き方でも、自分の分類を主張する文章でも、答えを動かしえます。

— TypeSafe Docs「Model jaggedness: jev-1.13」Adversarial content2

2つと今回の実験との違いを並べると、こうなります。

公式の弱点公式の説明この実験との違い
字面どおりに読む書いた質問に答え、意図した質問には答えない質問文の解釈の話。質問文の語と本文の語が一致しているかの話ではない
敵対的な入力に弱い自分の分類を主張するような文章は答えを動かしうる名前だけの記事は意図して作ったので考え方は近い。ただし指示は仕込んでおらず、たまたま cursor を含む普通の記事

言えるのは「2026-09-17 時点の一覧に名指しされていない」ところまでです。隠されているという意味ではありません。公式はページの末尾で、こう呼びかけています。

Found a failure mode that belongs on this list? We want to hear about it.

(訳)この一覧に載るべき失敗の仕方を見つけましたか? ぜひ教えてください。

— TypeSafe Docs「Model jaggedness: jev-1.13」2

この記事の結果は、まさにその候補です。ただし、日本語の合成記事20件という狭い条件での観察なので、報告するなら、件数と条件を添える必要があります。

使い所と、人に説明するときの要約

数行で説明するなら

  • Jev は、文章ではなく型の決まった判断(選択肢・はい/いいえの確率・段階)を返すモデルです
  • 確率が当たる割合に向けて学習したと TypeSafe は説明しています。ただし保証されるのはまとまりとしての性質で、1件ごとの正しさではありません(どちらも Part 1 で原文を引用しました)
  • 弱点は公開されていて、加えて自分で測った範囲では、質問文と本文の語の一致に強く引かれます。質問の書き方で結果が大きく変わります

使うときの3つの規則

規則やること根拠
1. criteria で境界を書く「同じ名前の別のもの」を外す条件を書くこの実験で、タグが選ばれる名前だけの記事が 6/10 → 3/10(下の引用1)
2. 名前を消した質問も試す名前で聞く質問と、言い換えで聞く質問を並べて送る結果が大きく違えば、その質問は名前の一致に引かれている
3. バージョンの ID を固定するjev-latest ではなく jev-1.13.0 のように指定する別名は新しいバージョンが出ると中身が変わる(下の引用2)

3つ目について、この記事の数字もすべて jev-1.13.0 のものです。バージョンが変われば、ここで測った反応の仕方も変わるかもしれません。

規則1と規則3は、公式の勧めとも一致します。

The instruction is enough for most Nouls, so try your questions with and without criteria and keep whichever gives better answers on your documents.

(訳)たいていの Noul は質問文だけで足ります。criteria のある質問と無い質問を両方試し、自分の文書でよい答えが出たほうを残してください。

— TypeSafe Docs「Noul」3(引用1)

If you have tuned confidence thresholds against a specific version, pin that version’s ID instead of the alias and move to the new one on your own schedule.

(訳)特定のバージョンに合わせて確信度の閾値を調整したなら、別名ではなくそのバージョンの ID を固定し、新しいバージョンへは自分の都合で移ってください。

— TypeSafe Docs「Models」4(引用2)

公式は criteria を「両方試せ」としか言っていません。この実験は、名前が同じで中身が違う題材では、書いたほうが効いた1つの例です。

3つの規則にも代償があります。

規則代償・向かない場面
1. criteria で境界を書く半分は残った。criteria だけで、名前だけの記事にタグが付かなくなるわけではない
2. 名前を消した質問も試す送る回数が2倍になる。言い換えが下手だと、中身も同じ記事まで落ちる(この実験でも1件落ちた)
3. バージョンの ID を固定する新しいバージョンでの改善を、自分で移るまで受け取れない

どれも、名前の一致に引かれる度合いを下げる手で、なくす手ではありません。自分の題材で名前だけ同じ記事と中身も同じ記事を作り、効き目を数えてから使うのが確かです。

どこを Jev に任せるかについては、公式の分担がそのまま使えます。

Make code take different actions for confident and unconfident answers. Escalate uncertain cases to a person or a more expensive reasoning model.

(訳)確信のある答えと無い答えで、コードの動きを変えてください。不確かなものは、人か、より高価な推論モデルへ回してください。

— TypeSafe Docs「How to build with System One」5

この連載の結果を足すと、任せる判断は、選択肢が決まっていて、答えを型で受け取りたいものに向いています。そして、質問文に対象の名前を入れるかどうかで答えが動くので、不確かさは確率だけでなく、質問の書き方からも生まれます。

この結論が崩れる条件

この記事の結論は、次の観測が出たら崩れます。

結論崩れる観測今回の結果
Jev は、質問文の語と本文の語の一致に引かれる質問文から名前を消しても、名前だけの記事の確率が下がらないcriteria でも残った3件は、平均 0.91 → 0.03 に下がった
下がったのは言い換えが弱いせいではない名前を消したとき、中身も同じ記事も同じくらい下がる中身も同じ記事は、同じ3組の平均で 0.96 → 0.77。下がり方が名前だけの記事よりずっと小さい
質問の ID を番号に変えたことは効いていない公式の説明が誤りで、ID が推論に使われている公式は「推論に使われない」と明記(上の引用)。自分では確かめていない
この反応は、この記事の条件の外でも起きる別の書き手の記事、英語の記事、別のタグで試すと、名前を消しても下がらない未確認。20件・日本語・書き手は Claude Opus 5 の1組だけ

この記事の限界

  • 名前だけ同じ記事と中身も同じ記事は計20件で、書いたのは Claude Opus 5 です。一般的な性質だと断定できる件数ではありません
  • 記事は日本語です。公式は言語についてこう書いています。「English is the primary training language and where accuracy is currently best.」(英語が主な学習言語で、今いちばん精度が出るのも英語です)4。この記事の結果は、日本語の題名と概要文に対するものです
  • 測ったのは jev-1.13.0 の1つのバージョンだけです
  • 確率の数字と実際に当たる割合が一致しているか(calibration)は測っていません。理由は Part 1 に書きました

次の Part へ

確率から上位のタグを選ぶ自作の規則(タグの選び方)には、この Part では触れずにきました。名前だけの記事にタグが付くかどうかを最後に決めていたのは、このタグの選び方です。次の Part 3 では、その中身を開けて、同じものを3回送ったときに何が揺れるかを測ります。

参考文献

Footnotes

  1. API - TypeSafe Docs - 質問の ID は推論に使われないこと(2026-09-23 取得)

  2. Model jaggedness: jev-1.13 - TypeSafe Docs - 既知の弱点9件(ページの最終確認 2026-09-17) 2 3 4

  3. Noul - TypeSafe Docs - 0・0.5・1 の読み方と criteria の使い方(2026-09-21 取得)

  4. Models - TypeSafe Docs - バージョンの ID の固定、言語についての注意(2026-09-21 取得) 2

  5. How to build with System One - TypeSafe Docs - コードとモデルの役割分担、不確かな答えの扱い(2026-09-21 取得)