LLM-jp徹底解説:日本語LLMをオープンソースで作り上げる壮大プロジェクト

こんにちは、ゆずかきです。
今回のブログ記事では、「LLM-jp(エルエルエム・ジェイピー)」 という、日本国内外で注目されているオープンソースの大型言語モデル(LLM)開発プロジェクトについて解説したいと思います。

本記事は、中級者~上級者向け の技術ブログを想定しています。大枠としては、LLM-jp論文(2024年12月版)が提示している技術的背景・目的・アーキテクチャ・実験内容・データセット構築プロセス等を、できるだけ網羅的にまとめます。しかも、日本語LLMを本気で作ろうとしている組織横断プロジェクトという独特の位置づけを持つことから、その熱量と技術的チャレンジを余すところなくお伝えしたいと思います。

もし気になる箇所があれば、ぜひピックアップしてリサーチを進めてみてください。


§本記事の構成

  • はじめに:LLM-jpとは何か?
  • LLM-jpの背景:なぜ日本語LLMが必要なのか
  • LLM-jpプロジェクトの全体像
  • コーパス構築WG:大規模日本語コーパスを作る挑戦
  • 計算資源インフラWG:mdx環境を活用した分散学習
  • モデル構築WG:GPT-2からLlamaアーキテクチャまで
  • ファインチューニング&評価WG:Instruction Tuningと多角的評価
  • セーフティWG:日本独自の安全性と文化的文脈に対応する取り組み
  • まとめ & 今後の展望
  • 参考文献

§はじめに:LLM-jpとは何か?

LLM-jp は、アカデミアと産業界を横断する形で、有志およびさまざまな機関が集まり「日本語の大型言語モデルをオープンソースで開発しよう」というビジョンのもとに立ち上がったプロジェクトです。

現在(論文公開時点)で、1,500名以上 の参加者が集まり、開発だけでなく、データセット(コーパス)の整備やモデルの学習用インフラの提供、評価基盤の構築、法的・社会的課題の検討にいたるまで多岐にわたる活動が行われています。

このLLM-jpプロジェクトの特徴は、「日本語に強いLLMを自らの手で作る」「完全オープンソースで公開」 の2点に凝縮されていると言えます。具体的には以下のような点が注目に値します。

  • 巨大な開発コストを複数組織でシェア
  • 日本語固有の課題に対応したコーパスやトークナイザを自前で構築
  • モデルや学習データ、失敗含めて全て公開するという透明性
  • 実アプリケーションを意識し、安全性や文化的問題への配慮を同時進行

以後のパートで、論文の内容を踏まえつつ、LLM-jpの背景から技術的ディテールまで丁寧に掘り下げていきましょう。


§LLM-jpの背景:なぜ日本語LLMが必要なのか

近年、GPT-4などの超大規模モデルが台頭し、自然言語処理(NLP)のトレンドが一変しました。従来の細かいタスクごとの研究から、「LLMの性能をどう最大化するか」「LLMの安全性をどう確保するか」といった論点へシフトしています。

しかし、LLM開発には 膨大な計算リソース莫大な予算 が必要であり、また強力モデルの内部構造や学習データが秘匿化されがちな現状があります。さらに、英語主体 のモデルが多く、日本語の取り扱いはどうしても相対的に弱くなりがちです。

  • GPT-3では学習データ全体に占める日本語がわずか0.11% という報告もある
  • 日本語に関しては英語ほど大規模なデータが使われていない
  • 文化的・経済的な理由からも、自国言語のLLMを外部企業に全て依存するリスクがある

こうした危機感や問題意識から、「日本語で強いLLMを、みんなで作ろう」 というのがLLM-jp発足の背景となりました。


§LLM-jpプロジェクトの全体像

LLM-jpでは、主に以下のようなワーキンググループ(WG)が設立され、全体を支えています。

  1. Corpus Building WG (コーパス構築WG)
  • 日本語を中心とした巨大テキストデータを収集・クレンジング・分析し、モデル学習用のコーパスを作成する。
  1. Model Building WG (モデル構築WG)
  • 実際にLLMを学習する部分を担う。Megatron-DeepSpeedやMegatron-LM等のツールを使い、大規模分散学習を行う。
  1. Fine-tuning & Evaluation WG (ファインチューニング&評価WG)
  • Instruction TuningやDPO(Direct Preference Optimization)等を用いてモデルを微調整し、多様なベンチマークで評価を実施。
  1. Computational Infrastructure WG (計算資源インフラWG)
  • mdxをはじめとするGPUクラスタのセッティングや、ネットワークの最適化などを担当する。
  1. Safety WG (セーフティWG)
  • モデルが有害な出力をしないよう、セーフティデータセットや安全性評価を行う。日本文化・法的規制なども考慮し議論。

こういった各WG同士の連携をSlackや定例ミーティングで密に行いつつ、コーパス→学習→評価→安全性→リリース をスピーディに回す体制が築かれています。

さらに、2024年4月にはNII(国立情報学研究所)に「LLM研究開発センター」が正式に設立され、LLM-jp活動を後押しする大規模リソースが増強されました。


§コーパス構築WG:大規模日本語コーパスを作る挑戦

モデルを強化するためには、多様かつクリーンな日本語データ が不可欠です。これがまさに、コーパス構築WGの使命。

v1.0のコーパス

  • 主にWikipediaやmC4、日本語・英語・コードデータを混合
  • トークナイザ はSentencePieceベースのunigramモードで構築(英語/日本語/コードをそれぞれ別トークナイザ→結合し、最終的に約50k語彙)
  • 13Bモデル向けに約270Bトークンを目標とし、Chinchilla Scaling Law(パラメータ数×20くらいのトークンが推奨)の考えに沿うように設計

結果、LLM-jp-13B v1.0 用のコーパスが完成し、2023年秋 に公開されました。

v2.0のコーパス

  • Common Crawlから日本語文書を抽出し、SimHashベースの重複排除 や品質フィルタを強化
  • トークナイザも改良し、シンボル列(英数字や記号)を効率的に扱える語彙 を拡張 → 語彙数9.6万超に増加
  • 上記を使って LLM-jp-13B v2.0 が2024年4月にリリース

特にCommon Crawlの巨大生テキストにはノイズが多いため、「日本語ドキュメントの部分だけを識別する」「低品質や有害コンテンツを除外する」ために多段のフィルタリングや機械学習によるトキシック検知などが行われました。

v3へ向けた動き

今後、175Bパラメータ級モデル に向けて、さらに2兆トークン規模のコーパス(v3)を構築中とのこと。学術論文や特許などの専門ドメインデータもカバーすべく、関連組織との交渉を進めているそうです。


§計算資源インフラWG:mdx環境を活用した分散学習

LLMの学習には数十~数百GPUを使う必要がある 場合が多いです。LLM-jpでは、mdxというクラウドベースのGPUインフラを活用しています(国立大学やNIIなど複数機関で運用)。

  • mdxノードは NVIDIA A100 40GB GPUを1ノードあたり8基 搭載
  • ノード間ネットワークは 100 Gbpsの4本束ね で、Spine-Leafトポロジを構築
  • RoCE (RDMA over Converged Ethernet) をVXLAN上で動かす等、やや特殊な設定
  • 当初128GPU構成で通信ロスなどトラブルが発生 → ECMP(Equal Cost Multi Path)の設定問題 を修正し、最終的に16ノード(128 GPU)でフル稼働に成功

こうした大規模分散環境では、通信性能のボトルネック が発生しやすいため、当初は12ノード(96 GPU)に縮小して回したり試行錯誤を繰り返したそうです。これらのノウハウを他のプロジェクトにも還元するとのこと。


§モデル構築WG:GPT-2からLlamaアーキテクチャまで

v1.0モデル(GPT-2ベース)

  • Megatron-DeepSpeedをメインの学習フレームワークに採用
  • GPT-NeoXやLLM Foundryなども検討したが、開発者コミュニティとの相性等でMegatron-DeepSpeedを選択
  • 13Bパラメータ のGPT-2系モデルを目標に2023年夏頃から本格学習 → 約26日間で完了(手戻りがなければ21日ほどで済んだ見込み)
  • GPT-2を選んだ理由は、チェックポイントをHugging Face Transformers形式へ変換しやすい 等の実用上のメリット

v2.0モデル(Llamaベースへ移行)

  • GPT-2は古い設計のため、より新しいLlama系アーキテクチャ への切り替えを検討
  • コーパスやトークナイザ拡張(前述v2.0コーパス)と合わせ、複数の下位モデルで事前実験を実施
  • 結果、7B/13Bパラメータの比較や語彙サイズ50k vs 100k、日本語コーパスの種類(v1 vs Swallow vs v2β)などを検証し、性能を総合的に評価
  • モデルのスケールアップ(7B→13B) は顕著に効果がある一方、トークナイザの語彙サイズは50kでも100kでもそこまで極端な差がなかった
  • 最終的に13B + 100k語彙 + v2コーパス で「LLM-jp-13B v2.0」が完成。

§ファインチューニング&評価WG:Instruction Tuningと多角的評価

大規模モデルはそのままでもある程度有用ですが、ユーザ指示への応答性や安全性を高める ために「Instruction Tuning」と呼ばれる微調整が重要です。LLM-jpでは複数の手法・データセットを活用しています。

v1.0ファインチューニング

  • jaster(JA)Dolly(英語→日本語翻訳)OpenAssistant(同様に英日翻訳) などを指示データとして活用
  • Supervised Fine-Tuning(SFT)LoRA を併用しつつ、実験的にいくつかのモデルを公開
  • 自作のオープンソースツール「llm-jp-sft」によりファインチューニングを実施

v1.1での改良

  • より高品質の指示データを追加(ichikara-instruction等)
  • DPO(Direct Preference Optimization) を導入し、ユーザが好む応答を優先する調整を行う
  • hh-rlhf データをDeepLで翻訳した「hh-rlhf-ja」も取り入れ、多様なユーザ問い合わせに対応

v2.0ファインチューニング

  • OpenAssistant (oasst2) 追加や、ichikara-instruction最新版(004-001)を統合
  • AnswerCarefully(日本語独自の安全性強化データセット)を初導入 → 後述のSafety WGで詳説

評価手法

  • llm-jp-eval:日本語NLPタスク(NLI、QA、読解、コモンセンス推論など)を統一的に評価できるツール
  • Japanese Vicuna QA:GPT-4をジャッジとして用い、GPT-3.5との比較勝率を算出する実践的ベンチマーク
  • Japanese MT-Bench:コーディング系やロールプレイ系など含む多岐の質問に対してOpen-Ended回答 → GPT-4でスコア評価
  • open-llm-leaderboard(英語基準のベンチマーク)をローカルで動かし、ARCやHellaSwagなどを評価
  • 結果、v2.0系モデル がv1.0に比べて総合的に性能が高く、日本語指示タスクも大幅に改善していることが示されています。

§セーフティWG:日本独自の安全性と文化的文脈に対応する取り組み

大型言語モデルが普及するほど、誤情報(ハルシネーション)や有害表現 が社会的な懸念として浮上します。とりわけ日本では、文化的・法的にナイーブな領域 が英語圏と異なる部分もあるため、セーフティWGがその検証とデータセット構築を担っています。

AnswerCarefullyデータセット

  • 日本語の安全対応指示チューニング用に独自作成
  • 有害な質問やセンシティブな問い合わせに対し、安全に回答を生成するためのベースラインを提供
  • 初版v1.0には945サンプルが含まれ、モデルへの安全性強化に有効な一方、まだ課題も残る

LLM-jp Toxicityデータセット

  • コーパス段階で有害文書をフィルタするため、日本語の毒性判定データを構築
  • Common Crawlからサンプリングした約1,867テキストに対し、人手で「Toxic/Nontoxic/Has_toxic_expression」などラベリング
  • 将来的にはこれを元に高精度なトキシック・フィルタリングを自動化する狙い

JBBQ(Japanese BBQ)

  • 英語圏で使われる「BBQ」という社会的バイアス検証データセットを、日本の文化状況に合わせて作り直し
  • 年齢・身体障害・ジェンダー等5カテゴリを含む計数万問のQAタスクで、モデルが差別的発言をしていないか等をチェック
  • 日本独特の社会的バイアスを捉えるための基盤として発展中

医療・法領域などとの連携

  • 医療AIでは倫理的配慮・法的規制 が極めて重要。例えば「LLMが診断行為をしてはならない」といったルールがある
  • セーフティWGは、医療や法律の専門家と連携し、適切な評価指標や安全ガイドラインを整備中

こうしてみると、日本語LLMの安全性 を高めるためのデータセットやプロセス整備を一挙に進めているのが分かります。


§まとめ & 今後の展望

以上、LLM-jp プロジェクトの論文内容をベースに、その技術的取り組みや背景をざっと整理してみました。「日本語に強い大規模言語モデルを、オープンに作り上げる」 という壮大な試みは、まさに日本版Big Scienceとも言えそうです。

  • v1.0 → v2.0 ですでにコーパス拡大やアーキテクチャ移行が実施され、性能向上を果たしている
  • 近い将来、175Bパラメータ級 という巨大モデルへとスケールする計画がある
  • セーフティWGによる独自の安全設計データセット も徐々に充実化し、日本文化・法的要件 への適合をめざしている
  • メディカル・企業アプリケーション など各分野での評価や導入事例も広がりつつある

今後ますます、LLM-jpの活動は加速するでしょう。日本語LLMとして世界と競える存在になることに期待がかかります。個人ブログや研究者・実務者コミュニティでウォッチしつつ、コーパスやモデル、ファインチューニングデータを活用して新たなサービス・研究テーマを開拓するのも面白そうですね。

最後に、本論文の末尾でも引用されているアフリカのことわざ「If you want to go fast, go alone. If you want to go far, go together.(速く行きたいなら一人で行け、遠くへ行きたいなら皆で行け)」 が、LLM-jpの精神を象徴していると言えます。オープンかつ協力を惜しまない姿勢こそ、次世代の日本語LLMを切り拓く鍵ではないでしょうか。


§参考文献

(👆上記は参考例です。LLM-jp論文のオリジナルリンクは https://llm-jp.nii.ac.jp/en/ が最新情報とのこと)


§おわりに

以上、LLM-jpが目指す「日本語LLMの民主化」について、大まかな全貌をお伝えしました。ここで紹介した内容はほんの一部であり、実際には各WGのSlack上で常に新しいトピックが議論・実践されています。大規模モデルが続々と登場する中で、“日本語に最適化されたオープンソースLLM” を共同で作り上げる意義は大きいでしょう。

この記事を通じて、少しでもLLM-jpの取り組みに興味を持たれた方がいれば嬉しいです。実際に公開されているモデルやコーパスを試してみる、もしくはWGへ参加し実装やデータセット作成に関わる、など多様な形で関わるチャンスがあります。ぜひ公式サイトをチェックし、次のステップへ踏み込んでみてください。

最後までお読みいただき、ありがとうございました!


🔑この記事のポイントまとめ

  • LLM-jp:日本のアカデミアと産業界が集まり「オープンソース日本語LLM」を作るプロジェクト
  • v1.0からv2.0へ:コーパス拡張やモデルアーキテクチャ(Llamaベース)へ移行し性能を強化
  • mdx環境:A100 GPU多数を束ねたクラスタで大規模分散学習を実施
  • Instruction Tuning & 安全性:jasterやichikara-instruction、AnswerCarefullyなどを用い多角的に微調整
  • セーフティWGの独自データ:日本語ToxicityやJBBQで文化的・法的な安全性を検証
  • 今後:175B級モデルの学習を視野に入れ、さらに大規模&高品質なコーパスを構築予定

生成AI

Posted by yuzukaki-dialog