【非エンジニアが挑む】AIとの会話を続けられるようにし、検索機能も試してみた

【非エンジニアが挑む】AIとの会話を続けられるようにし、検索機能も試してみたのテキストと吹き出しイラスト

前回の段階で、VPS上にシステムが立ち上がり、24時間稼働する音声チャットAIが動くところまでできました。

前回の記事はこちらから

しかし、システムが稼働し始めただけで、これが「VPS上である必要がある」ものだとは、正直まだ感じられませんでした。

ここからは、「VPS上である意味」を作り上げていくための改良を重ねていく、2本立ての記事になります。


目次

なぜ「会話の継続」と「検索」を選んだか

まず気になったのは、会話が単発で終わってしまうことでした。

会話自体は成立していて、返答も音声で返ってくるのですが、どこか物足りなさが残ります。普通の一往復のやり取りなら十分かもしれませんが

自分としては、これを日常的に使うことも想定したいと考え

会話の継続」と「検索」という2つの機能を追加する方針を立てました。

「検索」については、毎回依頼するとコストがかかってしまうので、LLM(AIモデル)自身が必要だと判断した時にだけ使うようにし、なるべく自然な会話を目指したいと考えました。


会話履歴をどう持たせるか、という設計判断

単発のやり取りであれば、履歴を持たせる必要がないので、必然的にデータベースも要らず、シンプルな設計のままで済んでいました。しかし今回の「会話の継続」という要件では、会話しているように、やり取りが連なった形で返答する必要が出てきます。

Tomoya

ここで、1つ考えるべきポイントが生まれました。

そこで、3つの選択肢を並べて考えることにしました。

選択肢メリットデメリット判断
DBを作って履歴を保存履歴が残り、端末をまたげる構成が複雑化し、管理コストも増える見送り
DBなしで会話を成立させる構成がシンプルなまま維持できる履歴はブラウザを閉じると消える採用
会話の継続を諦める現状のまま変更不要やりたかったことが実現できない見送り

AIと相談した上で下した決断は

「データベースを作らずに、会話を成立させる」というものでした。

これを実現するために、ブラウザ側だけで会話の履歴を保持することで、DBを作らずとも会話ができるようにしました。

Tomoya

ただし、この設計には制約も生まれます。

制約

1セッションのみの会話しかできないということです。

一度セッションが終わって切れてしまうと、また1から会話が始まることになります。

画面の中でチャットをしている間は、それまでのやり取りを参照しながら答えてくれますが、ブラウザを閉じてしまえば、それで終わりです。

それでも、コストをかけずに、1セッション分は自然な会話の継続ができるのであれば十分だと判断し、この設計で進めることにしました。

Tomoya

履歴が消える割り切りは必要ですが、
構成を増やさずに目的を達成できたのは、
個人的にかなり納得感のある落とし所でした。


Grounding(検索連携)という機能を知る

Geminiには、オプションとして「Grounding(検索機能)」を追加できることを知りました。

これをオンにした上で、事前に「必要な時だけ検索する」という権限をInstruction(事前指示)の中で与え、入力の意図を汲み取って検索を使い分けるように設定していきました。

これによって、最新の天気情報などを知りたい時にも、検索を通じて正確に教えてくれるようになり、より日常的に使いやすいシステムに近づいたと感じています。


気になったコスト面を調べてみた

Google AI Studioにおける無料APIと有料API(Tier1)のキーの違いを示した比較
Google AI Studioで提供される無料APIキーと有料API(Tier1)キーの仕様や制限の違いを示した比較イメージです。
Tomoya

検索機能には料金がかかります。

AI Studioの無料プランの API キーでは検索機能自体が「利用不可」となっているため、有料プラン(Tier 1)の API キーを新しく作成する必要がありました。

ここで一番気になったのは、「検索機能」を1回使うと、どのくらいのコストがかかるのかという点です。

調べてみると月単位の無料枠が用意されていて、一定の回数までは追加料金なしで使えることがわかり、少し安心しました。

個人でそこまで頻繁に検索機能を使うことは、現状ではないだろうと予測しているので、実質的にはモデルそのものの利用料だけがかかる、という見立てです。

項目内容
無料プラン利用不可(検索機能が使えない)
有料プラン(Tier 1)の無料枠 ▼1か月あたり 5,000 件の検索リクエスト
適用範囲すべての Gemini 3.x モデルで共有
超過分の料金1,000 件あたり 14 USD(1件あたり約 0.014 USD)
別途かかる費用モデル利用分の入力・出力トークン料金

※料金・無料枠の条件は変更される場合があります。最新情報は公式の料金ページをご確認ください。

Grounding(検索)補足
  • 無料枠は月単位(1か月あたり5,000件)での管理です。日単位ではないため、月初にまとめて使っても問題ありません。
  • Gemini 3.x 系すべてで共有されます。複数モデルを使い分けても合計5,000件が上限です。
  • 検索機能の無料枠とは別に、通常のトークン課金は発生します。混同しやすいポイントなので表に明記しています。

無料枠は月5,000件。1日あたりに換算すると約160回分になるので、個人利用で使い切るのはなかなか難しい範囲でした。仮に超えても1回あたり約2円(1ドル150円換算)なので、負担は限定的です。

予告:2026/10/12~

Google AI StudioのAPIキーの支払いが変わります。

  • Before: 今までは後払いの従量課金型でAPIキーを利用する事が出来ました。
  • After: 10/12~は、前払い式のプリペイドカード方式に変わります。

事前に入金する事でAPI料金を管理でき、止めたくない場合はその都度チャージされる【自動チャージ】も設定可能の様です。

課金  |  Gemini API  |  Google AI for Developers


ローカルでの動作確認

この2つの機能、「自然な会話の継続」と「検索」を、Cursorのエージェントに依頼して組み立ててもらい、ローカルで動作確認を行っていきました。

Grounding機能適用前後における検索情報(金沢市の天気)の表示内容の比較
Grounding(検索)機能の有効化前後により、Google検索結果や参照元リンクが追加表示された変化の比較です。
Tomoya

「今日の天気は?」と聞いて、正確な答えが返ってきた時は、うまくいっていると感じられて嬉しかったです。

そして、その後も続けて話しかけられるようになっていることも確認できました。

とんかつの作り方から小麦粉の代用についてAIと対話を継続している会話履歴画面
とんかつのレシピ質問から小麦粉の代用案まで、文脈を維持してAIと対話を続けている会話履歴です。

以下のリンクから月額プランを契約すると、初月は半額で利用できます。コストが心配な方でも、最初の1か月は最低10ドルから試せるので、気軽に始めやすいと思います(解約も簡単にできます)。


有料か無料か、VPSだからこその判断

Tomoya

ローカルでのGroundingは、無事に成功しました。

そのまま VPS にも反映しようかと考えましたが、今回は見送ることにしました。

VPS は常時インターネットに公開されている環境で、それなりのセキュリティリスクを抱えているからです。

環境Grounding判断理由
ローカルオン外部に公開されておらず、検証もしやすい
VPSオフ(見送り)常時公開環境のため、不要な機能は止めておく

Grounding は環境変数でオン・オフを切り替えられる作りにしてあるので、必要になったタイミングで有効化すれば十分です。

「必要になるまで機能は止めておく」

シリーズを通して繰り返してきた必要最小限の考え方を、ここでも自然に選べたのが素直に嬉しかったところです。


VPSへの反映

簡潔な流れ

Github Push pull → 変数を確認 → ビルド/リスタートの4ステップ

これまでと同じように、GitHubを更新し、VPS側でpullして反映し、ブラウザで確認していきました。エラーになることもなく、無事に使えたので良かったです。

Groundingは使えない状態のままですが、チャットの「会話の継続」自体は問題なく機能しており、1セッション内であれば、それまでのやり取りを踏まえた回答をしてくれます。

まとめ・次回予告

これで、会話は続けられるようになりました。ただ、正直に言うと、これはまだ「VPSでなくても実現できる」範囲の改善だったと感じています。

次回は、第2弾として「VPSである意味」を作り上げるために、Discord内でチャットできるシステムへと改良していこうと思います。

次回予告「VPS上である意味を求め Discord内24H音声チャット実装」のテキストとロボットイラスト
Tomoya

ここでようやく、VPSだからこそ実現できることに、たどり着けるはずです!

以下のリンクから月額プランを契約すると、初月は半額で利用できます。コストが心配な方でも、最初の1か月は最低10ドルから試せるので、気軽に始めやすいと思います(解約も簡単にできます)。

他のVPSは「さくらインターネットから!」

前回のおすすめ記事はこちらから

VPSを使った24時間稼働システムを作成した記事はこちら

【非エンジニアが挑む】AIとの会話を続けられるようにし、検索機能も試してみたのテキストと吹き出しイラスト

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

始めまして。このブログを運営するTomoyaです。
未経験個人開発者。AI×個人開発(Vibe Cording)で学習して参入してくれる人が増えて広がっていくと良いなと思って始めました。

実際に作成→デプロイ(公開)→運営を行ってそれについての問題や疑問を記録していきます。
また行っていく上で内容(セキュリティ・制限など)にもこだわっていきたいなと思っています。

コメント

コメントする


目次