三歩あるけば物も忘れる

お腹のお肉がメタボックル

ユーザ用ツール

サイト用ツール


OriginalTools:Windows:PromptActor

PromptActor

低VRAMで動く対話AI「PromptActor」を作ってみたー!

概要

ローカル環境で動作する対話AIの仕組みを試作しました。

一般的に、生成AIで自然な会話や正確な回答を実現しようとすると、パラメータ数の多い高性能なモデルが必要になり、大容量のVRAMを積んだ高価なGPUや、クラウドサービスの利用が前提になります。
一方で、ローカルで動く小型のモデルは、キャラクターになりきらせると同じ言葉を繰り返したり、質問をオウム返ししたりと、そのままでは実用が難しいという課題がありました。

そこで本仕組みでは、生成AIの役割を「知識をもとに事実だけを答える」ことに絞り、それ以外の処理をすべてソフトウェア側の制御(SW制御)で行う構成にしました。
入力文の分解、知識の検索、キャラクターの口調への変換、挨拶や前置きの付与などは、あらかじめデータベースに登録したルールで処理します。生成AIが担当するのは全体のうち1工程だけです。

利点

・低VRAMで動作する:生成AIには短い指示と必要な知識だけを渡すため、小型の軽量モデルでも動作します。高性能なGPUやクラウドサービスを用意する必要がありません。
・回答の根拠を確認できる:回答は知識DBに登録した情報をもとに作られ、取得元のURLも記録しているため、内容の真偽をすぐに確かめられます。
・キャラクターの口調が崩れない:口調や挨拶はルールで付けるため、小型モデルでも毎回安定したキャラクター性を保てます。
・使うほど賢くなる:知識はキーワードやURLから自動で取得・蓄積され、誤った判定もチャット画面から登録し直して、その場で改善できます。
・情報が社外に出ない:すべてローカル環境で動作するため、社内の情報を外部のサービスに送信する必要がありません。

全体の流れは添付の図のとおりです。今後は回答精度の向上と、社内の業務知識への応用を検討していきたいと考えています。

「情報が社外に出ない」の部分は、ネットからの知識取得(Wikipedia)は外部通信になるので、社内資料だけで使う場合の利点として書いています。
短いチャット投稿用や、上司向けの報告書向けなど、用途に合わせて長さを調整することもできます。

利用ケース

どのケースにも共通する強みは、知識と口調を別々に管理できることです。
同じ知識DBのまま、社内ではビジネス口調、社外イベントではマスコット、というように、相手に合わせて話し方だけを差し替えられます。

利用ケース 口調 知識DBの中身 この仕組みが活きる点
社内の問い合わせ窓口 丁寧語(なりきりなし) 社内規程・マニュアル・手続き 社内で完結し情報が外に出ない。回答の根拠(登録元)を確認できる
プロジェクトの知識共有 丁寧語 仕様・設計メモ・調べた技術情報 1人が調べた知識を全員が使える。PJごとに閲覧範囲を分けられる
自治体・観光地の案内 マスコットキャラ 観光地・イベント・行政手続き キャラの口調が崩れない。変なことを言わせない安心感
企業の公式キャラ ブランドキャラ 製品・サービス情報・FAQ ブランドイメージを守りつつ問い合わせに対応できる
展示会・イベント受付 元気なキャラ 会場案内・出展内容・スケジュール 低スペックPC1台で動かせるので、会場に持ち込みやすい
子ども向け学習教材 先生役のキャラ 教科の内容・用語解説 登録した内容だけを答えるので、不適切な回答を防ぎやすい
VTuber・個人クリエイター 自分のキャラ 設定資料・配信の話題 高価なGPUがなくても、自分のキャラを安定して動かせる

今後の展開

知識DBや会話のルール、SW制御の処理を社内サーバーで一元管理し、チーム全員で共有できる形を目指しています。
1人が登録した知識を全員が使え、誰が使っても同じ口調・品質の回答が得られます。

生成AIの置き場所については、次の2つの案を考えています。

案1:生成AIは各自のPCで動かす

生成AIの処理が各PCに分散されるため、利用者が増えても待ち時間が増えにくく、高価なGPUサーバーも必要ありません。

案2:生成AIも社内サーバーにまとめる

各PCはブラウザだけで使え、全員が同じモデルを使うため回答の質も自然にそろいます。生成AIに渡す内容が短い本仕組みは、1台のサーバーで多くの人の質問を同時に処理しやすい点でも有利です。

小型モデルであればCPUのみでも動作するため、GPUのない業務PCやサーバーでも導入できる見込みです。

参考:操作画面(サンプル)

コメント

コメントを入力:
K K​ A​ O X
 
OriginalTools/Windows/PromptActor.txt · 最終更新: by admin