見出し画像

美少女と一緒に開発しようぜ!!【Open Interpreter】

こんにちは、ニケです。
皆さん、休日返上で個人開発に打ち込んでいますでしょうか?

今回は、私が個人活動としてメインで開発している美少女OPInterpreterのソースコード(簡易版)を公開したので、使い方を説明します。
下記の手順を順番に実行してもらえれば、この動画のようなことはできるようになっているはずです。

普段開発している方であれば、フロントとサーバーのリポジトリをクローンしていくつかコマンドを実行すればいいだけなので、かなり簡単だと思います。

非エンジニアの方でも実行できるように説明していきますので、臆せず読み進めてみてください(途中ChatGPT頼りあり)。

Windows、Mac、Linuxで動作確認済みです。

超簡略図

フロントアプリ

フロントUIにはpixiv社のChatVRMを改造して使わせてもらっています。

ChatVRM

ChatVRMは、ブラウザで簡単に3Dキャラクター(VRM)と会話ができるアプリです。
OpenAI APIキー と koeiromap APIキー を設定することで、誰でも簡単にGPTベースの対話を3Dキャラと楽しむことができます。

キャラクターモデルにVRMを使用しているため、キャラの変更も容易です。
VRoid Studioというソフト(無料あり)で自分だけのキャラを作成することが可能です。操作もよくあるゲームのキャラクタークリエイト感覚でできるため、小一時間もあればオリジナルキャラを用意できるでしょう(沼ったら一瞬で数時間溶けます)。

準備

下記の記事に詳細を転載しました。
『AIキャラとの対話』という項目を進めていただければ準備はほぼ完了です。

今回のようにサーバーアプリと連携する場合は、上記の記事の設定に加え、外部連携モードをONにしてください。
これより、後述するサーバーからWebSocket接続を受け付けする状態になります。

なお、その他のAI設定は外部連携モードがONの場合は対応していないので設定不要です(非表示になります)。

大体このような感じですが、とりあえず美少女 x Open Intepreterを試したいだけなら、外部連携モードがONで、Text to Speachの設定に問題がなければ他の設定は気にしなくてよいはずです。

サーバーアプリ

Open Intepreter

Open Interpreterは、ChatGPTに搭載されているAdvanced Data Analysis(旧 Code Interpreter)のOSS版みたいな感じのものです。

詳細な使い方などは界隈でも有名な方々の下記の記事が参考になると思います。

準備

下記のリポジトリをクローン or ダウンロードしてください。

その後、.envにOPENAI_API_KEYを設定したあと、次のコマンドを実行してください。

docker-compose up -d --build

docker-compose コマンドを使用しているので、こちらも実行時にエラーが出た場合はChatGPTに聞いて解決しましょう。そこまで難しくないと思います。

その他詳細に使い方を知りたい方は、下記にまとめていますのでこちらを参考にしてください。

動かしてみる

フロントアプリを起動し(npm run dev)、もろもろ好みの設定をした上で外部連携モードがONにしてください。そしてTTSの設定が正しいことを確認します。

この状態でサーバーアプリを起動(docker-compose up -d --build)してください。

これで使えるようになったと思います。
下の入力フォームから適当な依頼をしてみましょう。マイクボタンを押せば音声入力も対応しています。

動きましたね!!

課題

試してもらうとわかると思いますが、実用性はほぼ無いことに気づくと思います(泣)
一応マイク認識もできるので音声対話しながらコードを書いてもらうことは出来ますが、ぶっちゃけChatGPTのほうが使いやすいです。

これは1か月前に美少女OPInterpreterを公開したときからの私の課題でもあります。
いま改良案をいろいろ考えているので、実装次第これからも進捗公開を続けていきたいと思っています。

既知の不具合など

  • 文章が長い場合、Koeiromapの文字列上限を超えてしまい音声が再生されないことがあります。気になる場合は有料版を使用するか、GoogleTTSを使ってみてください。自力でコードを追加する必要がありますが、VOICEVOXは個人的にオススメです。

  • キャラクターに個性・性格を設定することができません。

  • Live2Dモデルには対応していません。私の動画ではLive2Dモデルが動いていますが、かなり無理やり実装しているので動作不安定で公開できるレベルに無いためです。

おまけ

今後も進捗はYoutubeで公開していきますので、チャンネル登録してもらえると嬉しいです🙇‍♀

不具合を見つけたらTwitterからDMでこっそり教えてください!!

この記事が気に入ったらサポートをしてみませんか?