はじめに
NotebookLM編 / Dify編 に続く第三弾です。
これまでは低コスト(¥0)に重きを置いていましたが、コスト面はある程度目を瞑った場合どうなるだろう?…ということで大手クラウドベンダ (Google Cloud) のサービスを使ってAIアシスタントを作ってみました。なお当初の目的である、AIアシスタントを簡単に構築すること は見失わずに、なるべく容易なシステム構築手段を選びました。
クラウドサービス選定
大手クラウドベンダからはたくさんのサービスが提供されていますが、今回は 初心者向け かつ コスト的にも優位な Google Cloud を使ってみます。
以下が非常に参考になりました。
Vertex AI Agent Builder(Vertex AI Search - Summarization)
ある程度の品質を Google に担保してもらいたい初級者および中級者向けのサービスです。
Integrations(Pre-GA) を使えばSlack連携もできる点もGoodでした。
外部から呼び出せるカスタム版 NotebookLMになりそうな予感…
Google Cloud
Google Cloudには、以下のようなリファレンスアーキテクチャが用意されていますが、
なるべく簡単に構築したいのでこちらは使いません。
コードを1行も記述せずにエージェント作成可能な Vertex AI Agent Builder を使ってみます。
Agent Builderで作成できるアプリには、検索 / チャット / レコメンデーション / エージェントがありますが、今回は エージェント を作成してみます。
手順
基本的には以下を参考にして躓くことなく構築できました。
気になった点をメモ程度に残します。
1. アプリを作成する
エージェントを選択します。
検索
はデータストア内のファイル検索+簡単な要約(インタラクティブな対話ではありません)、チャット
はエージェントの前身であるDialogflow CXのようで細かな設定を自身で行えばRAGができそうでした。レコメンデーション
は触っていません。
Goal等はこのように設定してみました。
GenAI周りはモデルとトークン上限、温度が変更できるようです。モデルはGemini-1.0-Pro
, Gemini-1.5-Flash
, text-bison@002
がありました。
2. データストアを作成する
データソースはCould Storage
を選択します。
記事執筆時点では、PDF、HTML、TXT、CSV、DOCX、PPTX、JSONのみサポートです。マークダウンやソースコード・スクリプトは対象外なのでご注意ください。今回は無理やりTXTとして取り込んでいます。
ドキュメントチャンキングも設定できました。細かいパラメータはありませんでしたが…
作成を押して数分待つと格納したファイルが読み込まれたデータストアが作成されました。
ウェブサイトのコンテンツ
は、ドメインを所有しているサイトしか対象にできませんので、ご注意ください。
3. テスト
データストアを参照して答えていそうです。
Dify編で使用したGemma
と比べて回答が洗礼されている印象です。
4. Slack連携
Integrations画面からSlackをConnectします。
Dialogflow CXと同じなので、以下が参考になりました。
実際にSlackから呼ぶとこのような感じです。
とっとこちゅら太郎のAutowareモジュール…?
コスト
システム構築〜30回ほどテストチャットで、¥42でした。
※ 無料トライアルクレジットがあったので、¥9になっています。
おわりに
Difyに比べると、システム構築が圧倒的に楽でした。数時間でSlack連携までできます。
またNotebookLMに比べると、GenAIモデル変更、温度パラメータ調整、システムプロンプト設定が可能な点も良かったです。コストも想定よりも圧縮可能な感覚です。
一方で、他の細かい設定がラップされている印象で、上記の変更だけで性能が不足する場合に困ると感じました。PoCなどでサクっと試す分にはもってこいと思いますので、ノーコードのメリット・デメリットを認識した選定が重要と感じます。
ノーコードの限界も見えてきたので、次はゴリゴリにコードを書いてRAGシステム構築をやってみたいところです。
つづく?
この記事は、AI文章校正ツール「ちゅらいと」で校正されています。