powered by TechFeed
表示モード
主要ニュース

NokiaがオープンLLMを追加学習なしで意思決定モデルに変換するライブラリ「AnyJev」を公開 — 自動判定できるトラフィックが7.7%から52%に

9月23日、MarkTechPostが「Nokia Open-Sources AnyJev: A Training-Free Layer That Turns Any Open LLM Into a Calibrated Decision Model」と題した記事を公開した。Nokiaの応用研究チームがオープンLLMを追加学習なしで校正済み意思決定モデルへ変換するPythonライブラリ「AnyJev」をオープンソース公開した。生のロジットでは7.7%にとどまっていた自動判定率が52.0%まで上昇するという数字が、産業応用の文脈で注目を集めている。

9月23日、MarkTechPostが「Nokia Open-Sources AnyJev: A Training-Free Layer That Turns Any Open LLM Into a Calibrated Decision Model」と題した記事を公開した。Nokiaの応用研究チームがオープンLLMを追加学習なしで校正済み意思決定モデルへ変換するPythonライブラリ「AnyJev」をオープンソース公開した。生のロジットでは7.7%にとどまっていた自動判定率が52.0%まで上昇するという数字が、産業応用の文脈で注目を集めている。


背景:LLMを意思決定に使う難しさ

テキスト生成に特化して訓練されたLLMを、「K個の選択肢から1つを選ぶ」という意思決定タスクに流用したいケースは多い。問い合わせの振り分け(ルーティング)、審査スコアリング、コンテンツ分類など、企業のオペレーション領域では「ラベルを生成する」より「選択肢を直接選ばせる」方が安定する。しかし、オープンLLMをそのまま使うには2つの構造的な問題がある。

選択肢の並び順を変えると答えが変わる(順序バイアス)と、確率が校正されていない(モデルが出力する確率値が実際の正解率と乖離している)だ。後者の校正問題は特に見落とされやすい。モデルが「95%の確率でbilling」と返しても、実際の正解率が60%程度であれば、その数値を閾値判定に使うことはできない。校正が不十分なままでは、自動処理してよい案件と人間のレビューが必要な案件を確率スコアで切り分けることができず、結果として大半のトラフィックを人手に回さざるを得なくなる。

AnyJevはこの2点を、追加学習なしに解決する。


「自動化率6.8倍」が示す実力

ベンチマーク結果が具体的だ。Qwen3-8BとBANKING77(20クラス分類、テスト300件)での比較:

指標 生logits AnyJev L0 AnyJev L1
必要なラベル数 0 0 100〜500
選択肢逆順時の回答変化率 0.230 0.073 0.077
精度 0.747 0.803 0.807
校正誤差(ECE) 0.240 0.184 0.095
5%誤り率での自動判定率 7.7% 46.3% 52.0%

「5%誤り率での自動判定率」とは、確率スコアが閾値を超えて人間のレビューなしに自動処理できるトラフィックの割合だ。生logitsでは7.7%しか自動化できなかったものが、L1適用後は52.0%まで上昇する。これが「自動化比率6.8倍」の根拠である。


仕組み:2段階の補正

AnyJevの補正はlevelフィールドで制御される。

L0(デフォルト、ラベル不要)は2つの処理を行う。

  • 循環シフト(Cyclic shifts):K個の選択肢があれば、並び順をK通りローテーションしてそれぞれスコアを取得し、対数空間で幾何平均を取る。位置バイアスがlogit空間で加法的であれば、これで完全に除去できる。
  • 事前分布補正(Prior correction):実入力の予測分布の累積平均を追跡し、強度0.75で除算する。補正は8件目以降から開始する。

L0のコストは1決定あたりK回のプレフィル。H100×1台、バッチ32、K=20の条件で約0.25秒/決定だ。

L1(100〜500ラベル必要)はL0に加えて温度スケーリングを適用する。フィットした値はJSONファイルとして保存される。L1は確率の分布形状を整えるが、回答のランキング自体は変えない。


対応する質問タイプ

ライブラリが扱える質問は3種類に型付けされている。

  • choice:K個の選択肢から1つを選ぶ
  • noul:yes/noの二択
  • score:複数の順序付きビンへの分類

インターフェース設計は、TypeSafe AIが2026年9月にリリースしたJev(System Oneモデル)を踏襲している。JevはTypeSafe AIが開発した意思決定タスク特化のファインチューニング済みモデルであり、同APIスタイルを確立した先行実装にあたる。AnyJevはそのインターフェースをオープンLLMで再現する位置付けで設計されており、Jevに慣れた開発者がそのまま移行しやすい構造になっている。


使い方

PyPIからインストールして即使える。

pip install "anyjev[hf]"
from anyjev import Decider, Question
from anyjev.backends.hf import HFBackend

d = Decider(HFBackend("Qwen/Qwen3-8B"))
route = Question.choice("Which team should handle this?",
                        ["billing", "technical", "sales", "other"], name="route")
r = d.decide({"conversation": [...]}, [route])
r["route"].distribution   # 各選択肢の確率分布

サービング用途では、プレフィックスキャッシュを有効にしたvLLMを起動してVLLMBackendを向ければよい。HuggingFaceとvLLMの2バックエンドを共有プレフィックススコアリング付きでサポートする。

ライセンスはApache-2.0。Qwen、OLMo、Granite、Phi、Mistralでのアブレーション結果はリポジトリのresults_bench.mdにまとめられている。Nokia社内のルーティング問題への適用でも有望な結果が得られたと研究チームは述べている。

校正誤差(ECE)の比較では、Qwen3-32B+L1の組み合わせでECE=0.036を達成しており、JevのECE=0.144を上回っている。精度面では、NokiaがファインチューニングによってBANKING77向けに最適化した分類特化モデルであるLaya(Nokia Applied Researchが開発)が依然リードしているが、学習コストゼロでそこに迫れる点がAnyJevの実用的な強みだ。

詳細はNokia Open-Sources AnyJev: A Training-Free Layer That Turns Any Open LLM Into a Calibrated Decision Modelを参照していただきたい。