Instructions to use tanakaisworking/Erabo-2B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use tanakaisworking/Erabo-2B with Transformers:
# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("tanakaisworking/Erabo-2B") model = AutoModelForCausalLM.from_pretrained("tanakaisworking/Erabo-2B", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Erabo-2B-c035
日本語の業務文書を読んで、選択肢から判断を1つ選ぶ小型モデルです。 判断用モデル Mapika/decider-2b をもとに、日本語と英語の実務判断に絞って追加学習しました。文章は書かず、「このメールの目的はどれか」「このルールなら実行していいか」といった問いに、選んだ選択肢と各選択肢の確率で答えます。
Eraboの考え方
Erabo-2Bは、単体で何でも決める万能モデルとしては作っていません。業務の流れの手前に置いて、「この判断はここで決めてよいか、人や上位のLLMに委ねるべきか」を振り分ける前処理の担当です。
技術としてはLoRAによる追加学習で、手法自体に目新しさはありません。工夫したのは、何を学ばせ、どの重みを選ぶかの基準です。ベンチマークの正解率だけを追うことはせず、わからないものを「わからない(要確認)」と返せることを最も重視しました。
振り分け役の失敗には2つの方向があります。何でも「要確認」にするモデルは安全ですが、仕分けの役に立ちません。何でも決めてしまうモデルは便利ですが、決めてはいけない案件まで通してしまいます。元のモデルは前者寄りで、確認の要らない規則判断160問のうち101問を「要確認」にしていました。Erabo-2Bはこれを29問まで減らしつつ、「要確認」が正解の80問のうち70問では保留を残しています。
重みの選び方も、この考え方に合わせました。42回の実験サイクルで候補を作り、「保留すべき問題で『要確認』を選べる数が減らないこと」を学習前に条件として決めて比べています。正解率が上がっても、この条件を満たさなかった候補は公開していません。
こんなときに使えます
- 問い合わせや社内メールの仕分け(依頼・断り・通知・問い合わせ・謝罪など、メールの目的の分類)
- 「両方の確認が済んだら実行」のような社内ルールに沿った、実行・見送り・要確認の判断
- 大きなLLMに渡す前の一次振り分け。2Bと小さく、自分のデバイス上で動かせます
なぜ2Bか
汎用LLMとして見ると2Bは小さく、賢さでは大きなモデルにかないません。ただ、選択肢から選ぶ判断に用途を絞れば、2Bでも一次仕分けを任せられる水準になります。個人のPCのGPUでも動かせる大きさで、業務ルールが変わっても手元で追加学習し直せます。Deciderシリーズ(0.8B〜35B)の中でも、ダウンロード数は2B版が突出して多く、直近1か月で約33万回、4B版の約11倍です(2026年10月19日時点、Hugging Face)。
元のモデルから何が変わったか
元の decider-2b は、多言語の Qwen3.5-2B をもとにした汎用の判断モデルです。Erabo-2B はここに日本語の業務メールや社内ルールの判断を学習させ、日本語と英語の判断に寄せました。日本語・英語以外の言語の性能は、維持を目標にしていません。
| 学習前 | Erabo-2B | |
|---|---|---|
| 社内ルールに沿った判断(3択) | 55.6% | 75.3% |
| メールの目的を当てる(8択) | 52.0% | 72.5% |
| 日本語の常識問題(JGLUE) | 82.5% | 84.0% |
向いていないこと
文章の生成・要約・チャット、出力確率をそのまま信じた自動実行、法務・医療・金銭に関わる最終判断には向きません。人が最後に確認する前提で使ってください。
このモデルの位置づけ
Erabo-2B-c035 は、Mapika/decider-2b(Qwen3.5-2B-Base をもとにした判断用モデル)を LoRA で追加学習し、その結果をベースに統合した、日本語および英語向けの選択肢(Choice)判断モデルです。テキストの自由生成は行わず、context、question、rubric、options を入力として受け取り、選択肢IDとその確率を出力します。
ゼロから事前学習を行ったモデルではなく、既存の 2B 判断用モデルに日本語の業務文書を学習させ、判断時の出力形式や振る舞いを整えた適応モデル(振る舞いの矯正)に位置づけられます。学習規模は約 1,397 問・88 ステップ(更新)にとどまり、一般的な日本語 LLM と比べて 3〜4 桁ほど小さくなっています。そのため、特定の限定的な判断タスクにおける精度改善は確認できるものの、日本語能力全般が向上したと主張するものではありません。
公開した重みは、42回の実験サイクルで作った候補の中で、最も業務に適していると判断したものです。候補は学習前に決めた同じ条件で比べ、正解率が高くても条件を満たさなかった8つは採用していません。
使い方
このリポジトリを1つダウンロードすれば動きます。ベースモデルとアダプタを組み合わせる作業は要りません。
pip install torch transformers==5.17.0 accelerate==1.15.0 huggingface_hub==1.31.0
hf download tanakaisworking/Erabo-2B --local-dir Erabo-2B
cd Erabo-2B
python erabo_predict.py --input requests.jsonl --output predictions.json
NVIDIA GPU、Apple Silicon の Mac、CPU のどれでも動き、使える環境を自動で選びます(--device cuda / mps / cpu で指定もできます)。重みは bf16 で約3.8GB です。メモリ8GBの M1 Mac でも動作を確認しました(1問あたり1〜2秒)。
このモデルは文章を生成せず、選択肢の答えの位置の logits を読んで確率を出します。そのため LM Studio や Ollama のチャット画面では使えません。推論には同梱の erabo_predict.py と erabo_inference/ を使ってください。通常の対話・チャット生成での品質は評価していません。
入力データは JSONL 形式とし、各行には以下の 4 項目のみを記述します。
context: 判断対象となる本文
question: 判断を求める問い
rubric: 判断の基準
options: 2〜10件の {"id", "text"} を格納したリスト
{"context": "件名:打ち合わせ日程の件\n\n先日ご提案いただいた打ち合わせですが、社内の調整がつかず、今回は見送らせていただきたく存じます。またの機会にぜひよろしくお願いいたします。", "question": "このメールの主な目的はどれですか。", "rubric": "本文全体から送り手が最も求めていることを選びます。", "options": [{"id": "request", "text": "依頼"}, {"id": "refusal", "text": "断り"}, {"id": "thanks", "text": "感謝"}, {"id": "apology", "text": "謝罪"}, {"id": "invite", "text": "勧誘"}, {"id": "cheer", "text": "激励"}, {"id": "notice", "text": "通知"}, {"id": "inquiry", "text": "問い合わせ"}]}
丁寧に書かれた断りのメールを「断り」と判定した出力です。選んだ選択肢IDと、各選択肢の確率が返ります。
[{"input_index": 0, "choice_id": "refusal", "probabilities": {"request": 0.011, "refusal": 0.956, "thanks": 0.011, "apology": 0.010, "invite": 0.004, "cheer": 0.002, "notice": 0.004, "inquiry": 0.002}}]
出力確率は較正されていないため、確率の閾値をもとに処理を自動実行するような用途では、事前に別途キャリブレーションを実施する必要があります。 1入力あたりの最大長は 2048 token で、上限を超えた場合はテキストを切り詰めずにエラーを返します。
このページの数値は、NVIDIA T4 上でベースモデルを 4bit NF4 で読み込み、統合前の adapter(adapter/)を重ねた構成で測りました。この構成は --adapter で再現できます(NVIDIA GPU と、追加で peft==0.21.0 bitsandbytes==0.50.2 が必要です)。統合モデルは量子化しないぶん確率が少し変わります。同じ問題を通常の並び順で比べた正解数は、メールの目的・発話行為 400問で 221→210問、規則判断 240問で 179→183問、英語 MultiNLI 503問で 436→432問でした(左が測定構成、右が M1 Mac 上の統合モデル)。
公開ベースモデルとの比較(JGLUE)
| JGLUE | 公開ベース | Erabo-2B |
|---|---|---|
| JNLI dev 2順平均 | 64.7% | 65.3% |
| JNLI dev 通常順 | 76.9% | 67.2% |
| JNLI dev 逆順 | 52.5% | 63.3% |
| JNLI dev 並び順を変えても同じ答えの割合 | 67.1% | 95.3% |
| JCommonsenseQA valid 2順平均 | 82.5% | 84.0% |
| JCommonsenseQA valid 通常順 | 82.4% | 83.8% |
| JCommonsenseQA valid 逆順 | 82.6% | 84.1% |
| JCommonsenseQA valid 並び順を変えても同じ答えの割合 | 90.1% | 91.6% |
JGLUE による評価は、学習・調整・較正には一切使用せず、評価設定を固定した後に一度だけ実施したものです。JNLI の通常順では公開ベースモデルのスコアが最も高くなっていますが、これは選択肢の並び順に引きずられた結果であり、逆順にするとスコアは大きく低下します。そのため、モデルの比較にあたっては 2 順の平均値や、選択肢の並び順を変えた際の一致率に着目してください。
開発用データでの測定(選択肢3通りの並び順の平均)
| 評価セット | 問数 | 公開ベース | Erabo-2B |
|---|---|---|---|
| メールの目的 8択(学習に使っていない200通) | 200 | 52.0% | 72.5% |
| メールの発話行為 4択(同じ200通) | 200 | 34.7% | 37.8% |
| メール4判断(作業・返信・応諾・期限) | 37 | 64.9% | 65.8% |
| メール4判断(別場面の対照メール) | 192 | 88.5% | 88.0% |
| 規則判断 3択 | 240 | 55.6% | 75.3% |
| 規則判断(別形式) | 81 | 56.8% | 65.8% |
| MASSIVE 意図分類(8種) | 293 | 87.5% | 95.1% |
| MASSIVE 意図分類(別の9種) | 99 | 96.0% | 97.6% |
| 意図分類の難問(言い換え・訂正入り) | 48 | 100.0% | 97.2% |
| 英語 MultiNLI(英語力の維持確認) | 503 | 83.4% | 86.5% |
限界
- 学習データの正解ラベルは、公開データセットが持つ既存の上流ラベル、あるいは当プロジェクトが機械生成した正解(oracle)に基づいています。第三者の人間が個別に精査・作成した業務向けの正解データは含まれていません。
- 上記の表に示した測定結果は、いずれも開発中に参照していた開発用データでの値であり、未知のデータに対する汎化性能は実証されていません。
- 出力確率は未較正です。公表値は 4bit NF4+adapter 構成での測定で、統合モデル(bf16)の全評価セットでの再測定はしていません。
- 業務に導入する際は、人間による最終確認(Human-in-the-Loop)を前提として運用してください。法務・医療・財務などに関わる重大な最終判断には利用できません。
学習でモデルから借りたもの/借りていないもの
- 借りていないもの(正解ラベルなど): 他の教師モデルの判断を蒸留したデータは一切含んでいません。正解ラベルの内訳として、メールの目的や発話行為には上流データセットの生成条件を用い、英語タスクおよび MASSIVE には上流の人手ラベルを採用しています。また、規則系タスクは当プロジェクトが開発した実行可能 oracle による機械計算結果であり、メール4判断は当プロジェクトが独自に再注釈を付与したデータです。
- 借りているもの(テキスト本文): Japanese-Mail-Bench のメール本文は Preferred Networks(PFN)の公開データを利用しており、当プロジェクトが独自生成したものではありません。一方、規則系データは当プロジェクトが企画・設計した上で、プログラムによって組み合わせて生成・拡張したテキストです(正解ラベルもプログラム側で算出しています)。いずれのデータにおいても、教師モデルの判断や回答そのものは学習に使用していません。
- Japanese-Mail-Bench の test split を学習データに含めているため、同ベンチマークを本モデルの公平な性能評価に使うことはできません。
モデルの詳細
| 項目 | 内容 |
|---|---|
| ベースモデル | Mapika/decider-2b(revision 533964dae8be954c5b5e19fa4948e48408094c1e)。もとは Qwen/Qwen3.5-2B-Base |
| 配布物 | adapter をベースに統合した重み(bf16、約3.8GB)と、統合前の LoRA adapter(adapter/、約67MB) |
| LoRA 設定 | rank 16 / alpha 32 / dropout 0。attention と MLP の全線形層が対象 |
| 推論時の読み込み | 統合モデルは bf16。公表値の測定は 4bit NF4(double quant)のベースに adapter を重ね、計算は bf16。出力の温度は上流の Choice 設定 1.164 |
| 出力 | 選択肢ごとの確率(未較正)と、最も確率の高い選択肢ID |
| 対応言語 | 日本語・英語 |
| ライセンス | Apache-2.0(ベースモデルと同じ) |
学習の手順
学習は2段階で行いました。どちらも各問題を1回ずつ使う1周(1 epoch)です。
| 第1段階 | 第2段階(Erabo-2B) | |
|---|---|---|
| 出発点 | 公開ベース | 第1段階の結果 |
| データ | MASSIVE 日本語 8意図 1,000問 | 下表の5種類 1,397問 |
| 更新回数 | 63 | 88 |
| 学習率 | 1e-4 | 2e-5 |
| その他 | batch 16、AdamW、weight decay 0.01、勾配クリップ 1.0、seed 42 | batch 16、AdamW、weight decay 0.01、勾配クリップ 1.0、seed 24009 |
| 損失 | 正解選択肢の cross entropy | 正解選択肢の cross entropy |
第2段階は Tesla T4 1枚で約39分、GPU メモリのピークは約3.76GB でした。環境は torch 2.11.0、transformers 5.17.0、peft 0.21.0、bitsandbytes 0.50.2 です。選択肢の並び順は学習中も問題ごとに入れ替えています。
学習データ
第2段階で使った1,397問の内訳です。
| 出典 | 問数 | 内容 | ライセンス |
|---|---|---|---|
| Japanese-Mail-Bench(PFN) | 500 | 未使用の250通それぞれに「目的」と「発話行為」の2問 | Apache 2.0 |
| Japanese-Mail-Bench(PFN) | 173 | 40通に「作業が必要か・返信が必要か・応諾か・期限はどれか」の判断を付け直した153問と、期限の言い回しを変えた20問 | Apache 2.0 |
| MultiNLI 1.0 | 204 | 英語の含意判定(含意・中立・矛盾の3択)。government / slate / telephone / travel の4ジャンルから各51問 | 原論文の条件 |
| MASSIVE 1.1 ja-JP | 160 | 日本語の意図分類8択から各20問(第1段階の性能を保つため) | CC BY 4.0 |
| Erabo-jp 規則判断データ | 360 | 社内ルールに沿って「実行・見送り・要確認」を選ぶ3択。10種類の論理(AND、OR、例外、停止指定、訂正、3つのうち2つ、数値の範囲、文字の条件など)から各36問 | Apache 2.0(本モデルと同じ) |
各データの中身は次のとおりです。
- メールの目的(8択): 依頼・断り・感謝・謝罪・勧誘・激励・通知・問い合わせ。正解はメールを生成したときの設定値です。
- メールの発話行為(4択): お願い・説明・質問・指示。
- MASSIVE の8意図: アラームの設定・確認・解除、カレンダーの登録・確認・削除、音楽の再生、天気の質問。
- 規則判断データ: 倉庫の搬入や店舗の受付など6つの場面を、説明文・受付記録・対話の3つの書き方で表したものです。条件には「成立・不成立・未確認」があり、「未確認があっても結論が出る問題」と「確認しないと決められない問題」の両方を含みます。
評価データ
開発用の評価データは、選択肢を通常の順・逆順・ランダム順の3通りに並べた正解率の平均で比べています。JGLUE は通常の順と逆順の2通りです。比べるモデル同士は、同じ入力・同じ読み込み条件で測りました。
| 評価セット | 問数 | 内容 | 学習との関係 |
|---|---|---|---|
| JGLUE JNLI dev | 1,199 | 日本語の含意判定 | 学習・調整に未使用。設定を固定した後に一度だけ測定 |
| JGLUE JCommonsenseQA valid | 1,090 | 日本語の常識5択 | 同上 |
| メールの目的・発話行為 | 200通(400問) | 学習に使っていない Japanese-Mail-Bench のメール | 学習メールと重複なし |
| メール4判断 | 37 | 学習とは別のメールに同じ4判断を付けたもの | 学習メールと重複なし |
| 別場面の対照メール | 192 | 1か所だけ条件を変えたメールの対(48通×4判断) | 評価専用 |
| 規則判断 3択 | 240 | 学習とは別の場面(展示会・図書室・備品配布)と書き方 | 評価専用 |
| 規則判断(別形式) | 81 | 文面の形式が異なる規則問題 | 評価専用 |
| MASSIVE 意図分類 | 293 / 99 | 8種の意図、別の9種の意図 | 評価専用 |
| 意図分類の難問 | 48 | 言い換えや訂正を含む依頼 | 評価専用 |
| 英語 MultiNLI | 503 | 英語の含意判定 | 評価専用 |
上流データの帰属表示については NOTICE.md をご確認ください。本モデルのライセンスは Apache-2.0 です。なお、ベースモデルおよび各学習データの利用条件は、それぞれの提供元の規約・ライセンスに準拠します。
- Downloads last month
- 4