さくらの生成AIプラットフォームを活用したRAG構築 : NEC製 LLMモデル cotomi によるさくらのクラウドマニュアルを解説するチャットボット

目次
さくらの生成AIプラットフォームについて
さくらインターネットでは、「さくらのクラウド」「GPUクラウド 高火力シリーズ」など生成AIを活用したアプリケーション開発やホスティング、モデルそのものの学習が行えるサービスを提供しています。
昨今需要の高まる生成AIを活用したアプリケーション開発、ホスティング、サービスの提供、そして時にはモデルそのものの開発などに必要なそれら一式の機能をサービスとしてまとめて提供するのが「さくらの生成AIプラットフォーム」です。
例えば生成AIを活用したアプリケーションをサービスとして提供することを検討中の方にとっては、発展の著しいこの技術領域において、サービスのリリース直後の利用者ユーザー数予測は非常に困難です。このため初期投資が発生しない従量課金モデルのクラウドは適しているといえますが、生成AIを活用したアプリケーションはユーザ数の増加に伴い、通常発生する通信量/通信料の他にトークン消費に基づいた生成AIモデル利用料金が発生します。これを精緻に予測することが困難であることは事業計画の痛みになります。
さくらの生成AIプラットフォームを活用いただくことで、通信料金が無償化され、アプリケーションを支えるワークロードの費用を固定化でき、トークン消費に予測をフォーカスできることは、スタートアップ企業、エンダープライズ企業、個人サービス開発者、すべてのメリットにつながると考えています。
NEC 開発の生成AI cotomi と miibo
今日は実際にさくらの生成AIプラットフォームを活用して開発されたNEC開発の生成AI cotomi と ノーコードで生成AIを活用するアプリケーションが構築できるmiibo を組み合わせ、さくらのクラウドのマニュアルを対話式で検索することが可能なチャットボットを作っていきたいと思います。
NECが開発した生成AI「cotomi(コトミ)」は、日本語に特化した高性能な大規模言語モデル(LLM)であり、企業の業務効率化や自動化を支援することを目的としています。日本語の文脈理解や専門用語の処理において高い正確性を持っていることが特徴です。他の海外製LLMと異なるさくらの生成AIプラットフォーム上でcotomiを利用するもう一つの利点として完全閉域網で独立したモデル運用が行えることにあります。このため特に情報の高い独立性を求められる領域での積極的な利用が期待されています。
miiboは株式会社miiboが提供するノーコードで会話型AIを構築・運用できるプラットフォームです。プログラミングの知識がなくても、WebサイトやLINE、Slackなど多様なプラットフォームで動作するチャットボットやAIアシスタントを簡単に作成することができます。さくらの生成AIプラットフォームと連携することでOpenAIやAnthropicなどのモデルに加えてcotomiを選択することが可能です。またLLMモデルへの支払いもmiiboがまとめて一括処理を行ってくれるのも、他のノーコード型生成AIアプリ開発ツールと比べた一つの特徴となっています。
両者を組み合わせることで、対話型チャットボットを容易に構築でき、さらにそれをさくらの生成AIプラットフォームと連携することで、閉域網展開が可能となります。
さっそくやってみる
まずはmiiboのアカウント開設です。
https://miibo.dev/auth/register
こちらからメールアドレスでアカウントを開設します。
ログインができたらまず画面右上の「新しい画面を試す」をクリックして、新しい管理者画面へ移動します。
次にエージェントを作成するのですが、LLMモデルとしてcotomiを選択する場合、現時点ではさくらインターネットへ連絡をいただく必要があります。
https://www.sakura.ad.jp/inquiry/aipf
そのあとモデルの有効化が完了するとcotomiが選択できるようになります。
次にチャットボットの人格や挙動を制御するパラメーター(システムプロンプトと言われますがmiiboではそのような専門知識なしで使えるようになっています)を入力します。
画面右上のエージェントを作成するボタンを押せば完了です。
その後すぐテストができます。
ナレッジの作成
miiboではナレッジを作成することで特定ドメインの知識を学習したチャットボットをすぐ作ることができます。いわゆるRAG(Retrieval-Augmented Generation、検索拡張生成)と言われるもので、あらかじめ外部のドキュメント(ナレッジ)を検索し、その結果を踏まえて回答を生成する技術です。厳密には外部ドキュメントのデータを生成AIが追加学習しているわけではないのですが、便宜上学習と呼ばれることがあります。
まず左ペインのナレッジをクリックします。
画面右下の「データを追加する」ボタンをクリックします。初めての方は画面に「ナレッジデータストアを追加する」というボタンが出ると思いますのでそちらをクリックすると以下のアイコンが表示されます。
外部ツールを使わずに様々な形式でデータを読み込めるのもmiiboの特徴です。今日はURLを指定します。
ここではさくらのクラウドのマニュアルを学習させます。
https://manual.sakura.ad.jp/cloud/index.html
例えば以下の様に設定すればクローラーがリンク先をたどって階層を徘徊し自動でHTMLを発見し学習してくれます。
無償版では登録可能なページは10(1HTML=1ページ)までですので注意してください。
「登録をリクエストする」ボタンを押すと学習が開始され、しばらく待つと登録が完了します。
あとは先ほどと同様にチャットを行うだけです。
完成しました!!RAGを開発された方は裏側で行われている処理が想像つくかもしれません。
まずクローラーが入手したHTMLの情報は1000文字単位のチャンクに分割されベクトル化されデータストアに保存されます。その後ユーザーのチャット(プロンプト)に応じてベクトル検索が行われ、検索結果をcotomiが上記の様に自然な日本語にして回答を生成しています。このあたりの技術的なキーワードや背景を意識しなくても特定ドメインの知識を保有したチャットボットを作れることにmiiboの強さがあります。
実はHTMLの読み込みも大変
生成AIは自然言語モデルです。実は自然言語モデルがウェブサイトを解釈するのは大変だったりしますが、miiboはこれを自動でやってくれます。
例えば以下のマニュアルトップページを学習する場合、コンピューターの見え方は人間と大きく異なります。人間には以下の画面のように見えています。
しかし実際はこうなっています。
<section id="id1">
<h1>さくらのクラウド マニュアル<a class="headerlink" href="#id1" title="Link to this heading"></a></h1>
<p><a class="reference external" href="http://cloud.sakura.ad.jp/">さくらのクラウド</a> に関するマニュアルです。 <br />
料金体系の詳細については「 <a class="reference external" href="https://cloud.sakura.ad.jp/payment/">料金ページ</a> 」を、利用料金の確認・管理方法については「 <a class="reference external" href="https://manual.sakura.ad.jp/cloud/manual-payment.html">契約・お支払いページ</a> 」をご覧ください。 <br />
最新のお知らせは「 <a class="reference external" href="https://cloud-news.sakura.ad.jp/">さくらのクラウドニュース</a> 」をご覧ください。</p>
<div class="toctree-wrapper compound">
これはノイズが大きすぎるため、通常はHTMLをベクトル化してデータストアに保存するときには外部ツールを用いてまずはHTMLをmarkdown形式などに変換します。miiboを使うことでそのあたりのツールを管理する必要がなくなり、時には外部ツールに別途発生する課金も意識しなくてよくなることが大きな特徴です。
まとめ:さくらの生成AIプラットフォームをよろしくお願いいたします
この記事ではノーコードで会話型AIを構築・運用できるプラットフォームであるmiiboを活用して、NECが開発した生成AIモデル・cotomiを用いた外部ナレッジ付きチャットボットを作成してみました。
さくらの生成AIプラットフォームでは、「AIの力をすべての人に届ける」というコンセプトを実現させるために、連携できるモデルやアプリケーションを今後も増やしていきます。
個別相談のお申し込みをこちらで受け付けております。是非積極的にお声がけいただければ幸いです。