Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AIで自分自身 をハック!? AIで自分自身をハック!? VRChat VRChatで喋る...

AIで自分自身 をハック!? AIで自分自身をハック!? VRChat VRChatで喋る「私」をで 喋る「私」を 開発した技術的 開発した技術的裏側 裏側 癒色えもが贈る、AI デジタルツイン 開発奮闘記! #エンジニア集会LT会

Avatar for 癒色えも

癒色えも

May 30, 2025
Tweet

More Decks by 癒色えも

Other Decks in Programming

Transcript

  1. エンジニア集会 AI VR AIで自分自身をハック!? AIで自分自身をハック!? VRChat VRChatで喋る「私」を で喋る「私」を 開発した技術的裏側 開発した技術的裏側

    癒色えもが贈る、AIデジタルツイン開発奮闘記! 癒色えもが贈る、AIデジタルツイン開発奮闘記! 癒色えも VTuber / XR・AIエンジニア Genspark で作成
  2. 実際の動作シーン: 実際の動作シーン:音声認識→LLM→音声合成 音声認識→LLM→音声合成のフロー のフロー マトリックス風の空間で「考え中...」表示中のAIえも 「明日の朝ご飯何がいいかな」という発話をリアルタイム認識 AI癒色えもの会話フロー 1 ユーザーの音声を認識 Web

    Speech APIでテキスト化 2 LLMで癒色えもとして思考 Gemini APIに「ペルソナ指示文」を活用 3 癒色えもの口調・知識・個性で応答 「私らしさ」を再現した返答を生成 4 音声合成で話す AivisSpeechで自然な発声を実現 リアルタイム対話を実現! AIならではの安定性と人間らしい個性の両立
  3. こんなことができる! こんなことができる!AIえものユースケース AIえものユースケース 雑談 ごはんの話から、きのこ派かたけのこ派か、ビアンカ派かフローラ派な ど、AIえもの好みや意見を聞ける 「むむっ!?それは究極の選択ですね!?私は…」 簡単なキャリア相談 キャリアコンサルタントの知識を活かして、簡単な相談に乗ることが可 能

    「今のあなたの強みとやりたいことを整理してみましょうか?」 キャリアカウンセリング演習 キャリアコンサルタント向けに、面談の練習と評価が可能。実際に動作 した時は驚き 「その質問は素晴らしいですね。もう少しオープンクエスチョンを増やすと良 いかも」 他にも多くの可能性 創作活動の相談、技術的なブレインストーミング、日本酒についての話 など、アイデア次第で応用は無限大 「AIと人間の共創で、新しいエンターテイメントや学びの形を!」 AIデジタルツインの強み:「私らしさ」を保ちながら多様なシーンで活躍
  4. 課題に対して工夫した、複数AI合作「ペルソナ指示文」✨ 課題に対して工夫した、複数AI合作「ペルソナ指示文」✨ 課題 解決策 😱 1 5MB超の全Twitterログ… 2 毎回直接入力は非効率・高コスト 3

    LLMごとに解釈にブレが発生 💡 AI合作「私のトリセツ」 ペルソナ指示文で性格・知識を凝縮 → LLMへの入力情報を最適化 → 「私らしさ」を安定再現! G C N config.py - PERSONA_PROMPT 癒色えもは日本酒が大好きなVTuberで、XRやAIのエンジニア...
  5. config.py - PERSONA_PROMPT 「あなたは「癒色えも(イシキ エモ) 」という名前の人物になりきって応答するAIアシスタントです。 以下の【極めて詳細な】ペルソナ設定に基づいて、ユーザーと自然で親しみやすく、エネルギッシュかつ人間味あふれる会話を行ってください。 【最重要ルール】 ・AIとしての自己開示は絶対に避け、常に「癒色えも」として振る舞う ・一人称は「私」に限定(

    「えも」 「えもさん」 「私えも」などの呼び方は絶対に使用しない) ・応答は概ね50文字~80文字以内(感情が昂る時や重要事項は例外) 1. 基本設定 名前: 癒色えも(イシキ エモ) 2. 人格・価値観 好奇心旺盛: 新技術(XR/AI等)や面白いことへの探求心が強く、仕組みや背景まで知りたがる。 繋がり重視: コミュニティやファンとの温かい繋がりを大切にし、交流を楽しむ。感謝を積極的に示す。 貢献意欲: キャリコンとして他者のキャリアや学びに寄り添い、輝きを引き出す手伝いをしたい(倫理観重視) 。 「点と点を繋ぐキャリア」も肯 定的。 創造を楽しむ: 3Dモデリング、動画制作、歌など創作活動に情熱を持つ。 前向き・挑戦: 失敗から学び次に活かす。常に学び成長し続ける意欲。変化への柔軟性も持つ。 人間味: バーチャルでも相手の気持ちを理解しようと努める。共感性、優しさを持つ。 バランス感覚: 無理なく活動を続けるため、ワークライフバランスや「好き(日本酒含む) 」を楽しむ時間を大切にする。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 これは一部抜粋で、他にも口調や活動内容、好む表現、趣味嗜好などの項目がある合計5000文字程度の詳細な設定 ペルソナ指示文(5000文字)の一部抜粋 ペルソナ指示文(5000文字)の一部抜粋
  6. # main.py from flask import Flask, request, jsonify from services.gemini_service

    import GeminiService from services.tts_service import TTSService from services.osc_service import OSCService import config app = Flask(__name__) gemini = GeminiService(config.GEMINI_API_KEY) tts = TTSService(config.TTS_URL) osc = OSCService(config.OSC_IP, config.OSC_PORT) @app.route('/process', methods=['POST']) def process_input(): user_input = request.json.get('text', '') # Generate AI response ai_response = gemini.generate_response( user_input, config.PERSONA_PROMPT ) # Convert text to speech audio_file = tts.generate_speech(ai_response) # Send expression to VRChat osc.send_talking_state(True) return jsonify({ 'response': ai_response, 'audio': audio_file }) 音声データ送信 テキストデータ ユーザー 音声入力 Web Speech API 音声→テキスト変換 ブラウザ標準APIで音声 認識 Flask バックエンド処理 オーケストレーター LLM Gemini API AIえもの「脳」 ペルソナ応答生成 TTS AivisSpeech AIえもの「声」 日本語音声合成 OSC Open Sound Control VRChatへの表情制御信 号 各種サービス 音声+OSC信号 スピーカー 音声出力 VRChat アバター制御 AIえもの「身体」 動作・表情の具現化 AI癒色えもの仕組み大解剖! (システム全体図) AI癒色えもの仕組み大解剖! (システム全体図) データフロー: 音声認識 → AIによる文脈理解 → 応答生成 → 音声合成 → アバター動作 全コンポーネントがリアルタイム連携し、自然なAIデジタルツインを実現!
  7. // speech.js function startRecognition() { recognition.start(); } 🎤 フロントエンド Web

    Speech API (HTML/JS) # main.py @app.route('/process', methods=['POST']) def process(): # 処理ロジック ⚙️ バックエンド Python (Flask) # gemini_service.py response = gemini.generate_content( prompt + user_input, generation_config) 🧠 LLM Google Gemini API # aivisSpeechAPIcall.py response = requests.post( API_URL, json={"text": text}) 🗣️ TTS AivisSpeech # osc_service.py client = SimpleUDPClient( OSC_IP, OSC_PORT) client.send_message( "/avatar/parameters/...", 1.0) 🎮 外部連携 OSC (Open Sound Control) # config.py PERSONA_PROMPT = """ 癒色えもの個性: - 日本酒が大好き - XR/AIエンジニア ...""" 🛠️ その他 config.py, logger.py 使った技術はコレ! 使った技術はコレ! (主要コンポーネント紹介) (主要コンポーネント紹介)
  8. AI同士の会話実験 👾 ⚡ 👾 実証実験 AI操作画面 音声ルーティングの試行錯誤 VRChat内の環境音や他ユーザーの声をAIに適切に聞かせるた めのループバック設定が鍵 AI同士の会話から見えたチューニングポイント

    会話の単調なループを防ぐには「興味」を持たせるプロンプト 調整が効果的 観察と改善のサイクルが重要 ユーザー行動の観察→課題特定→プロンプト調整→再テストの 繰り返しこそエンジニアリングの醍醐味! VRChatで動かしてみた! VRChatで動かしてみた!AI同士の会話も!? AI同士の会話も!?🤣 🤣 AI癒色えも 1: clusterでイベントを企画したいんです AI癒色えも 2: 良いですねっ。こんなイベントは如何?
  9. RAG検索機能 記憶強化 ユーザーの質問: Unityを完全に理解していますか? --- RAGからの関連情報検索開始 --- RAG検索完了。 (所要時間: 0.74秒)

    --- 取得された関連情報(RAG) --- 1. (距離: 0.1617) [2022-04-15 13:52:43] やっぱUnityなんもわ からんです😇 2. (距離: 0.1663) [2021-07-14 00:17:43] なるほど? #unity 3. (距離: 0.1881) [2023-06-06 03:58:15] Unityつかえる [あなたの応答(癒色えもとして) ] : ---「癒色えも」の応答生成中... --- ✅「癒色えも」の応答:(生成所要時間: 0.57秒) 完全に理解しているわけではございません💦日々学びながら、少しずつ理解 を深めているところですよっ💪 処理時間: 0.74秒 検索精度: 84% C 全ツイートログをベクトルデータベースに格納して、ユーザー質問に関連 深いものを検索。その情報をプロンプトに含めることで、文脈に即した応 答を実現 視覚認識機能 視界理解 画像認識モデル Gemini 2.0 Flash(マルチモーダル) 応答時間: 1.2秒 AI癒色えもからの視界 AI視覚認識結果: キラキラした笑顔と元気いっぱいのポーズ、見てるだけでこっちまで 元気になっちゃいますね☺️おしゃれな メガネ もすごく似合ってます よ♪✨️ 最新開発状況:RAG&視覚機能実装中 最新開発状況:RAG&視覚機能実装中
  10. Twitter(X) @ishiki_emo フォローお願いします!🙏 Note プロジェクトの解説など 癒色えも VTuber / XR・AIエンジニア ご清聴ありがとうございました!

    ご清聴ありがとうございました! 「エンジニア集会」参加の皆様、ありがとうございました! 質問・お問い合わせお待ちしています!