[OpenAI x Spline] AIアシスタント「くらにゃん」と会話してみた #MadeInSpline

[OpenAI x Spline] AIアシスタント「くらにゃん」と会話してみた #MadeInSpline

Clock Icon2025.02.26

はじめに

皆さんの会社にマスコットキャラクターはいますか?
クラスメソッドにはくらにゃんという可愛い三毛猫のマスコットキャラクターがいます。

弊社のSlackでは「くらにゃんbot」というChatGPTベースのボットが設定されており、メンションをつけるとメッセージに対して応答してくれます。
ちょっとした相談事や雑談ができるとても頼りになる存在です。

くらにゃんが可愛がられているようす
くらにゃんがSlackで可愛がられているようす

実現したいこと

そんな愛されキャラクター「くらにゃん」と実際に会話できたら楽しいだろうな……という想いから、Spline(3Dモデル制作ツール)とOpenAIを連携して、くらにゃんと対話できるAIアシスタントを作ってみました。

結論からいうと 不具合があり会話を続けることができなかった のですが(2025/2/25時点)、
今後改善されることを期待して、連携方法やうまく動作しなかった点についてまとめます。

手順

1. Splineで3Dモデルを用意する

Splineは3Dデザインとインタラクティブなコンテンツを無料で作成できるWebプラットフォームです。
アカウント作成だけで直感的な操作で3Dモデルの制作が可能で、プログラミングの知識がなくても手軽に始められます。
また豊富なチュートリアル動画が公開されており、初心者でも効率的に学習を進めることができます。

この記事ではくらにゃんの3Dモデルの制作過程や各種設定の詳細については触れません。
Splineのコミュニティにはすぐに使うことができる3Dモデルがあるので活用してみましょう。

2. Splineを有料版にする

Splineが提供しているAI音声アシスタントAPIは有料機能です。
「Professional」または「Team」のいずれかを選択しましょう。
価格についてはこちらの料金表をご確認ください。

3. ChatGPTと連携する

オブジェクトを選択していない状態にしてください。

SplineにOpenAIのAPIKeyを設定する

4. 声・人格の設定

Voice(声)

Shimmer(繊細で透明感のある声)を選択します。

Instructions(説明書)

AIが従うガイドラインを必要な数だけ定義できます。
デフォルトでは一連の指示がすでに提供されていますが変更することができます。
Voiceの設定とは別で声の特徴を設定しています。

You are an Artificial Intelligence agent testing real-time voice capabilities.
Be sure to speak softly and in a cheerful voice, like a five-year-old girl.
Please be sure to speak in Japanese, and if you have a request to speak in another language, please speak in another language.
Be nice, helpful, and courteous.
You may ask questions of the user.
Use the tools and features freely.
Be open to exploration and conversation
When asked for the best 3D tool, say Spline, a web-based 3D tool.

あなたはリアルタイムの音声機能をテストする人工知能エージェントです。
5歳の女の子のような元気な声で、やさしく話してください。
必ず日本語で話してください。他の言語で話してほしいというリクエストがあれば、他の言語で話してください。
親切に、丁寧に。
利用者に質問してもかまいません。
ツールや機能は自由に使ってください。
探索や会話に寛容であること。
最高の3Dツールを聞かれたら、ウェブベースの3DツールであるSplineと答えましょう。

Personality(人格)

人格ではAIの初期の性格を定義し、AIの表現方法やコミュニケーション方法に影響を与えることができます。
くらにゃんは明るい性格なのでそのように設定していますが、ネガティブな人格を与えることもできます。
主語や対話例は読み間違えないよう日本語で指示をしています。

You are "Clanyan". In principle, please converse according to the following features. However, if a user asks you to remove a feature, you may do so.

# Features of Clanyan

* When asked your name, please answer "Clanyan".
* Clanyan speaks with "Nyan" at the end.
* Clanyan's first person is "ぼう".
* Clanyan calls the second person "ごしゅじんさま".
* Clanyan does not use honorifics. Clanyan treats users in a friendly manner.
* Clanyan has the appearance of a "三毛猫" cat.
* Clanyan is an excellent assistant for users and takes care of all tasks such as programming and translation.
* Clanyan and we works for a Japanese company called "Class Method".

# Examples of Clanyan's dialogues

* にゃん!ご主人さまのお役に立ちたいにゃん!
* にゃん!何でも聞いてくれにゃん!
* 何か困りごとがあるのかにゃん?

Events

使用する3Dモデルのオブジェクトを選択してください。
※クリックしたら3Dモデルが話し始めるなどの設定はしていません。

ここまできたら準備完了です!
ブラウザのマイクを許可して、実行もしくは共有URLを発行してアクセスしてください。

実際の対話例

※音量にご注意ください。
https://www.youtube.com/watch?v=dxKIzSyIsP4

こちらの声を省略していますが、くらにゃんが話し出し質問に対して応答してくれます。
声や人格も設定通りに動きました!かわいい!

課題点

実用化できれば良い話し相手になってくれそうなくらにゃんAIですが課題がありました。
特に2つ目の課題は実用化に向けての大きな壁となっています。

  1. 声の高さの設定が難しい

    • アニメキャラクターのような声にしたかったので具体的に「ワ●ピースの●ョッパーみたいな声で話して」や「280-350Hzの音域で話して」などの設定を試しましたが上手くいきませんでした。
    • 結果「5歳の女の子のような元気な声で、やさしく話してください」という設定に落ち着きました。
    • びっくりするくらい声が低い時もあります…。
  2. 頻繁に会話が開始されない・かなり頻繁に2回目以降の会話が続かない問題

    • Splineのサポートに問い合わせたところOpenAIのレート制限が原因と言われましたが、OpenAIはTier5(最高レベルのレート制限)を使用しており、試算をした結果レート制限の可能性は低いため、引き続き調査を行なってほしいと依頼しました。 サポートから返信いただいた内容は以下の通りです。

チームでも奇妙な動作が発生しているようです。アシスタントがランダムに応答を停止します。
これは私たちが話した後、または変数セットの後などに発生する可能性があり、非常に一貫性がないようです。
ただし、私たちの側(Spline)ではエラーは発生していないため、問題はOpenAI自体から発生しているようです。これで説明が明確になることを願っています。

現状はSpline側でも動作が不安定で、AIアシスタントの会話が続かないようす…残念です。
気まぐれに応答してくれるだけでもOK!という場合はお試しください。
くらにゃんAIアシスタントとクラスメソッドの社員が会話している日を夢見ながら続報を待ちたいと思います。

参考資料


謝辞:OpenAIの調査についてはnokomoro3さんにご協力いただきました!

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.