見出し画像

【AI入門】AIが「意味の近さ」で情報を探せる理由——ベクトルデータベースの仕組みを比喩で解説

「犬」と検索すると「犬」しかヒットしない検索と、「犬」と入力しても「柴犬」「ペット」「動物」なども見つかる検索——その違いを生み出しているのが、ベクトルデータベースという技術です。

RAGや意味検索、ChatGPTのメモリ機能など、最近のAIの「賢さ」の多くはこの仕組みに支えられています。

今回は、ベクトルデータベースが何者で、なぜこんなに重要なのかを、比喩を使って丁寧に解説します。




「意味が近い」とはどういうことか


まず、普通のデータベースとベクトルデータベースの違いから整理しましょう。

普通のデータベース(キーワード検索)

従来のデータベースは「完全一致」か「部分一致」で検索します。「りんご」を検索すると「りんご」が含まれる文書しか見つかりません。「果物」「Apple」「フルーツ」は別々のものとして扱われます。

ベクトルデータベース(意味検索)

ベクトルデータベースは「意味の近さ」で検索します。「りんご」と「果物」は意味的に近い。「犬」と「猫」はどちらもペットで近い。「東京」と「大阪」はどちらも都市で近い——こうした関係性を数値として表現し、検索に使います。

📚 比喩:図書館の2つの整理方法

普通のデータベースは「タイトルのあいうえお順に並んだ本棚」です。「AI」で始まる本を探すのは得意ですが、「AIに似た内容の本」を探すのは苦手です。

ベクトルデータベースは「内容の近い本を隣り合わせに置いた本棚」です。AIの本の隣に機械学習、その隣にディープラーニングの本が並んでいます。「AIに関連する本を全部見せて」という検索に強いのです。


ベクトルとは何か——数字で「意味」を表す


ベクトルデータベースを理解するには、「ベクトル」が何かを知る必要があります。

AIの世界では、単語や文章の「意味」を数字の配列(ベクトル)で表します。これを埋め込みベクトル(Embedding)と呼びます。

例えば「犬」という言葉は、こんな数字の配列に変換されます。

+--------+-------------------------------+
| 単語   | ベクトル(簡略化した例)      |
+--------+-------------------------------+
| 犬     | [0.82,\ 0.31,\ 0.54,\ \cdots] |
| 猫     | [0.79,\ 0.28,\ 0.51,\ \cdots] |
| 自動車 | [0.12,\ 0.91,\ 0.03,\ \cdots] |
+--------+-------------------------------+

「犬」と「猫」のベクトルは数値が近い → 意味が近い。「犬」と「自動車」は数値が遠い → 意味が遠い。実際の埋め込みベクトルは数百〜数千の数値を持ちますが、原理は同じです。

「近さ」をどう測るか?

2つのベクトルがどれくらい近いかは「コサイン類似度」という計算で求めます。高校数学のベクトルの「なす角」に相当します。角度が小さいほど(方向が近いほど)、意味も近い——という考え方です。

ユーザーが数学を知らなくても問題ありません。要するに「AIが自動で意味の近さを数値化してくれる」ということです。


ベクトルデータベースの実際の動き


ベクトルデータベースがどう使われるか、RAGを例に見てみましょう。

RAGにおけるベクトルDBの役割

RAGは「自社の文書からAIが回答を生成する」仕組みです。この仕組みの中心に、ベクトルDBがあります。

① 事前準備(インデックス作成):社内マニュアルや過去のFAQなどを、AIが読んでベクトル化します。ベクトルデータベースに大量の「意味の座標」として保存します。

② 検索(クエリ時):ユーザーが「有給申請の方法を教えて」と質問すると、その質問もベクトル化されます。

③ 類似文書の取得:質問ベクトルに近い文書ベクトルをデータベースから検索します。「有給申請の方法」に意味が近いFAQ項目が見つかります。

④ LLMで回答生成:見つかった文書と元の質問をセットでLLMに渡します。LLMは「正確な情報源」を参照しながら回答を生成できます。

これにより、最新情報や社内固有の知識についても、AIが根拠を持って回答できるようになります。


主要なベクトルデータベース


ベクトルデータベースは、今や多くの選択肢があります。

+----------+--------------------------------+---------------------+
| 名前     | 特徴                           | 向いている用途      |
+----------+--------------------------------+---------------------+
| Pinecone | クラウド専用・セットアップ不要 | 素早くRAGを試したい |
| Chroma   | オープンソース・ローカル動作   | 開発・プロトタイプ  |
| Weaviate | 高機能・ハイブリッド検索       | 本番環境            |
| pgvector | PostgreSQL拡張                 | 既存DB活用          |
+----------+--------------------------------+---------------------+

特にpgvectorは既存のPostgreSQLに組み込める拡張機能で、「新しいインフラを用意したくない」という現場でよく使われています。


まとめ:意味を「座標」に変える技術


✅ 普通のDBはキーワード一致、ベクトルDBは「意味の近さ」で検索する
✅ 単語や文章をベクトル(数字の配列)に変換することで意味を数値化できる
✅ RAGにおいてベクトルDBは「関連文書を探す」コアな役割を担う
✅ Pinecone・Chroma・Weaviate・pgvectorなど用途に応じて選べる

言葉の「意味」を数字に変え、近さで探す——これがAIの「賢い検索」を支える仕組みです。

次回のAI最新情報では、AIがツールを標準的な方法でつなげられるようになった「MCP(Model Context Protocol)」について解説します。

この記事がためになったと思ったら、ぜひスキ・フォローをお願いします。毎日更新中です。


この記事が役に立ったらシェアしていただけると嬉しいです。AI入門シリーズ、毎日更新中です。


関連記事


いいなと思ったら応援しよう!

Thy works|AIの今と使い方を毎日届ける 応援いただけると次の記事を書く励みになります🤖