🚀

Embedding 技術の使い分けガイド

に公開

Azure OpenAI と OSS/ローカルモデルをどう選ぶべきか

RAG(Retrieval-Augmented Generation)が一般化したことで、
埋め込み(embedding)モデルをどう選ぶかは、
システムの性能・運用コスト・セキュリティまで大きく左右する判断となった。

本記事では、
Azure OpenAI の embedding
および
OSS・ローカル・他クラウドの embedding
を、目的別にどう使い分けるべきかを丁寧に整理する。


1. Embedding モデルは「目的別」で最適解が変わる

埋め込みモデルには大きく次の 3 つの選択肢がある。

  1. Azure OpenAI(text-embedding-3-large / small)
  2. OSS・ローカル(BGE / e5 / Instructor / Sentence Transformers / Ollama)
  3. クラウド各社の embedding(AWS Titan / Google Gecko / OpenAI API)

これらは優劣ではなく、
「ユースケース × 制約条件」によって適した選択肢が変わる。

以下で、それぞれの使いどころを明確にしていく。


2. Azure OpenAI Embedding の使いどころ

Azure の embedding は
「大規模」「多言語」「企業利用」を前提に設計されている。

2-1. 企業の本番 RAG システム

Azure の最大の強みは、信頼性とセキュリティである。

  • VNet
  • Private Endpoint
  • Azure AD 認証
  • ログ・監査
  • SLA ベースの安定性

これらは企業の本番システムに必須の要素であり、
Embedding も同じインフラ上で安全に使える。

代表ユースケース

  • 社内ナレッジ検索(文章量が非常に多い)
  • 金融・法務・医療データの RAG
  • 多言語問合せシステム
  • 国際展開している企業のFAQ検索

大量データ × 企業要件 × 多言語対応
この条件に当てはまるなら、ほぼ Azure embedding 一択。


2-2. 多言語データを扱う検索

Azure の text-embedding-3-large は、
MIRACL ベンチマーク(多言語検索指標)で高評価を獲得している。

そのため以下のようなケースに強い。

  • 英語+日本語+中国語が混在した文書検索
  • グローバル企業のナレッジ管理
  • 多言語チャットボットの RAG

OSSモデルよりも「言語間の意味距離」の扱いが安定している。


2-3. 高い検索精度が重要な場合

Azure 3-large は 3-small よりも検索精度が高く、
OSS embedding にも匹敵・上回るケースがある。

  • 法律文書
  • 契約書
  • 専門領域の技術ドキュメント

のような「取り違えが許されない」検索に有効。


2-4. embedding 次元数を柔軟に調整したい場合

Azure の 3 系列 embedding は、
dimensions パラメータで出力次元数を変更できる。

たとえば:

  • 3072 → 1024(コスト 1/3 に)
  • 1536 → 768(速度向上)

大量データ×クラウド検索(Azure Cognitive Search)では
特にコスト最適化効果が大きい。


3. OSS・ローカル embedding の使いどころ

次に、Azure 以外の埋め込み手法について。

3-1. コストを極限まで抑えたい場合

OSSの BGE / e5 / Sentence Transformers は無料で使える。
Ollama を使えば推論すらローカルで完結する。

  • スタートアップ
  • 個人開発
  • 研究用途
  • PoC

では、Azure embedding より OSS embedding が適している。

代表ユースケース

  • 社内 QA の試作
  • RAG の A/B テスト
  • embedding モデル比較実験
  • 細かいプロンプト探索

特に BGE (bge-large) はコスパが非常に高く、
実務の RAG でも広く利用されている。


3-2. 完全オフラインで処理したい場合

医療・製造・警察・公共系など、
「データをクラウドに送れない」ケースがある。

この場合、
Ollama embedding や Sentence Transformers をローカルで実行する構成が最適。

オフライン向けユースケース

  • 現場端末での診断補助
  • 工場設備のログ解析
  • 機密性の高い内部文書検索
  • 官公庁向けの閉域システム

Azure embedding はクラウド必須であるため、
オフライン要求がある場合はローカル embedding 一択となる。


3-3. 巨大データを高速に処理したい場合

OSS embedding は

  • バッチ化しやすい
  • GPU並列処理ができる
  • embedding生成コストがゼロ

という利点がある。

数百万〜数千万件の文書 embedding を作る際、
Azureよりもローカル GPU の方が圧倒的に安い。


3-4. embedding モデルの種類を柔軟に選びたい場合

Azure embedding は種類が限られるが、
OSSなら以下が自由に選べる。

  • 法律特化 embedding
  • 医療特化 embedding
  • 多言語特化 embedding
  • 意図理解(Instructor embedding)
  • 翻訳最適化 embedding
  • コード embedding(e.g. CodeBERT)

ユースケースに合わせて最適化できる点で非常に強い。


4. 他クラウド(AWS / GCP / OpenAI API)を選ぶ場合

4-1. AWS環境 → Titan Embeddings

AWS中心の企業なら、
VPC 内で完結する Titan embedding が扱いやすい。

  • セキュリティ強化
  • AWS Search(Kendra)との統合

が明確なメリット。


4-2. GCP環境 → textembedding-gecko

検索品質に定評があり、
Google Workspace や BigQuery と組み合わせやすい。


4-3. OpenAI API を選ぶ理由

Azure より以下が優れる場面がある。

  • 新モデルの提供が早い
  • 価格が少し安い
  • 個人でも使いやすい

Azure が「企業向け」なら、
OpenAI 本家は「開発者向け」という位置づけ。


5. ユースケース別の最適解まとめ

企業・本番・多言語

  • Azure text-embedding-3-large
  • Azure Cognitive Search と組み合わせて構築

コスト最適化・高速大量処理

  • BGE-large(OSS)
  • GPU バッチ処理
  • Chroma / Qdrant と組み合わせ

完全ローカル・オフライン

  • Ollama embedding
  • Sentence Transformers
  • ローカル vector DB(Milvus Lite 等)

AWS/GCP統合が必要

  • Titan Embeddings
  • Gecko Embeddings

スタートアップ・研究・比較実験

  • BGE、Instructor、e5 などを自由に選択
  • OpenAI 本家 API で最新モデルを試す

6. 最終まとめ

Embedding の選定は
「性能」だけでなく「制約条件」で決まる。

  • 企業本番・多言語 → Azure
  • コスト重視 → OSS
  • オフライン → ローカル(Ollama / HF)
  • AWS/GCPに寄っている → Titan / Gecko
  • 研究・新モデル探索 → OpenAI API + OSS

どれが最適かはユースケースによって変わるが、
Azure embedding は「企業向けの標準解」、
OSS embedding は「開発者の実験・高速RAGの基盤」、
ローカル embedding は「閉域・機密の必須環境」となる。

Discussion