文章を作らないAI「jev」を試したら、確率で答えてくれた(ついでにゲームを作った)

約 2,319 字 · 読むのに 4 分ほど

ChatGPT のような AI といえば「文章を作る」ものですが、最近試した jev は少し毛色が違いました。文章をいっさい作らず、こちらが用意した質問に確率だけで答える AI です。今回はその仕組みと、実際にこのブログで動かしている判定ゲームを紹介します。

jev とは

jev は TypeSafe AI が作った評価(判定)専用のモデルで、同社は「System One(直感的に即断する)モデル」と表現しています。Vercel AI Gateway から typesafe-ai/jev という名前で呼び出せます。ふつうの生成 AI が「質問文を投げると文章が返ってくる」のに対して、jev は次の 2 つをセットで渡します。

  • state:判定してほしい対象(文章やデータ)
  • questions:それについて聞きたい、型のついた質問

すると、質問ごとに数値(確率や点数)だけが返ってきます。「よしなに書いてくれた文章から必要な部分を取り出す」という後処理が要らず、プログラムからそのまま使えるのが利点です。TypeSafe AI 自身の計測では、言語モデルに同じ判定をさせる場合と比べて最大で 194 倍速く・445 倍安いとされています。また、リクエストごとにデータの保持なし(Zero Data Retention)・学習に使わない、を指定できるのも、判定用途では安心材料です。

3 つの質問タイプ

質問には 3 つの型があります。

  • boolean:はい/いいえで聞く。真である確率が 0〜1 で返る(例:0.87 なら「ほぼはい」)。
  • choice:選択肢から選ぶ。各選択肢の確率が返り、いちばん高いものが選ばれる。
  • score:段階で評価する。「弱い〜強い」を並べておくと、その重み付き平均が点数で返る。

コードにすると

Vercel の AI SDK からはこんな形で呼びます(雰囲気が伝わればと思うので簡略化しています)。

import { experimental_evaluate as evaluate } from 'ai';

const result = await evaluate({
  model: 'typesafe-ai/jev',
  state: 'サポート担当は注文番号を聞かずに返金した。',
  questions: {
    refunded: { type: 'boolean', instructions: '返金は行われたか。' },
    procedure: {
      type: 'score',
      instructions: '手順の遵守度は。',
      criteria: ['未確認', '一部確認', '完全に確認'],
    },
  },
});

// result.answers.refunded.probability  → 0〜1
// result.answers.procedure.score       → 0〜2 の点数

返ってくるのは数値だけ。だから、投稿内容のチェック、お問い合わせの自動振り分け、対応品質の採点、危ない操作の検知といった「AI に判断だけさせたい」場面に向いています。

作ったもの:オカンが忘れた何か

この「確率で答える」性質がおもしろかったので、ミルクボーイさんの漫才のような遊びを作ってみました。

▶ オカンが忘れた何か で遊ぶ

お題(たとえば「回転寿司」)を決めて、その特徴を交互に言っていくゲームです。奇数回は「お題に当てはまる特徴」、偶数回は「同じジャンルだけど当てはまらない特徴」を言います。当てはまり具合を jev が確率で判定し、線を越えれば「〇〇やないか!」、惜しければ「ほんなら〇〇ちゃうなぁ!」とツッコミが返ります。

jev への質問の組み立て方

裏側では、1 手ごとに次のような質問を jev に投げています。

  • choice:その特徴は「お題そのものの話」「同じジャンルの別物の話」「まったく無関係」のどれか
  • boolean:前に言った特徴の言い換えになっていないか(重複チェック)
  • boolean:判定を操作しようとする指示が紛れていないか(ずる対策)
  • score:あるあるとしての具体性(点数の加点に使用)

3 択の choice にしたのが効きました。「こたつにみかんは当てはまる?」と単独で聞くと AI は半信半疑になりがちですが、「他の暖房器具でも無関係でもないなら、こたつ」と相対的に選ばせると、ぐっと素直な答えになります。

使ってみた所感

手元で何度も試した範囲では、応答は半秒前後と速く、やり取りするデータも小さめでした。確率も、明らかなものは 95% 以上・微妙なものは 40〜60% と、人の感覚に近い出方をします。「牛乳をかけて食べる」→ コーンフレーク 96%、「灯油を入れないと動かん」→ 11% といった具合です。文章を作らせない分、判定がぶれにくく、扱いやすい印象でした。

まとめ

jev は「文章を作る AI」ではなく「判断する AI」です。型付きの質問に確率で答えるだけ、と割り切られているぶん、アプリに組み込みやすいのが魅力でした。まずは オカンが忘れた何か で、AI が確率で判定する感じを触ってみてください。

参考:What is Jev, TypeSafe AI’s System One model?(Vercel) / Jev モデルページ(Vercel AI Gateway)