AI活用ガイド
セルフホストのAI検索をVPSで作る
2026年9月10日

レン
自分のサイトの中身を、AIに検索させて答えを作ってもらう機能を作りたいんだけど、全部自前で持てる?

プロクラ
持てるよ。以前話したRAG(資料を検索してから答えさせる仕組み)とベクトル検索を組み合わせれば、自分のサイトやドキュメントの中身をAIに検索させる機能を、VPSの中で完結させられる。
全体の構成
- サイトやドキュメントの内容を、検索用の断片に分けて保存しておく
- 利用者の質問を受け取り、関係する断片を探す
- 見つけた断片をもとに、AIに答えを作らせる

レン
外部の検索サービスを使うのと、自前で持つのとでは何が違うの?

プロクラ
外部サービスは手軽に始められる代わりに、検索対象のデータを相手に渡すことになる。自前で持てば、そのデータをVPSの外に出さずに済むよ。ただし、精度を上げる調整は自分でやることになる。
更新への対応
サイトの内容は更新され続けるので、検索用のデータも合わせて更新する仕組みが必要です。更新のたびに手作業で反映するのは現実的ではないので、定期的に自動で検索用データを作り直す仕組みを、最初から組み込んでおいてください。
- コンテンツの更新をきっかけに、検索用データも自動で更新する
- 更新の失敗に気づけるよう、実行結果を記録しておく
- 古い断片が残り続けないよう、作り直す際に前のデータを消す
公開範囲に注意する

ウィルスン
検索できるということは、外から探れるということでもあるぞ。公開するつもりのない資料まで、うっかり検索対象に含めていないか。ワタシなら真っ先にそこを試すがな。

プロクラ
手厳しいけど、その通りだよ。検索対象に含めるデータは、公開してよい範囲に限定すること。社内向けの情報を扱う場合は、認証をかけて限られた人だけが使える状態にしておこう。

レン
検索の精度が低いと感じたら、まず何を見直せばいい?

プロクラ
以前のRAGの記事でも触れたけど、答えの質が悪いときは、AIそのものより検索の部分に原因があることが多いよ。分割の仕方や、渡している候補の数から見直してみて。

プロクラ
自前で持つ安心感と、公開範囲の管理という手間はセットだよ。両方を引き受ける覚悟があるなら、自分のサイトに合った検索体験を作れる、やりがいのある構成だと思うよ。
検索結果が何も見つからない場合の応答
利用者の質問に関係する断片が見つからない場合、AIに無理やり答えを作らせると、根拠のない内容がそれらしく出力されてしまうことがあります。検索結果が乏しいときは『関連する情報が見つかりませんでした』と正直に伝える応答にしておくほうが、誤った情報を提示するより利用者の信頼を損ないません。答えを出すことより、答えられないと伝えることのほうが安全な場面もあると意識しておいてください。
- 関連する断片が乏しい場合は、無理に答えを作らせない
- 『見つからなかった』と伝える応答を、あらかじめ用意しておく
- 見つからない質問が多いカテゴリがあれば、資料そのものの不足を疑う

レン
自前で持てば安心、ではなく、公開範囲の管理は別途必要なんだね。
あわせて読みたい
- AI活用ガイドDifyのようなノーコード型AIツールをVPSでセルフホストする画面の操作でAIアプリを組み立てるツールを、外部サービスではなく自前のVPSで動かす場合の利点と、気にすべき点を整理します。
- AI活用ガイド翻訳AIをVPSで動かす:精度と速度の見極め方翻訳向けのAIモデルをVPSで扱う場合に、どの規模のモデルを選ぶかの考え方と、機械翻訳の限界をどう補うかを整理します。
- AI活用ガイドAIに外部ツールを呼ばせるときの安全な設計AIが自分の判断で外部の機能を呼び出す「Function Calling」の仕組みと、呼び出せる範囲を安全に絞るための考え方を整理します。
- AI活用ガイド画像生成AIとVPSの相性:CPUでどこまでできるか画像を生成するAIがGPU前提である理由と、CPUだけのVPSでも現実的にできる関わり方を整理します。生成そのものを外部に任せる構成の考え方まで解説します。
サーバーを触る前に押さえておきたいこと
姉妹サイトの、この記事と相性のいいページです。
- Python入門
AI・機械学習まわりで最もよく使われる言語 — prodou.net
- Linuxコマンド入門
ls / cd / grep などを疑似ターミナルで試しながら学べる — prodou.net
- JSON Formatter
APIのレスポンスを整形して確認する — toolkitbox.net