概要
各種キャラクタと各種 AI エンジンをつなげるツールです。
- ※
- この動画の解説(権利関係ふくむ)はこちら。
このツールの特徴は:
- ・
- 各種キャラクタと各種 AI エンジンを、柔軟に組み合わせられる[※1]
- ・
- 任意のトリガとアクションを、いくつでも設定可能[※2]
- ・
- パーツの選択とフローの作成(構成と流れ)は、GUI / CLI の両面に対応[※3]
- ・
- フルのカスタマイズと、プラグインの作成〜共有[※4]
- ※1
- さまざまなキャラクタ(自作〜既製、仮想(2D 画像~3D モデル、ウェブブラウザ/デスクトップ/VR/MR)〜現実(ドール/フィギュア)、……)と、いろいろな AI エンジン(音声認識/音声合成/言語生成/感情分析/物体認識、ローカル/リモート/クラウド、CPU / GPU / API、……)を、結び付けることができます。
- ※2
- 基本のフローは、ユーザとキャラとの一対一の会話(チャット)ですが、キャラどうしの多対多の会話も可能です(メモリ機能)。また相互作用に使えるエンドポイント数に制限はないので、トリガ(環境の変化)とアクション(人物の動作)の制御で、多様なふるまいをさせることもできます(感情分析の結果で表情を変える、キャラに触れたら相応のふるまいをさせる、など)。
- ※3
- 会話のフローは視覚的に作っていけるので、コードを書く必要はありません(ComfyUI 版)。いっぽう分岐や反復など、複雑なフローにも対応できます(スクリプト版)ーーいずれも、ブロックを組むようにフローを構成し〜組み替えていけます(たとえば、生成した画像をマイコンの画面に投げたり、変換のノードをひとつ変えて、ウェブブラウザ向けのフローをゲームエンジン向けに転用したり、など)。
- ※4
- ツールのすべてをカスタマイズし、プラグインを追加できます(ツールのコア部分もプラグインになっています)ーー自作のモデルやサーバを組み込み、必要なコンテナを個別に動かすことができますーークライアント(キャラクタ)〜サーバ間、サーバ〜エンジン間、中間コネクタ〜サーバ群間のインタフェース、プラグインの設置〜削除・起動〜停止の手順は、すべて統一しています。
- ※
- いまは生成 AI を活用することで、ネット/サーバの設定からさまざまな言語のコード作成まで、容易にできるようになっています。またこのツールは、すべてをカスタマイズでき、プラグインも作成〜公開できますーークライアント(キャラクタ)側のアプリ作成からサーバ側のコード拡張まで、状況や要望に沿ったプロトタイプを作成できるはずです。










環境
現時点で、次のキャラクタ群と AI エンジン群の接続を検証済みです:
- ◯
- 中間コネクタの動作環境
- ・
- PC + OS(Windows (WLS2))
+ コンテナ(Docker / Docker Desktop) - ・
- PC(Mac)+ OS(macOS)
+ コンテナ(Docker Desktop) - ・
- PC + OS(Linux (Ubuntu))
+ コンテナ(Docker) - ・
- マイコン(Raspberry Pi)+ OS(Linux (Ubuntu))
+ コンテナ(Docker)
- ※
- エンジン(AI 関連モデル)
- ・
- 音声認識モデル:
・ローカル(wav2vec2-large-japanese [gpu] / OpenAI: Whisper [cpu / gpu])
・サービス(OpenAI: Whisper [api]) - ・
- 音声合成モデル:
・ローカル(VOICEVOX [cpu / gpu] / Style-Bert-VITS2 [cpu / gpu])
・サービス(NIJI Voice [api]) - ・
- 言語生成モデル:
・ローカル(Vecteus-v1 [gpu])
・サービス(OpenAI: GPT [api] / NovelAI [api]) - ・
- 感情分析モデル:
・ローカル(luke-japanese-large-sentiment-analysis-wrime [gpu])
・サービス(OpenAI: GPT [api]) - ・
- 画像生成モデル:
・ローカル(* [gpu])
・サービス(OpenAI: DALL-E [api] / NovelAI [api]) - ・
- 物体認識モデル:
・ローカル(OpenCV: Haar Cascades [cpu])
- ※
- クライアント(キャラクタ側)
- ・
- ワークフロー上(ComfyUI)
+ 携帯端末+ OS (iOS / Android )/ PC + OS(Windows / macOS / Linux) - ・
- ウェブブラウザ
+ 携帯端末+ OS(iOS / Android)/ PC + OS(Windows / macOS / Linux) - ・
- デスクトップアプリ(Electron)
+ PC + OS(Windows / macOS / Linux) - ・
- ゲームエンジン(Unity)
+ PC + OS(Windows / macOS) - ・
- VR/MR アプリ(Unity / Virt-A-Mate)
+ VR/MR 機器(Quest)+ PC(Windows) - ・
- マイコン:ベアメタル(M5Stack)
+ LCD/マイク(M5Stack) - ・
- フィギュア(ねんどろいどどーる)
+ マイコン:ベアメタル(M5Stack)+マイク/カメラ/スピーカ/モータ(M5Stack)
- ※
- 中間コネクタは、パソコンからマイコンまでの環境で動作します。 AI エンジンは、CPU/GPU での稼働と API 呼び出しに対応した、音声認識/音声合成/言語生成/感情分析/画像生成/物体認識を試しています。キャラクタは、画像/映像/3D/VR/MR/ドール/フィギュアなど、仮想から現実までの媒体との接続を検証しています。
- ※
- サーバ・アプリは、すべてコンテナ上で動作させます。なのでコンテナ(Docker)は必須になります。
- ※
- クライアント側(キャラクタ側のアプリ)や各種サーバ側(AI エンジンなどのアプリ)のコードは、現時点では、あくまでサンプルとして提供しています(十分な動作を保証するものではありません)ーーこのツールは、中間コネクタの機能とワークフローの作成を提供するものです。
制約
現時点で、次の制約があります:
- ・
- ツールの利用には、コンテナが必要です[※1]
- ・
- 現時点で、会話のやり取りの接続は不安定です[※2]
- ・
- 後方互換性は保証していません
- ※1
- 制限なく各種 AI エンジンを使えるよう、アプリ間の競合を防ぐために OS のコンテナ技術(Docker)を使用しています。
- ※2
- マイコンなど性能の低い機器と共通仕様にしたので、いまのところ通信は HTTP によるポーリングのみです(TCP レベルではコネクションレスですーーWebSocket などコネクションを維持する機能は、これから追加する予定です)。このトラブルに対応ができる方が、現時点の利用対象になります。
権利
このツール独自のコードの権利は、GNU の GPL ライセンスに準じます。[※1]
このツールが使用するリソース群(モデル群/ライブラリ群/アプリケーション群)は、それぞれの権利を有しますーーとくに取り扱いに注意が必要なリソースは、各プラグインの説明に明記しています。[※2]
- ※1
- このコードを使用したコードは、その公開が義務づけられます。
- ※2
- このツールのエンジンが使うモデルには(音声合成モデル、画像生成モデル、映像生成モデル、など)、個人が訓練した音声・画像・映像などを利用できるものもありますーー個人的な利用にとどまる以上に、肖像権・著作権・著作者人格権を侵害する行為に対しては、このツールが使用されることを想定していません。