エンベディングとは?意味・仕組みと埋め込みAPIの料金(2026年10月時点)
エンベディング
埋め込み表現 / Embedding / ベクトル埋め込み
エンベディング(埋め込み表現)とは、文章や画像の意味を数字の並び(ベクトル)で表したもので、意味の近いものほど距離が近くなり、似た文書の検索や RAG に使われる。
要するに
- 文章を標準で1,024〜3,072個の数字の並びに変え、意味の近さを距離で測る
- 質問と距離の近い文書を探すベクトル検索は、RAG で資料を探す段階に使われる
- Google は、モデルを替えるときは既存のデータをすべて埋め込み直す必要があるとする
最終確認

埋め込みに関する出来事
原論文と関連研究
- Sentence-BERT 論文の解説:文をベクトルにして探す速度と精度Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
- DPRの原論文を読む 質問に合う文章をどう探すかDense Passage Retrieval for Open-Domain Question Answering
- ColBERTの原論文を読む 検索精度と応答速度をどう両立したかColBERT: Efficient and Effective Passage Search via Contextualized Late Interaction over BERT
- SimCSE 論文の解説:文を二度見せて文埋め込みを学ぶSimCSE: Simple Contrastive Learning of Sentence Embeddings
- Contrieverの原論文を読む 正解付きデータなしで文書を探すTowards Unsupervised Dense Information Retrieval with Contrastive Learning
- CLIPは画像と文章をどう結びつけたか 2021年の原論文を読むLearning Transferable Visual Models From Natural Language Supervision
- RAGの原論文を読む 検索と文章生成をどう結びつけたかRetrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
目次8
ひとことで言うと
エンベディング(Embedding、埋め込み表現)は、文章や画像の意味を数字の並びに変えたものだ。この数字の並びをベクトルと呼ぶ。OpenAI は、2つのベクトルの距離が文章どうしの関係の近さを表し、距離が小さいほど関係が深いと説明している。
たとえば Cohere のドキュメントには、「i love soup」「soup is my favorite」「london is far away」の3つの文をベクトルに変えて比べる例がある。スープの話をしている2つの文は似ている度合いが高く出て、ロンドンの文との組み合わせでは低く出る。
仕組み
数式を使わずに言うと、エンベディングを使って似た文書を探すときは、次の順で動く。
- 埋め込みモデル(文章をベクトルに変える専用の AI のモデル)に文章を渡す。OpenAI の text-embedding-3-small なら、1つの文章が1,536個の数字の並びになる。
- 文書のベクトルを、ベクトルデータベースに保存する。ベクトルを保存し、近いものを速く探せるデータベースだ。OpenAI は多くのベクトルから近いものを速く探すにはベクトルデータベースを使うよう勧めている。
- 質問が来たら、質問も同じモデルでベクトルに変える。
- 質問のベクトルと距離の近い文書を探す。OpenAI も Google も近さの測り方としてコサイン類似度(2つのベクトルの向きがどれだけそろっているか)を挙げている。Google によると、値は -1(反対)から 1(最も似ている)までだ。
- 見つかった文書を検索結果として返すか、生成 AI に渡して答えをつくらせる。
このように意味の近さで探す方法を、ベクトル検索と呼ぶ。Google は Gemini API のドキュメントで、エンベディングを使った検索や分類はキーワードで探す方法より正確で、文脈をとらえた結果になると説明している。5の使い方が RAG(AI が答える前に資料を検索し、その内容を足して答える仕組み)で、Google はエンベディングが RAG で重要な役割を果たすとしている。
単語をベクトルで表す研究には長い歴史がある。2013年1月に Google の Tomas Mikolov らが発表した論文は、16億語のデータから1日足らずで質の高い単語のベクトルを学べたと報告した。論文は「King」のベクトルから「Man」を引いて「Woman」を足すと、「Queen」のベクトルにいちばん近くなるという先行研究の例も紹介している。
文全体を1つのベクトルにする方法では、2019年8月の Sentence-BERT の論文(TRAIL の解説)がある。論文によると、それまでの BERT で1万文の中から最も似た2文を探すと約65時間かかったが、Sentence-BERT では約5秒になった。2020年4月の DPR の論文(TRAIL の解説)は、質問と文章をベクトルにして探す方法を試した。要旨によると、複数の質問応答のデータで、語の一致で探す BM25 より、上位20件に正解の文章が入る割合が9〜19ポイント高かった。ただし論文の表では、SQuAD というデータだけは BM25 のほうが高かった。
表で見る最新の状況
埋め込みの API は、入力したトークンの量で料金がかかる。トークンは AI が文章を数える単位だ。ChatGPT のようなアプリの料金プランとは別の料金で、Perplexity は API をすべて従量課金にしていて、サブスクリプションは要らないとしている。各社の料金ページの値は次のとおりで、2026年10月24日に確認した。
| 提供元 | モデル | 100万トークンあたりの料金(テキスト) | 標準のベクトルの長さ |
|---|---|---|---|
| OpenAI | text-embedding-3-small | $0.02 | 1,536 |
| OpenAI | text-embedding-3-large | $0.13 | 3,072 |
| gemini-embedding-2 | $0.20(無料枠もある) | 3,072 | |
| Perplexity | pplx-embed-v1-0.6b | $0.004 | 1,024 |
| Perplexity | pplx-embed-v1-4b | $0.03 | 2,560 |
出典は OpenAI の料金ページ、Google の料金ページ、Perplexity の料金ページだ。ベクトルの長さは各社のドキュメントの値を使った。Anthropic は自社の埋め込みモデルを提供しておらず、ドキュメントで Voyage AI を提供元の1つとして紹介している。
TRAIL の年表では、Perplexity が2026年2月に「Embeddings API と Agent API を公開」した。2026年10月7日には文章と画像を検索するための埋め込みモデル pplx-embed-v2-late を Hugging Face で公開し、PDF のページを文字に起こさずに検索できるようにした。
ベクトル検索とキーワード検索の違い
| ベクトル検索(エンベディング) | キーワード検索(BM25 など) | |
|---|---|---|
| 何で探すか | 意味の近さ(ベクトルの距離) | 語や言い回しの一致 |
| 得意なこと | 意味の関係をとらえること。Google はキーワードで探す方法より文脈をとらえた結果になるとする | 型番やエラーコードのような固有の語。Anthropic は技術用語を含む質問に向くとする |
| 苦手なこと | Anthropic は、正確な語の一致を取りこぼすことがあるとする | (出典に記載なし) |
| 原論文での比較 | DPR の要旨では、上位20件の正解率で BM25 を9〜19ポイント上回った。SQuAD では BM25 が上回った | DPR の論文は、BM25 を従来の標準の方法としている |
| モデルを替えたとき | Google は保存済みのデータをすべて埋め込み直す必要があるとする | (出典に記載なし) |
Anthropic はエンベディングと BM25 の両方で探して結果をまとめると、語の正確な一致と広い意味の理解を両立でき、より正確な結果になると書いている。社内の検索では2つを組み合わせる方法も選べる。
仕事でどう関係するか
社内の文書を探す仕組みや RAG を作るとき
質問と文書で、埋め込むときの指定を分けるモデルがある。Cohere は検索の質問を search_query、探す側の文書を search_document として埋め込むよう説明している。Google の gemini-embedding-2 では、次のような接頭辞を付けた形を例に挙げている。
質問の側:task: question answering | query: {質問}
文書の側:title: {文書の題名} | text: {本文}日本語の文書を扱うなら、対応言語も確かめる。Cohere は embed-v5.0-pro が日本語を含む100以上の言語に対応するとしている。Google も gemini-embedding-2 が100以上の言語で検索や分類に使えると書いている。
費用を見積もるとき
OpenAI は1ページを約800トークンとして、text-embedding-3-small なら1ドルで約62,500ページ分を埋め込めると示している。急がない処理なら、Google は Batch API を使うと標準の料金の50%で埋め込めるとしている。Gemini API のファイル検索を使う場合、埋め込みに100万トークンあたり$0.15かかり、検索で取り出した文書はふつうのトークンとして料金がかかる。
画像や PDF もまとめて探したいとき
Google の gemini-embedding-2 は、文章、画像、動画、音声、文書を同じ空間のベクトルに変える。マルチモーダル(文字以外の画像や音声も扱えること)な埋め込みモデルで、Google は種類をまたいだ検索や比較ができると説明している。PDF は1回に1ファイル、6ページまで送れる。Cohere の embed-v5.0-pro も、図やスライド、PDF の画面の写しのような画像と文章を扱える。
注意点と限界
- 埋め込みモデルを替えるときは、保存済みの文書を埋め込み直す必要が出る。Google は gemini-embedding-001 と gemini-embedding-2 のベクトルは互換性がなく、直接比べられないとしている。gemini-embedding-2 に替えるときは、既存のデータをすべて埋め込み直す必要があるという。
- 1回に入れられる量には上限がある。OpenAI のドキュメントの表にある3つのモデル(text-embedding-3-small、text-embedding-3-large、text-embedding-ada-002)の上限は8,192トークンだ。Google の gemini-embedding-2 は、8,192トークンを超えた入力を知らせずに切り捨てる。Anthropic の説明する RAG でも、資料は数百トークンほどのかたまりに分けてから埋め込む。
- エンベディングはエラーコードのような正確な語の一致を取りこぼすことがある。Anthropic は「Error code TS-999」と探すと、エラーコード一般の文書は見つかっても TS-999 そのものを取りこぼすことがある例を挙げている。
- OpenAI は、text-embedding-3-large と text-embedding-3-small が2021年9月より後の出来事を知らないとしている。文章を生成するモデルほどの問題にはならないが、まれに性能が下がることがあるという。
よくある質問
エンベディングとは簡単に言うと何か
文章や画像の意味を、数字の並び(ベクトル)で表したものだ。意味の近いもの同士はベクトルの距離が近くなるので、似た文書を探したり、仲間ごとに分けたりできる。
埋め込みとエンベディングは同じものか
どちらも英語の embedding を指す。Google の日本語のドキュメントも、名詞は「エンベディング」、動詞は「画像を埋め込む」のように両方を使っている。
ベクトル検索とは何か
質問と文書をエンベディングに変え、ベクトルの距離が近い文書を探す方法だ。語の一致で探すキーワード検索と違い、意味の近さで探す。一方、型番のような正確な語の一致は取りこぼすことがある。
エンベディングと RAG の関係は何か
RAG で資料を探す段階に、エンベディングが使われる。Anthropic の説明では、資料を小さく分けて埋め込みモデルでベクトルに変えて保存し、質問と意味の近い部分を探してプロンプトに足す。
LLM とエンベディングのモデルは何が違うか
LLM は文章を読み書きする AI のモデルで、エンベディングのモデルは文章をベクトルに変えるだけのモデルだ。Google は、エンベディングのモデルは新しいコンテンツを作る生成 AI のモデルと違い、入力を数値の表現に変えることだけを目的にしているとしている。
無料で試せるか
Gemini API には無料枠があり、gemini-embedding-2 の入力は無料枠で料金がかからない。ただし Google は無料枠で送った内容をサービスの改善に使うとしている。OpenAI と Perplexity の料金ページには、AI API の100万トークンあたりの料金が載っている。
関連する用語
- RAG(検索拡張生成):エンベディングで探した資料を AI に渡して答えさせる仕組み
- LLM(大規模言語モデル):RAG で探した資料を受け取って答えをつくるモデル
- AI API:埋め込みモデルもこの形で呼び出して使う
- マルチモーダル:画像や音声も同じベクトルに変える埋め込みモデルがある
- コンテキストウィンドウ:資料が多いと全部は入らないため、エンベディングで探して渡す
- ツール:ChatGPT、Google AI Studio、Perplexity
- 論文:Sentence-BERT の解説、DPR の解説
出典
- Efficient Estimation of Word Representations in Vector SpacearXiv(Mikolov ほか)
- Sentence-BERT: Sentence Embeddings using Siamese BERT-NetworksarXiv(Reimers、Gurevych)
- Dense Passage Retrieval for Open-Domain Question AnsweringarXiv(Karpukhin ほか)
- Vector embeddingsOpenAI
- PricingOpenAI
- エンベディングGoogle
- Gemini Developer API の料金Google
- Introduction to Embeddings at CohereCohere
- Embeddings APIPerplexity
- PricingPerplexity
- EmbeddingsAnthropic
- Introducing Contextual RetrievalAnthropic
- 公開
- 執筆
- TRAIL編集部(編集方針)