TIP
← 記事

AI

Ruri — 日本語特化型のテキスト埋め込み(Embedding)モデル

2026/09/13

埋め込みモデルとは何をしているか

「埋め込み(Embedding)モデル」とは、文章を数百〜数千次元の数値ベクトルに変換するモデルのことを指す。意味の近い文章同士は、ベクトル空間上でも近い位置に配置されるように学習されており、この性質を利用して「意味的に似た文章を検索する」といった処理が可能になる。RAG(検索拡張生成)システムの検索層を支える中核技術の一つであり、LLM本体とは別に、専用の埋め込みモデルが使われることが一般的だ。

日本語埋め込みモデルの空白を埋める試み

英語圏では大量の高品質な埋め込みモデルが公開されてきた一方、日本語に特化した埋め込みモデルの開発は相対的に手薄だった。この状況を背景に、名古屋大学の研究チーム(cl-nagoya)が開発・公開しているのが、日本語汎用テキスト埋め込みモデルのシリーズ「Ruri」である。研究成果は論文「Ruri: Japanese General Text Embeddings」としてまとめられている。

最新版「Ruri v3」の特徴

Ruriシリーズは複数世代にわたって改良が重ねられており、最新の「Ruri v3」では以下のような技術的な改善が報告されている。

  • ModernBERT-Jaベースの新アーキテクチャ: 最新の効率的なTransformer設計を取り入れたベースモデル(ModernBERT)の日本語版をベースに構築されている
  • 最大8,192トークンの文脈長: 旧バージョン(v1・v2)が512トークンまでの制限だったのに対し、v3では大幅に長い文章をそのまま埋め込めるようになった
  • 語彙数の拡張: トークナイザーの語彙数が旧バージョンの32,000から100,000へ拡大され、同じ文章でもより少ないトークン数で表現できるようになり、処理効率が向上している
  • 単体でのトークナイズが可能に: 旧バージョンは外部の形態素解析ツールによる事前分かち書きを必要としていたが、v3ではSentencePieceベースのトークナイザーのみで完結するようになった
  • FlashAttentionの統合: 推論・ファインチューニングの高速化に寄与する最新の実装が組み込まれている

モデルサイズは3,700万パラメータの小型版から3億1,500万パラメータ版まで複数用意されており、用途や実行環境の制約に応じて選べる構成になっている。日本語埋め込みモデルの性能を測る代表的なベンチマークであるJMTEB(Japanese Massive Text Embedding Benchmark)において、最大サイズのモデルは平均スコア77.24を記録したと報告されている。

実際にどう使うのか — 最小構成のコード例

Ruriのようなsentence-transformers互換の埋め込みモデルは、Pythonのsentence-transformersライブラリを使えば数行で試すことができる。

from sentence_transformers import SentenceTransformer

model = SentenceTransformer("cl-nagoya/ruri-v3-310m")

# 検索クエリと候補文書をベクトル化する
query = "クラウドのコスト削減方法を教えて"
documents = [
    "AWSの予約インスタンスを使うとコンピューティング費用を大幅に削減できる",
    "今日の東京の天気は晴れです",
    "不要なストレージスナップショットの定期的な削除もコスト削減に有効だ",
]

query_embedding = model.encode(query)
doc_embeddings = model.encode(documents)

# コサイン類似度を計算し、最も近い文書を探す
similarities = model.similarity(query_embedding, doc_embeddings)

このコードを実行すると、similaritiesには3つの文書それぞれとクエリとの類似度スコアが並ぶ。意味的に関連する1件目・3件目(コスト削減の話題)が、無関係な2件目(天気の話題)よりも明確に高いスコアを示すのが、埋め込みモデルの典型的な挙動である。RAGシステムでは、この仕組みを使って、ユーザーの質問に意味的に近い文書だけを大量の文書群から絞り込み、その結果をLLMへの入力として渡す。

なぜ日本語RAGにとって重要なのか

RAGシステムの検索精度は、埋め込みモデルの質に大きく左右される。多言語対応をうたう埋め込みモデルは数多く存在するが、日本語特有の表記ゆれ、助詞の扱い、文脈依存的な意味解釈などにおいて、日本語に特化して学習されたモデルの方が実務上の検索精度で優位に立つケースが少なくない。

特にコンテキスト長が8,192トークンまで拡張されたことは、長めの技術文書や契約書、議事録といった日本語の実務文書をそのままの単位で埋め込みたい場面において、実用上のインパクトが大きい改善だといえる。

TIPの視点

Ruriのような日本語特化モデルが着実に世代を重ねて改良されている事実は、日本語圏のAIインフラが「多言語モデルの副産物」から「専用に設計されたコンポーネント」へと成熟しつつあることを示している。日本語RAGシステムを構築する際は、汎用の多言語埋め込みモデルをまず試すだけでなく、Ruriのような日本語特化モデルもベンチマーク対象に含めて比較検討する価値がある。