Study Notes / 2026 ・ No.03

Jev覚書

文章を書かないモデルを、どこでどう使うのか

公開

この回で答えること

Q1こちらで state や選択肢を決めてやらないと動かないのか Q2Web ページのテストなら、state に何を入れるのか Q3株の売買を手伝ってもらえるのか

先に結論だけ言うと、Q1 は「そのとおり、それがこのモデルの形」です

2026年9月、TypeSafe AI が Jev というモデルを公開しました。
文章を書かない、というところが今までと違います。
何が違うのかを押さえたうえで、上の三つに答えます。

一

文章を書かないモデル

CORE

Jev はテキストを生成しません。こちらが先に決めた選択肢・スコア・はい/いいえのどれかを、確率つきで返してくるだけのモデルです。開発元は「System One(直感)のモデル」と呼んでいます。

作ったのは元 OpenAI の研究者 Diogo Almeida 氏が創業した TypeSafe AI。InstructGPT の論文(第1回・三章の RLHF の出どころ)の共著者です。同氏は Jev を「賢い if 文だと思ってほしい」と説明しています。

問い合わせの本文 LLM 文章。長さも形も こちらでは決められない Jev 請求0.91 技術0.06 その他0.03 事前に決めた選択肢と、 その確率だけが返る confidence 0.88

同じ入力でも、返ってくるものの形がまったく違う

LLM に問い合わせの分類をさせると、返ってくるのは文章です。JSON で返せと頼んでも、長さも形もモデル側が決める以上、こちらは毎回それを検証しなければなりません。Jev にはそもそも文字列を出す機能がありません。返り値は、こちらが定義した型に必ず収まります。

CAUTION

「幻覚ゼロ」と紹介されることがありますが、正確には型が外れないことの保証です。選択肢にない答えは返らない、という意味であって、選ばれた答えが正しいとは限りません。0% という数字も実測値ではありません。

二

なぜ速くて安いのか

LLM は一語ずつ順番に書きます(第1回・一章)。100語書くなら100回まわす。Jev は文章を書かないので、その繰り返しがありません。出力が短いのではなく、出力の仕組みそのものが違うわけです。

項目公表されている値
応答時間70〜500ms(端から端まで)
料金入力 100万トークンあたり $0.042。出力は無料
文脈長32,000 トークン
入力テキストのみ(画像・音声・動画は非対応)
学習合成データのみ。RLCD(較正された判断のための強化学習)

出力トークンが無料なのは、請求できるほどの量を出さないからです。返ってくるのは確率がいくつかと確信度だけ。課金の単位が「100万」ではなく「10億」で語られるのも同じ理由です。

「193.6倍速く、444.6倍安い」という数字も出ていますが、これは TypeSafe 自身の評価によるもので、比較対象も同社が選んだものです。速さと安さの桁は信じてよさそうですが、自分のデータで測り直すのが前提だと考えてください。

三

state と questions ── Q1 の答え

ANSWER

はい。state と選択肢を定義しないと動きません。ただしこれは制約というより、このモデルの使い方そのものです。「何を見せるか」と「何を訊くか」を書くことが、Jev を使うということです。

呼び出しは二つだけ

API に渡すのは state(見てほしいもの)と questions(訊きたいこと)の二つです。

POST https://api.typesafe.ai/v1/systemone { "model": "jev-latest", "state": { "subject": "請求額が先月と違う", "body": "二重に引き落とされているようです…", "plan": "business" }, "questions": { "department": { "type": "choice", "instructions": "どの部署が扱うべきか", "criteria": { "billing": "請求・返金", "technical": "不具合・障害", "account": "ログイン・権限" } }, "requestsRefund": { "type": "noul", "instructions": "返金を求めているか" } } }

state は「モデルに見てほしいもの」であればなんでも構いません。文字列でも、オブジェクトでも、配列でもよく、JSON のまま渡せます。上の例では件名・本文・プランを入れています。

質問は三種類

型返るもの制限
Noulはい/いいえの確率(0〜1)—
Choice選ばれた選択肢+各選択肢の確率+確信度選択肢は最大255
Score段階の重みつき平均+各段階の確率+確信度段階は2〜10

どの型にも instructions(何を訊いているか)を書きます。criteria は任意で、選択肢や段階の意味を説明する欄です。SDK 経由だと名前が変わることがあり、たとえば Vercel の AI SDK では Noul が boolean になっています。

返ってくるもの

{ "department": { "type": "choice", "choice": "billing", "probabilities": { "billing": 0.91, "technical": 0.06, "account": 0.03 }, "confidence": 0.88 }, "requestsRefund": { "type": "noul", "noul": 0.97 } }

ここが LLM といちばん違うところです。選ばれなかった選択肢の確率まで返ってくる。そして確信度が別についてくる。つまり「billing だと思うが自信はない」という状態を、こちら側のコードが読み取れます。

state Jev 確信度が高い そのまま自動で処理する 確信度が低い LLM か人にまわす

「賢い if 文」というのは、この分岐のこと

確信度が高ければそのまま自動で処理し、低ければ LLM か人間にまわす。しきい値を決めるのは自分のコードで、モデルはその材料を返すだけです。この役割分担が Jev の設計思想そのものだと思います。

四

Web テストに使う ── Q2 の答え

まず大前提として、Jev はブラウザを操作しません。動かすのは Playwright などのコードで、Jev は「いまの画面を見て、次にどうするか・合格か」を判定するだけです。

ブラウザを操作するPlaywright などのコード 画面を要約するstate に詰める Jev が判定する次の操作/合否/深刻度 コードが実行するしきい値・記録・打ち切り

操作するのはコード、判断するのが Jev。この一周をくり返す

state に入れるもの

ここが質問の核心だと思います。HTML をそのまま渡してはいけません。文脈長は32,000トークンで、実際のページの DOM はすぐにこれを超えます。入れるのは「要約した画面」です。

{ "goal": "会員登録してダッシュボードに入る", "step": 4, "expected": "パスワードが短いという警告が出る", "history": ["/signup を開いた", "メールを入力", "パスワードに abc を入力"], "page": { "url": "https://example.com/signup", "title": "会員登録", "visible": "会員登録 / メールアドレス / パスワード / 登録する", "alerts": ["パスワードは8文字以上で入力してください"] }, "actions": [ "email_input", "password_input", "submit_button", "login_link" ] }
  • goal・expected ── 何を確かめたいのか。これがないと合否の判定ができません
  • step・history ── いま何手目で、ここまで何をしたか。同じ操作のループを検知できます
  • page ── URL、タイトル、見えているテキスト、警告やトーストの文言
  • actions ── 押せる要素の一覧。これがそのまま選択肢になります
POINT

DOM ではなくアクセシビリティツリーや表示テキストを入れるのがコツです。人間がその画面を電話で説明するとしたら何を言うか、と考えると、だいたい過不足がなくなります。

questions の組み方

質問型用途
nextActionChoiceactions の中からどれを押すか
expectedMetNoulこの手順の期待どおりになっているか
stuckNoul同じところを回っていないか(打ち切りの判断)
severityScoreずれの深刻度(2〜10段階で定義する)

nextAction の選択肢は最大255なので、押せる要素が255を超える画面では、先にコード側で絞り込む必要があります。

RULE OF THUMB

コードで書ける検証は、コードのままにしておくこと。「ボタンが存在するか」「ステータスコードが200か」に Jev は要りません。Jev が効くのは「このエラー文は利用者に意味が通じるか」「この画面は決済画面に見えるか」といった、書き下すのが面倒な判断のほうです。

スクリーンショットは渡せません(テキストのみ)。見た目そのものを判定させたい場合は、先に画像を読めるモデルに説明させ、その文章を state に入れる、という二段構えになります。

五

株の売買に使えるのか ── Q3 の答え

ANSWER

技術的には可能で、公開直後から実例も出ています。ただしJev が担っているのは全体のごく一部で、勝ち負けを決めているのはたいてい自分のコードのほうです。

公開から数日で、板情報を約300msごとに判断させる取引ボット、複数の銘柄ごとに独立した建玉を持つ構成、ペーパートレードでの検証などが出ています。香港株の方向予測や、銀行の問い合わせ分類(正答率92.4%)といった、もう少し落ち着いた使い方も報告されています。

市場データから特徴量をつくる state に詰める(約400トークン) 確率と確信度を返す しきい値と上限で発注する 自分のコード 自分のコード Jev 自分のコード 勝ち負けを決めているのは、ほとんどが左右の「自分のコード」の側

実例に共通する形。Jev の前後は、どれも自分で書いたコード

実例に共通しているのは、400トークン程度に圧縮した state を渡し、返ってきた確率をコード側のポリシーで扱うという形です。Jev は相場を見にいきません。何を特徴量にするか、どう圧縮するかは、すべてこちらの仕事です。

気をつけるところ

  • 較正は「当たる」ことではありません ── 確率が較正されているとは、学習した分布の上で 0.7 と言ったら約7割当たる、という意味です。相場は非定常で、しかも相手がいます。学習時の分布の外側です
  • 70〜500ms は AI としては速いだけ ── 時間優先の戦略には遅すぎます
  • テキストのみ・32,000トークン ── チャート画像は渡せず、履歴も入れ放題ではありません
  • 確率的です ── 同じ入力で必ず同じ答えが返るわけではありません。損失限度や建玉上限のような絶対に守るべき規則は、モデルではなくコードに置く
  • ベンチマークは自社評価 ── 速さと安さの主張は、自分の環境で測り直してから判断するのが安全です
CAUTION

私たちは投資助言を行う立場にありません。ここに書いたのは仕組みの話で、売買の判断についてのものではありません。実例の多くが既定でドライラン・ペーパートレードから始まる設計になっているのは、そういうことだと思います。

六

使い分けの目安

Jev は LLM の置き換えではありません。第2回・一章で書いた「何を当てさせたか」の違いが、そのまま守備範囲の違いになっています。

やり方教師データ速度同じ答え自由な文章
ルール不要速い必ず同じ×
従来の機械学習必要速いほぼ同じ×
Jev不要速いそのつど揺れる×
LLM不要遅いそのつど揺れる○
① if 文で書けるなら ── ルールのまま。AI を挟む必要はない
② 教師データが十分あるなら ── 従来の機械学習のほうが安定して速い
③ 文章を読んで限られた判断をするなら ── Jev
④ 文章そのものを書かせたいなら ── LLM

もうひとつ有望なのが、LLM の見張り役としての使い方です。エージェントが道具を呼ぶ直前に、その呼び出しが危険でないかを Jev に判定させて止める。第1回・六章で書いた「信頼性の積算」への現実的な答えのひとつになりそうです。

まず試すなら

すでに LLM で分類だけさせている箇所が、いちばん置き換えやすいはずです。入力も期待する出力も手元にあるので、同じデータで両方を流して突き合わせることができます。速さと安さの主張を、自分の土俵で検算するところから始めるのがよいと思います。

結 — 一枚まとめ

  1. Jev は文章を書かない。事前に決めた選択肢・スコア・はい/いいえを確率つきで返す。
  2. だから速くて安い(70〜500ms、入力100万トークンで $0.042、出力は無料)。
  3. Q1:そのとおり、state と選択肢を書くことが使い方そのもの。
  4. Q2:DOM ではなく要約した画面。目的・手順・見えているテキスト・押せる要素。押せる要素がそのまま選択肢になる。
  5. Q3:技術的には可能。ただし特徴量もリスク管理も自分のコード側で、較正は「当たる」ことの保証ではない。
  6. 「幻覚ゼロ」は型が外れないという意味。答えが正しいことの保証ではない。
  7. ルール/従来の機械学習/Jev/LLM は競合しない。LLM の見張り役としての使い道も大きい。

参考

Jev覚書 — 全六章 / 2026.09

← 記事一覧へ