Japanese Novel Reward Modernbert Ja 130m
modernbert-ja-130mをファインチューニングした日本語小説品質評価用報酬モデルで、ユーザーによる小説テキストへの評価スコアを予測します。
ダウンロード数 14
リリース時間 : 2/25/2025
モデル概要
このモデルは回帰分析により入力された日本語小説テキストに対するユーザー評価スコアを予測し、間接的にテキスト品質を評価します。主に小説生成モデルの強化学習などの応用シナリオを対象としています。
モデル特徴
長文処理能力
最大8192トークンのテキスト入力をサポートし、完全な小説の章を処理するのに適しています。
品質評価
ユーザー評価スコアの予測を通じて小説テキストの品質を間接的に評価し、出力スコアは通常0-10の範囲になります。
強化学習サポート
小説生成モデルの強化学習トレーニングシナリオ向けに設計されており、報酬信号として使用可能です。
モデル能力
日本語テキスト品質評価
小説評価予測
長文処理
使用事例
テキスト生成
小説生成モデルトレーニング
報酬モデルとして日本語小説生成AIのトレーニングに使用され、評価フィードバックにより生成品質を最適化します。
コンテンツ品質選別
ユーザー生成の小説コンテンツ品質を自動評価し、コンテンツ審査を補助します。
🚀 Japanese-Novel-Reward-modernbert-ja-130m
このモデルは、日本語小説の品質評価を行うためのRewardモデルです。sbintuitions/modernbert-ja-130mをファインチューニングして作成されており、主に小説生成モデルの強化学習などの用途を想定しています。入力の小説テキストに対するユーザーの評価を回帰で予測することで、間接的にテキストの品質を評価することができます。ただし、テキストのクオリティ以外の様々なバイアス(ジャンル、文体など)の影響を受ける可能性があることに注意してご利用ください。
🚀 クイックスタート
事前にtransformersやflash attention 2等をインストールしてください。
from transformers import pipeline
import torch
model_name = "Aratako/Japanese-Novel-Reward-modernbert-ja-130m"
classifier = pipeline("text-classification", model=model_name, tokenizer=model_name, max_length=8192, truncation=True, device_map="auto", torch_dtype=torch.float32)
# 以下の例文はo1-proの生成文章です。
text1 = """ 地球から四光年先にある惑星シルヴァは、常に緑色のオーロラが大気を覆い尽くしている。大気組成はわずかに人類が呼吸できる水準に達しており、国際恒星探査チームは着陸後すぐに小規模な調査基地を設営した。まだ未知の生物や環境リスクが多く、常時防護服を着用することが義務付けられていたが、そこには他の惑星にはない神秘的な輝きがあった。
しかし、シルヴァに到着して三週間が経過したある日、チームは周波数帯の異なる奇妙なシグナルを受信した。それは惑星の奥地から発せられているらしく、断続的に解析不可能な符号を繰り返している。始めは放電現象や地磁気の乱れと考えられたが、解析を続けるうちにそのパターンには高度な規則性があると判明した。シルヴァに原生生物がいるかは不明だったが、仮に知的生命体が存在するとすれば、このシグナルこそが最初の接触の証拠かもしれない。
未知のシグナルを探索するため、調査チームの半数は基地に残り、他の半数が地上車両で発信源を目指すことになった。たどり着くのは容易ではない。惑星の自転と軌道は不安定で、オーロラの発生源である極地帯を通らなければならないからだ。そこは強烈な電子嵐が吹き荒れ、通信が途切れるリスクも大きい。
出発してから三日目の夜、車両の通信装置に再びあの符号が流れ込んできた。しかも、これまでよりも鮮明で、かつ信号の強度が一定している。人類側の移動に合わせてシグナルが強まっているようにすら感じられた。まるで“何者か”がこちらを探り、導こうとしているかのようだった。
五日目の夕刻、車両は目的地と思われる地点に到着した。そこには巨大な結晶柱が何本も地面から突き出し、緑色のオーロラを反射してきらめいている。やがて強烈な放電光が走り、車両のモニターに無数の文字列が流れ出した。その一つひとつが、これまで受信してきた符号の断片と一致することが判明する。
「解読できないか?」
チームのエンジニアがすぐに端末に入力を開始する。すると、高度な数理アルゴリズムを経て、短い文章が浮かび上がった。
——ようこそ。我々はあなたたちを待っていた。——
一同は息をのんだ。この惑星に知的生命体が存在する可能性が高いと確信した瞬間だった。恐る恐る結晶柱へ近づくと、表面に薄く光る膜のようなものが走っているのが見えた。誰もが初めて見る未知のテクノロジーに戸惑いと興奮を隠せない。
「これは、メッセージの投影装置かもしれない。地球でいうホログラムのような……」
先ほどの一文に続き、さらに複雑な符号が走る。解読ソフトが再び動き、次々と浮かび上がる言葉に、人類は初めて“彼ら”の声を聞いた。
——この星はあらゆる音を、光として記録する。私たちはあなた方を歓迎する準備ができている。——
その瞬間、結晶柱の周囲にあった無数のオーロラが渦を巻き始め、調査チームは鮮やかな光の嵐に包まれた。リーダーの胸には、畏怖と同時に奇妙な安心感が広がっていた。やがて通信が基地へ復旧されると、結晶柱の内部に広がる未知の世界をすべて記録すべく、全人類が新たな一歩を踏み出す準備を始めるのだった。"""
text2 = """ ぼくは宇宙船に乗っていた。理由はよくわからない。とにかく、ここは狭い部屋がひとつあるだけで、窓は黒くて何も見えない。宇宙を旅しているはずだけれど、景色は真っ暗だ。食料もカプセルみたいな固いものばかりだ。あんまりおいしくない。
日常のほとんどは退屈だから、寝てばかりいる。ときどき目を覚ましてコントロールパネルを見るけど、赤や青のランプが意味もなく点滅しているだけで、何がどうなっているのかよくわからない。
船内のコンピュータと会話しようとしても、返事は「異常ナシ。航行中デス」としか言わない。何か異常があったらどうなるか、想像するのも面倒だから、そのまままた寝る。たまに重力の調整がうまくいかず、少しふわっとするけど、すぐに元に戻る。それだけだ。
ぼくは宇宙船で何をしているのか、本当によくわからない。たぶん地球に帰ることを目指しているんだろうけど、帰っても特別やることはないし、急ぐ理由も思いつかない。そういえば、いつ出発したのかも覚えていない。
ときどき通信が入ることがあるけれど、大抵は雑音だけだ。何を言っているかもわからないし、聞き返す気力もない。音声ログを再生しても「ザザ…」というノイズが続くだけで、最後に小さな声が聞こえるような気がするけど、結局意味が分からないから気にしない。
そんなわけで、今日はまた固いカプセル食をかじったあと、ぼくはベッドに倒れ込むようにして眠りについた。明日もまた同じ一日が続くと思うけれど、特に問題はない。どうせ闇しか見えない宇宙の中で、ぼくはただ一人だからだ。
宇宙って、こんなにつまらないものだったんだなと思いながら、ぼくは船内のランプが点滅するのをぼんやり眺める。それでも船はどこかへ向かって動いているらしい。目標があるのかどうかはよくわからない。"""
print(classifier([text1, text2]))
出力
[{'label': 'LABEL_0', 'score': 8.372932434082031}, {'label': 'LABEL_0', 'score': 6.732645034790039}]
学習データの関係で出力は0~10の範囲になる事が想定されますが、それを超えた外れ値が出力される可能性もあります。
✨ 主な機能
- 日本語小説の品質評価を行うことができます。
- 小説生成モデルの強化学習に利用できます。
📦 インストール
事前にtransformersやflash attention 2等をインストールしてください。
💻 使用例
基本的な使用法
from transformers import pipeline
import torch
model_name = "Aratako/Japanese-Novel-Reward-modernbert-ja-130m"
classifier = pipeline("text-classification", model=model_name, tokenizer=model_name, max_length=8192, truncation=True, device_map="auto", torch_dtype=torch.float32)
# 以下の例文はo1-proの生成文章です。
text1 = """ 地球から四光年先にある惑星シルヴァは、常に緑色のオーロラが大気を覆い尽くしている。大気組成はわずかに人類が呼吸できる水準に達しており、国際恒星探査チームは着陸後すぐに小規模な調査基地を設営した。まだ未知の生物や環境リスクが多く、常時防護服を着用することが義務付けられていたが、そこには他の惑星にはない神秘的な輝きがあった。
しかも、これまでよりも鮮明で、かつ信号の強度が一定している。人類側の移動に合わせてシグナルが強まっているようにすら感じられた。まるで“何者か”がこちらを探り、導こうとしているかのようだった。
五日目の夕刻、車両は目的地と思われる地点に到着した。そこには巨大な結晶柱が何本も地面から突き出し、緑色のオーロラを反射してきらめいている。やがて強烈な放電光が走り、車両のモニターに無数の文字列が流れ出した。その一つひとつが、これまで受信してきた符号の断片と一致することが判明する。
「解読できないか?」
チームのエンジニアがすぐに端末に入力を開始する。すると、高度な数理アルゴリズムを経て、短い文章が浮かび上がった。
——ようこそ。我々はあなたたちを待っていた。——
一同は息をのんだ。この惑星に知的生命体が存在する可能性が高いと確信した瞬間だった。恐る恐る結晶柱へ近づくと、表面に薄く光る膜のようなものが走っているのが見えた。誰もが初めて見る未知のテクノロジーに戸惑いと興奮を隠せない。
「これは、メッセージの投影装置かもしれない。地球でいうホログラムのような……」
先ほどの一文に続き、さらに複雑な符号が走る。解読ソフトが再び動き、次々と浮かび上がる言葉に、人類は初めて“彼ら”の声を聞いた。
——この星はあらゆる音を、光として記録する。私たちはあなた方を歓迎する準備ができている。——
その瞬間、結晶柱の周囲にあった無数のオーロラが渦を巻き始め、調査チームは鮮やかな光の嵐に包まれた。リーダーの胸には、畏怖と同時に奇妙な安心感が広がっていた。やがて通信が基地へ復旧されると、結晶柱の内部に広がる未知の世界をすべて記録すべく、全人類が新たな一歩を踏み出す準備を始めるのだった。"""
text2 = """ ぼくは宇宙船に乗っていた。理由はよくわからない。とにかく、ここは狭い部屋がひとつあるだけで、窓は黒くて何も見えない。宇宙を旅しているはずだけれど、景色は真っ暗だ。食料もカプセルみたいな固いものばかりだ。あんまりおいしくない。
日常のほとんどは退屈だから、寝てばかりいる。ときどき目を覚ましてコントロールパネルを見るけど、赤や青のランプが意味もなく点滅しているだけで、何がどうなっているのかよくわからない。
船内のコンピュータと会話しようとしても、返事は「異常ナシ。航行中デス」としか言わない。何か異常があったらどうなるか、想像するのも面倒だから、そのまままた寝る。たまに重力の調整がうまくいかず、少しふわっとするけど、すぐに元に戻る。それだけだ。
ぼくは宇宙船で何をしているのか、本当によくわからない。たぶん地球に帰ることを目指しているんだろうけど、帰っても特別やることはないし、急ぐ理由も思いつかない。そういえば、いつ出発したのかも覚えていない。
ときどき通信が入ることがあるけれど、大抵は雑音だけだ。何を言っているかもわからないし、聞き返す気力もない。音声ログを再生しても「ザザ…」というノイズが続くだけで、最後に小さな声が聞こえるような気がするけど、結局意味が分からないから気にしない。
そんなわけで、今日はまた固いカプセル食をかじったあと、ぼくはベッドに倒れ込むようにして眠りについた。明日もまた同じ一日が続くと思うけれど、特に問題はない。どうせ闇しか見えない宇宙の中で、ぼくはただ一人だからだ。
宇宙って、こんなにつまらないものだったんだなと思いながら、ぼくは船内のランプが点滅するのをぼんやり眺める。それでも船はどこかへ向かって動いているらしい。目標があるのかどうかはよくわからない。"""
print(classifier([text1, text2]))
高度な使用法
# 高度な使用法の説明はありませんが、コードはそのまま表示します。
from transformers import pipeline
import torch
model_name = "Aratako/Japanese-Novel-Reward-modernbert-ja-130m"
classifier = pipeline("text-classification", model=model_name, tokenizer=model_name, max_length=8192, truncation=True, device_map="auto", torch_dtype=torch.float32)
# 以下の例文はo1-proの生成文章です。
text1 = """ 地球から四光年先にある惑星シルヴァは、常に緑色のオーロラが大気を覆い尽くしている。大気組成はわずかに人類が呼吸できる水準に達しており、国際恒星探査チームは着陸後すぐに小規模な調査基地を設営した。まだ未知の生物や環境リスクが多く、常時防護服を着用することが義務付けられていたが、そこには他の惑星にはない神秘的な輝きがあった。
しかも、これまでよりも鮮明で、かつ信号の強度が一定している。人類側の移動に合わせてシグナルが強まっているようにすら感じられた。まるで“何者か”がこちらを探り、導こうとしているかのようだった。
五日目の夕刻、車両は目的地と思われる地点に到着した。そこには巨大な結晶柱が何本も地面から突き出し、緑色のオーロラを反射してきらめいている。やがて強烈な放電光が走り、車両のモニターに無数の文字列が流れ出した。その一つひとつが、これまで受信してきた符号の断片と一致することが判明する。
「解読できないか?」
チームのエンジニアがすぐに端末に入力を開始する。すると、高度な数理アルゴリズムを経て、短い文章が浮かび上がった。
——ようこそ。我々はあなたたちを待っていた。——
一同は息をのんだ。この惑星に知的生命体が存在する可能性が高いと確信した瞬間だった。恐る恐る結晶柱へ近づくと、表面に薄く光る膜のようなものが走っているのが見えた。誰もが初めて見る未知のテクノロジーに戸惑いと興奮を隠せない。
「これは、メッセージの投影装置かもしれない。地球でいうホログラムのような……」
先ほどの一文に続き、さらに複雑な符号が走る。解読ソフトが再び動き、次々と浮かび上がる言葉に、人類は初めて“彼ら”の声を聞いた。
——この星はあらゆる音を、光として記録する。私たちはあなた方を歓迎する準備ができている。——
その瞬間、結晶柱の周囲にあった無数のオーロラが渦を巻き始め、調査チームは鮮やかな光の嵐に包まれた。リーダーの胸には、畏怖と同時に奇妙な安心感が広がっていた。やがて通信が基地へ復旧されると、結晶柱の内部に広がる未知の世界をすべて記録すべく、全人類が新たな一歩を踏み出す準備を始めるのだった。"""
text2 = """ ぼくは宇宙船に乗っていた。理由はよくわからない。とにかく、ここは狭い部屋がひとつあるだけで、窓は黒くて何も見えない。宇宙を旅しているはずだけれど、景色は真っ暗だ。食料もカプセルみたいな固いものばかりだ。あんまりおいしくない。
日常のほとんどは退屈だから、寝てばかりいる。ときどき目を覚ましてコントロールパネルを見るけど、赤や青のランプが意味もなく点滅しているだけで、何がどうなっているのかよくわからない。
船内のコンピュータと会話しようとしても、返事は「異常ナシ。航行中デス」としか言わない。何か異常があったらどうなるか、想像するのも面倒だから、そのまままた寝る。たまに重力の調整がうまくいかず、少しふわっとするけど、すぐに元に戻る。それだけだ。
ぼくは宇宙船で何をしているのか、本当によくわからない。たぶん地球に帰ることを目指しているんだろうけど、帰っても特別やることはないし、急ぐ理由も思いつかない。そういえば、いつ出発したのかも覚えていない。
ときどき通信が入ることがあるけれど、大抵は雑音だけだ。何を言っているかもわからないし、聞き返す気力もない。音声ログを再生しても「ザザ…」というノイズが続くだけで、最後に小さな声が聞こえるような気がするけど、結局意味が分からないから気にしない。
そんなわけで、今日はまた固いカプセル食をかじったあと、ぼくはベッドに倒れ込むようにして眠りについた。明日もまた同じ一日が続くと思うけれど、特に問題はない。どうせ闇しか見えない宇宙の中で、ぼくはただ一人だからだ。
宇宙って、こんなにつまらないものだったんだなと思いながら、ぼくは船内のランプが点滅するのをぼんやり眺める。それでも船はどこかへ向かって動いているらしい。目標があるのかどうかはよくわからない。"""
print(classifier([text1, text2]))
📚 ドキュメント
学習のハイパーパラメータ
学習の主なハイパーパラメータは以下の通りです。
属性 | 详情 |
---|---|
learning_rate | 5e-05 |
train_batch_size | 8 |
eval_batch_size | 8 |
seed | 42 |
gradient_accumulation_steps | 2 |
total_train_batch_size | 16 |
optimizer | adamw_torch |
lr_scheduler_type | cosine_with_min_lr |
lr_scheduler_warmup_ratio | 0.1 |
num_epochs | 5 |
max_length | 8192 |
学習結果
train/valid/testにデータを分割し、valid lossが最小となるstepのモデルを採用しています。
- validデータに対する評価指標
- Loss: 1.3087
- Mae: 0.8516
- R2: 0.3592
- Pearsonr: 0.6119
- Spearmanr: 0.6000
- testデータに対する評価指標
- Loss: 1.2451
- Mae: 0.8403
- R2: 0.3130
- Pearsonr: 0.5931
- Spearmanr: 0.5922
- testデータに対する推論結果の分布
- 散布図
- 誤差の分布
📄 ライセンス
MITライセンスの元公開します。
Framework versions
- Transformers 4.49.0
- Pytorch 2.4.1+cu124
- Datasets 3.3.2
- Tokenizers 0.21.0
Phi 2 GGUF
その他
Phi-2はマイクロソフトが開発した小型ながら強力な言語モデルで、27億のパラメータを持ち、効率的な推論と高品質なテキスト生成に特化しています。
大規模言語モデル 複数言語対応
P
TheBloke
41.5M
205
Roberta Large
MIT
マスク言語モデリングの目標で事前学習された大型英語言語モデルで、改良されたBERTの学習方法を採用しています。
大規模言語モデル 英語
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERTはBERT基礎モデルの蒸留バージョンで、同等の性能を維持しながら、より軽量で高効率です。シーケンス分類、タグ分類などの自然言語処理タスクに適しています。
大規模言語モデル 英語
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instructは多言語大規模言語モデルで、多言語対話ユースケースに最適化されており、一般的な業界ベンチマークで優れた性能を発揮します。
大規模言語モデル 英語
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM - RoBERTaは、100言語の2.5TBのフィルタリングされたCommonCrawlデータを使って事前学習された多言語モデルで、マスク言語モデリングの目標で学習されています。
大規模言語モデル 複数言語対応
X
FacebookAI
9.6M
664
Roberta Base
MIT
Transformerアーキテクチャに基づく英語の事前学習モデルで、マスク言語モデリングの目標を通じて大量のテキストでトレーニングされ、テキスト特徴抽出と下流タスクの微調整をサポートします。
大規模言語モデル 英語
R
FacebookAI
9.3M
488
Opt 125m
その他
OPTはMeta AIが公開したオープンプリトレーニングトランスフォーマー言語モデルスイートで、パラメータ数は1.25億から1750億まであり、GPT-3シリーズの性能に対抗することを目指しつつ、大規模言語モデルのオープンな研究を促進するものです。
大規模言語モデル 英語
O
facebook
6.3M
198
1
transformersライブラリに基づく事前学習モデルで、様々なNLPタスクに適用可能
大規模言語モデル
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1はMetaが発表した多言語大規模言語モデルシリーズで、8B、70B、405Bのパラメータ規模を持ち、8種類の言語とコード生成をサポートし、多言語対話シーンを最適化しています。
大規模言語モデル
Transformers 複数言語対応

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
T5ベーシック版はGoogleによって開発されたテキスト-to-テキスト変換Transformerモデルで、パラメータ規模は2.2億で、多言語NLPタスクをサポートしています。
大規模言語モデル 複数言語対応
T
google-t5
5.4M
702
おすすめAIモデル
Llama 3 Typhoon V1.5x 8b Instruct
タイ語専用に設計された80億パラメータの命令モデルで、GPT-3.5-turboに匹敵する性能を持ち、アプリケーションシナリオ、検索拡張生成、制限付き生成、推論タスクを最適化
大規模言語モデル
Transformers 複数言語対応

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-TinyはSODAデータセットでトレーニングされた超小型対話モデルで、エッジデバイス推論向けに設計されており、体積はCosmo-3Bモデルの約2%です。
対話システム
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
RoBERTaアーキテクチャに基づく中国語抽出型QAモデルで、与えられたテキストから回答を抽出するタスクに適しています。
質問応答システム 中国語
R
uer
2,694
98