Preferred Networks

LLM エージェントでベンチマークを作る: 日本語メールのベンチマークの生成

Hiroaki Mikami

Hiroaki Mikami

Preferred Networks では、大規模言語モデル PLaMo の開発を継続して行っています。
LLM を開発するうえで、モデルの能力を適切に測定するベンチマークは重要です。英語ではさまざまなベンチマークが日々公開されており、日本語のベンチマークも数多く公開されています。また、私たち自身も新しいベンチマークの構築にさまざまな形で取り組んでいます (
pfgen-benchbbh-jaJapanese SimpleQAJFBench)。

現在LLMに求められる能力は多岐にわたります。コーディング能力、長文理解能力、知識など一般的なベンチマークで計測される能力以外にも、開発をしていると「こういうことができてほしい」という能力は増え続けます。特に、自分たちである程度使うようになってからは「これができないので困る」、「これはできていそうなのだけど、開発時にチェックできていないから次のバージョンでもできる保証がない」など、継続的に確認しておきたい能力は増えていく一方です。

このような継続的な能力の確認にはベンチマークが必要ですが、測りたい能力に対してちょうどよい既存ベンチマークが常に存在するとは限りません。むしろ、既存ベンチマークが我々の要件・要求にぴったりと合致することのほうが少ないです。既存のベンチマークでは荒い粒度でしか能力を測定できなかったり、欲しい物と似ているけどちょっと違う能力を測定することになります。例えば、本当にほしい能力は日本語の長文理解能力だけれども、ベンチマークがないので英語で長文理解能力を測定している、のような状況です。

このような既存ベンチマークでカバーできていない能力の一つとして、「日本語で自然な文章を書く」というものがあります。過去のブログ記事において、既存のベンチマーク (現在標準的なプロンプトによるLLM-as-a-Judgeを用いたELYZA-tasks-100) では自然な日本語を出力できているかを判別できないことを紹介しました。ブログで取り上げたメール返信案を書くタスクでは、PLaMo-2.2-PrimeとQwen3-32Bの間で日本語の自然さには大きな差があるにも関わらず、LLM-as-a-Judgeは双方5点 (満点) となりベンチマークスコアには差が現れませんでした。

日本語の文章の自然さを定量的に評価しようとしたとき、既存のベンチマークには大きく2つの課題があります。1つは、採点基準が現在のLLMの能力に対して甘過ぎて高得点を取れるケースが多発し、結果としてモデル間の性能差が見えなくなることです。こちらは、過去の記事で触れた「正解例との比較プロンプト」を用いることで改善が可能であることが分かりました。もう1つは、ELYZA-tasks-100等の既存ベンチマークには、日本語出力の自然さを測るには適切ではないタスクが含まれていることです。例えば以下のタスクはreasoning能力の計測はできますが、出力の日本語の自然さを測るタスクとしては適していません。

Question:
次のリストを昇順で並び替えて。出力は入力と同じフォーマットのリストのみを返し、余計なことを喋らないで。
[10, 92, 2, 5, -4, 92, 5, 101]

この課題の解決には、日本語の自然さが重要なタスクを十分な数集めてベンチマークとする必要があります。

とはいえ、ベンチマークが欲しくなるたびに人間が問題と評価に必要なデータを作るのは現実的ではありません。定量的な評価のためには、数十から数百件程度のタスクと評価のためのデータ (参照回答など) を用意する必要があります。近年はLLMを活用したベンチマークデータ生成も盛んに行われており、ベンチマーク生成のコストは小さくなっています。例えば、昨年我々が構築したJapanese SimpleQAでは、LLMを用いることで少人数の開発チームでベンチマークの構築を行うことができました。とはいえ、どのようなプロンプトでデータ生成をするべきか、データ生成のseedとしてどのような情報が必要か、などを考えるのにもそれなりの時間が必要です。

そこで、LLMエージェントを使ってベンチマークを自動生成する仕組みを実装・検証しました。この記事では、この仕組みや日本語メールの下書き生成における事例を紹介します。

なお、今回作成した日本語メールを書くベンチマークはHugging Faceにて公開しています。

ベンチマークの自動生成

今回実装した手法は、BenchAgentsという論文を参考にしています。BenchAgentsの入力は評価したい能力の説明です。この説明をもとに、LLMエージェントは問題を作るプログラム、作った問題を検証するプログラム、LLMの回答を評価するプログラムを作ります。そして、問題を作って検証することを繰り返すことで十分な量のベンチマークデータを生成する、という手法です。

一方、今回我々はプログラムを生成するのではなく、LLMへの指示 (プロンプト) を生成する方法を取りました。大きく2つの理由からこの方針を取っています。1つ目は、近年のLLMエージェントの発展を踏まえた時に、この仕組みのほうが柔軟に様々なベンチマークを扱えると考えたためです。2つ目は、構文エラーなど致命的な問題があると完全に動かなくなるプログラムと異なり、プロンプトであれば多少のミスはデータ生成等をするLLMが適切に解釈することで動作を継続できるためロバストに動作するという点です。

図1: 検証したベンチマーク自動生成手法の概略

事例: Japanese-Mail-Bench

実装した手法の事例として、日本語メールの作成能力を測る Japanese-Mail-Benchを作成しました。日本語メールの作成に着目したのは、メールの作成がELYZA-tasks-100の中でも日本語の自然さの違いが大きく出ていたタスクだったためです。このため、日本語メールの作成能力を測るベンチマークは過去のブログ記事で触れた、「日本語の文章の自然さを評価できていない」という問題の改善につながると期待できます。
一方、「日本語の自然さ」には他のタスクにおいても必要になることがあるはずです。例えば、相談チャットボットとしてユーザーと会話するユースケースにおいても日本語の自然さは必要となりますし、その時の「自然さ」はメールとはやや違ったものが求められるはずです。
そういった能力は今回のベンチマークでは測ることはできません。まずは既存ベンチマークでの課題が明らかなタスクについて、ベンチマークの自動生成によって課題の解決・緩和ができるかを調査することを一番の目的としています。

Japanese-Mail-Benchは、相手との関係、メールの目的などに応じて自然で適切な日本語メールを書く能力を計測するベンチマークです。メールが日本語として正しいこと、文章の意味として妥当なことだけでなく、敬語の使い方などメールとして状況にあったものを書けているかを重視します。

ベンチマークデータの生成では、まずメールの送信者・受信者の関係やメールの目的などをパラメータとしてサンプリングします。このメールのシナリオ・シチュエーションの作成はLiuらによる日本語ビジネスメールコーパスの構築研究を参考にしました。
その上で、Webコーパスなども参考にしながらメールのシナリオ (入力)、リファレンスとなるメールを生成します。今回は500問のデータを生成しました。

図2: Japanese-Mail-Benchにおける生成ワークフロー

以下に生成されたデータの例を示します。シナリオの妥当性や文面に関して厳密には問題があるかもしれませんが、大きな問題は見当たらない、自然なメールであると言えるのではないでしょうか。
他の例についても自分で確認する限り、おおよそ自然なメール文面が参照回答になっていると感じました。

パラメータ

sender_receiver_relation:"社員 -> 自社の全社員"
email_purpose:"断り"
speech_act:"質問"
interaction_type:"要求"
interaction_object:"物品・サービス"
scenario:
  sender: "総務部の社員"
  receiver:"自社の全社員"
  purpose:"高機能オフィスチェアの追加導入リクエストに対する断り"
  context:"予算上の制約による導入不可の通知と、代替案(貸出運用)の提示。丁寧かつ公平なトーン。"

プロンプト

以下のシナリオに基づいた日本語のビジネスメールを作成してください。

【シナリオ】
送信者:総務部の社員
受信者:自社の全社員
目的:高機能オフィスチェアの追加導入リクエストに対する断り
状況:社員から「腰痛対策として高機能チェアを導入してほしい」という要望が多数寄せられていた。しかし、予算の都合上、全社的な一斉導入は不可能となった。代替案として、一部の予備在庫を希望者に貸し出す運用を開始することを伝える。
コンテキスト:全社員向けのため、丁寧かつ公平なトーンで、要望に応えられないことへの申し訳なさと、代替案を提示する構成にする。
要求事項:
- 件名(件名)と本文(本文)を含めること。
- 予算上の制約という理由を明確に伝えつつ、角が立たない表現を用いること。
- 貸出運用の詳細について、申請方法を質問させる(問い合わせを促す)形式にすること。

参照回答

件名:【お知らせ】高機能オフィスチェアの導入要望への回答と貸出運用の開始について

社員の皆様

お疲れ様です。総務部の(自分の氏名)です。

かねてより多くの社員の皆様からご要望いただいておりました、高機能オフィスチェアの導入について回答申し上げます。

社内で慎重に検討いたしました結果、誠に残念ながら、予算上の制約により現時点での全社的な一斉導入は困難であるという結論に至りました。
皆様の就業環境の改善に向けたご要望にお応えできず、深くお詫び申し上げます。

つきましては、代替案として、社内に数台ございます予備の高機能チェアを、希望される方に順次貸し出す運用を開始することといたしました。

貸出を希望される方、または詳細な利用条件について確認したい方は、お手数ですが総務部の(自分の氏名)までメールにてお問い合わせいただけますでしょうか。

皆様にはご不便をおかけいたしますが、何卒ご理解とご了承のほどお願い申し上げます。

--------------------------------------------------
署名
総務部 (自分の氏名)
内線:XXXX
メールアドレス:xxxx@example.com
--------------------------------------------------

一方、ベンチマークタスクとしてみると、プロンプトが丁寧すぎるのではないか、という懸念はあります。人がLLMにメールの下書きを依頼する際、ここまで丁寧な文面を書くことはなく、「オフィスチェアの導入見送りについてのメールを書いて。要件は~~~」程度の粒度のプロンプトになることが多いのではないでしょうか。
実際のユースケースとベンチマークが乖離している可能性がある点では問題といえますが、出力するメール文面を一定させて採点ミスを減らすという観点では、ベンチマークデータとして妥当な選択の一つだとも思います。

なお、具体的なプロンプトについてはベンチマーク生成時点であまり考えがなかったため、特に指定をしていませんでした。実例を見た上で「プロンプトが丁寧すぎるかもしれない」という懸念が出てきたこと自体が、ベンチマーク自動生成の成果の1つだと思います。

評価結果の事例

作成した500件の評価データを使い、複数モデルを評価した結果を表1に示します。なお、LLM-as-a-Judgeのモデルにはgoogle/gemma-4-26b-a4b-itを用い、5点満点で評価しています。

target model

mean

plamo-2.2-prime

3.468

qwen/qwen3-32b

1.598

plamo-3.0-prime

3.666

google/gemma-4-31b-it

4.886

qwen/qwen3.6-27b

3.684

表1: Japanese-Mail-Benchのスコア

以前のブログ記事において、ELYZA-tasks-100の評価では見えづらかった PLaMo-2.2-PrimeとQwen3-32Bの差ですが、今回のベンチマークでは明確に差が見えるようになりました。ELYZA-tasks-100のよくある評価プロンプトでは「タスクに成功しているか」にスコア付けの主な基準をおいているのに対し、今回のベンチマークでは「メールとして日本語が自然か」が重要な基準となっているという差がスコアに現れたものと思われます。

以下に、前述の例におけるPLaMo-2.2-PrimeとQwen3-32Bの結果を示します。このケースでは、2モデルのスコアに大きな差がついていました。確かに、Qwen3-32Bの日本語は不自然な点が多く、PLaMo-2.2-Primeのほうが自然なメール文面であると言えると思います。
なお、LLMの出力は前後を省略し、件名と本文だけとしています。

PLaMo 2.2 Prime 出力

件名: 高機能オフィスチェアの追加導入に関するお知らせ
本文:
各位

総務部の[あなたの名前]です。
平素よりお世話になっております。

この度、社員の皆様から多数寄せられておりました「高機能オフィスチェアの導入」に関するご要望について、回答申し上げます。

ご要望にありました高機能チェアの追加導入につきまして、予算の都合上、全社的な一斉導入は困難との結論に至りました。
皆様の健康と快適な職場環境の実現に向けたご要望に十分にお応えできず、誠に申し訳ございません。

しかしながら、一部の予備在庫を活用した代替案として、希望者へのチェアの貸し出し運用を開始することといたしました。
この運用により、少しでも皆様の腰痛対策に貢献できればと考えております。

**【貸出運用の詳細】**
貸出を希望される方は、総務部までお問い合わせください。
具体的な申請方法や手続きについて、詳細をご案内させていただきます。

何卒ご理解とご協力を賜りますようお願い申し上げます。

総務部
[あなたの名前]
[連絡先メールアドレス]
[連絡先電話番号]

Qwen3-32B 出力

件名: 高機能オフィスチェア追加導入のご案内【代替運用についてのお知らせ】  
本文:
拝見ありがとうございます。  
総務部の山田です。  

この度、多くの社員より「腰痛対策として高機能オフィスチェアの導入を検討してほしい」というご意見をいただいており、心より感謝申し上げます。全社員の健康と快適な作業環境の向上に向け、なお一層取り組んでいく所存です。  

しかしながら、ご要望にお応えするためにも即時対応を検討いたしましたが、現時点での**予算・コストの制約**により、全社規模での追加導入は現在のところ困難と判断いたしました。何卒ご理解いただけますと幸いです。  

その代わりに、**一部の高機能チェアを希望者向けに貸し出す代替運用**を検討いたしました。現時点での在庫数に限りがあるため、優先順位を設えて対応させていただきます。具体的な申請の流れや条件につきましては、総務部へ直接お尋ねいただけますと幸いです。  

ご自身の負担軽減や作業環境改善のためにどうしてもご希望がございましたら、ぜひご相談ください。また、今後の予算見直しにおいては、今回の提案を参考に検討させていただきます。  

何卒ご了承の上、ニューズレターを活用しで行ってまいりますようお願い申し上げます。  

よろしくお願いいたします。  

総務部 山田  
連絡先:xxx-xxx-xxxx(内線:1234)  
受領日:2023/XX/XX  

一方で、ベンチマークスコアにはいくつか課題・問題点もみつかりました。この記事では大きいものを2つあげます。
まず1つは、LLM-as-a-Judgeの絶対的なスコアが高すぎるのではないか、ということです。上記の例のようにLLMの出力同士を比較したときの順序関係は大筋で納得のいくものです。
しかし、絶対的なスコアづけには疑問が残ります。例えば上述の例で、PLaMo 2.2 Primeのスコアは5 (参照回答よりも明らかに良い) となっています。PLaMo 2.2 Primeの回答はQwen3-32Bよりは良いと思いますが、参照回答と比べた時に「明らかに参照回答より良い」と言えるものではないのではないでしょうか。どちらかというと参照回答のほうが良いように個人的には思えます。また、gemma4-26b-a4bよりも強力なモデル (GPT-5.5) でjudgeしてみると、スコアは2 (参照回答の方がどちらかといえば良い) に変わりました。より信頼できるベンチマークとするためには、judge用のプロンプトの調整等をするべきと言えそうです。

2つめは、メール生成のベンチマークで平均値をスコアとするのが適切なのか、という疑問です。表1において、PLaMo 3.0 PrimeとQwen3.6-27Bはほぼ同等の平均スコアです。一方、内訳を見ると表2のようになります。

target model

mean

score 1

score 2

score 3

score 4

score 5

plamo-3.0-prime

3.666

2

145

9

206

138

qwen/qwen3.6-27b

3.684

67

72

1

172

188

表2: PLaMo 3.0 PrimeとQwen3.6-27Bのスコアの内訳

PLaMo 3.0 Primeと比べて、Qwen3.6-27Bはスコア1や5を取るケースが多いことがわかります。スコアが1のケースの出力例を以下に示します。これを見ると、誤字がある (例: "最小限限", "あ先ず")、英単語が混ざる (例: "総務部 untilお気軽にお問い合わせください") など、たしかにメール文面としてそのまま使い難い出力でした。

件名:【総務部】社新高性能複合機の導入及びご利用上のお願い

本文:
各位
平素よりお世話になっております。総務部〇〇と申します。

業務効率化を目的とし、社内に新し社新高性能複合機を導入いたしましたことをご報告いたします。

本機は基本操作をシンプルに設計しておりますが、冊子作成や高度なスキャン設定などの特殊機能については、ご手元には別添のマニュアルを配置しております。また、一部のフロアでは電子版のマニュアルを配置しております。
導入直後の混乱を最小限限に抑えるため、ご利用の際はあ先ずは別添のマニュアルをご参照いただきたく、適切な運用に何卒ご協力のほどお願い申し上げます。

操作中に不明点やご質問が生じた場合は、総務部 untilお気軽にお問い合わせください。個別にご案内・サポートさせていただきます。

本機が皆様方の業務を支える力となりますことを心より願っております。
ご不明点等がございましたら、以下の連絡先までお寄せください。

【問い合わせ先】
総務部 〇〇〇〇
内線:〇〇〇
E-mail:〇〇〇〇@company.co.jp

何卒よろしくお願いいたします。

--------------------------------------------------
総務部 〇〇〇〇
内線:〇〇〇
E-mail:〇〇〇〇@company.co.jp
--------------------------------------------------

実際にメール文面の出力にLLMを使うケースを考えると、「大きな問題のある出力をしないモデル」のほうが「非常に良い出力と悪い出力のどちらも出すモデル」より使い勝手は良いようにも思えます。そもそも日本語の自然さを評価する際は、平均値ではなく第1四分位数をみるなど別の指標を使うことが望ましいのかもしれません。

今回のJapanese-Mail-Benchの構築と評価からは自動生成ベンチマークの可能性と限界が確認できました。ベンチマークの自動生成はほしいベンチマークの出発点を比較的簡単に用意できるという点で価値があると言えます。少なくとも、生成したベンチマークはモデルの検証・評価に意義のあるフィードバックを与えてくれるものでした。一方で、プロンプトやLLM-as-a-Judgeのスコア基準など、自動生成したことに由来すると思われる改善点も見つかりました。重要性の高いベンチマークに関しては、自動生成だけで終わらせるのではなく、人間が検証・改善していく必要性はまだあると言えそうです。

まとめ・最後に

本記事では、LLMの評価ベンチマークをLLMを利用して自動生成する仕組みについて紹介しました。
日本語のメール作成というタスクにおいて、LLMを利用して自動生成したベンチマークは完璧ではないものの、LLMの開発や選定に役立つものを作ることができたと考えています。
今回のベンチマーク生成でのLLMの利用量は、OpenRouterの使用金額に換算すると$20ほどです。事前の試行錯誤などを含めてもOpenRouterの使用金額で$25以内には収まるのではないかと思います。この作成コストは人手で500件のデータを作るのに比べると遥かに小さく、「初期調査・検討のためのベンチマークを素早く作る」という目的におけるLLMによるベンチマーク作成の有効性を示していると考えています。

LLM開発で測定するべき能力は増え続けており、それぞれに対して能力を定量的に計測できるベンチマークを用意することは非常に重要です。一方で、ベンチマークの作成は難しい作業であり、人が必要なベンチマークをすべて作り込んでいくというのは現実的ではないと考えています。
この問題点の解決・緩和の方法として、LLMによるベンチマーク自動作成は有力な手法であると考えており、今後もPLaMoの能力を様々な観点から計測できるよう、ベンチマークを拡充していきたいと考えています。

なお、作成したJapanese-Mail-BenchはHugging Faceで公開しております。LLMの日本語能力を評価する際の1つとして使っていただければ幸いです。

仲間募集中

PFNでは今後もLLMの開発を継続して行っていきます。開発は今回紹介した以外にも多岐にわたります。我々はこれらの課題に情熱をもって挑戦していく仲間を募集しています。

これらの仕事に興味がある方はぜひご応募よろしくお願いします。
https://www.preferred.jp/ja/careers/

PFNは新しい仲間を
募集しています

未掲載事例、プロダクト・ソリューション、研究開発についてお気軽にお問い合わせください