見出し画像

講演「LLMと3Dアバターで実現! デジタルヒューマン開発の舞台裏とノウハウ」~Developers Summit 2024 summer~

2024年7月23日(火)・24日(水)に、「Developers Summit 2024 Summer」が開催されました。本イベントに、SCSKおよび株式会社Insight Edgeが登壇し「デジタルヒューマン」技術に関する最新の研究成果について講演しました。本記事では、当日の講演内容と登壇者のコメントをご紹介します。


イベント概要

「Developers Summit(デベロッパーズサミット:デブサミ)」は、2003年から毎年開催されている日本最大級のソフトウェア開発者向けカンファレンスです。本カンファレンスでは、ソフトウェア開発者が最新のトピックを学び、ロールモデルとなるデベロッパーと出会う機会を提供しています。

Developers Summit 2024 Summer 公式サイト
https://event.shoeisha.jp/devsumi/20240723

登壇者紹介

古川 孔佑
SCSK株式会社
技術戦略本部 先進技術部

2010年頃からXR技術に興味を持ち、大学ではXR技術でひらめきを創出するための研究を実施。2021年にSCSKに入社。ヘッドマウントディスプレイを用いた遠隔リモートサービスの開発に携わる。

田島 正規
株式会社Insight Edge
技術部開発チーム ソフトウェアエンジニア

大学院卒業後、電気メーカーにて画像センサを利用したML Ops向けの画像処理・アプリケーション・バックエンド開発に従事。2023年に株式会社InsightEdgeに入社。住友商事や協業パートナーSCSK向けのアプリケーション開発を担当。生成AIから数理予測まで幅広いAIシステムの開発を行う。

講演内容

デジタルヒューマン開発の経緯

2024年6月、SCSKは八重洲に「SCSK LINK SQUARE」という新しいブランド拠点を開設しました。この場所では、お客様にSCSKの技術力を知ってもらい、未来の技術を感じてもらうための活動を行っています。その一環として、弊社社長をモデルとしたデジタルヒューマンの開発が始められました。

デジタルヒューマンは、人工知能と高度なグラフィックス技術を組み合わせて、人間のように振る舞うデジタルアバターのことです。開発のためにはまず、人間らしい会話を実現するために、社長の見た目と声を忠実に再現することが必要でした。また、新しいオフィスの案内を行うために、SCSKや八重洲オフィスに関する情報をインプットし、その情報を基に質問に答える機能も求められました。

デジタルヒューマンの要件①
デジタルヒューマンの要件②

デジタルヒューマンの応答フロー

講演では、開発したデジタルヒューマンのデモンストレーションを行い、上記の要件を満たした会話ができる様子をお見せしました。受け答えの技術的な部分については、以降で説明する構成図を用いて紹介しました。

◆受け答えの流れ

1. ユーザーの行動をキャッチ:
- カメラやマイクを使ってユーザーの動きを取得します。

2. 認識処理:
- 取得した情報をYOLOX (※1)やChatGPT with Vision(※2)の技術で認識し、テキストに変換します。

3. バックエンドに送信:
- このテキストをPub/Sub(※3)を通じてバックエンドに渡します。

4. アバターへの指示:
- バックエンドからテキストの指示が返され、それに基づいてアバターが話したり、ジェスチャーしたりします。

5. Unityアプリに送信:
- 最後に、テキストをUnityアプリに送信し、アバターが実際に発話やジェスチャーを行います。

このようにして、リアルタイムの会話と動きを実現しています。その上で、デジタルヒューマンの構成図を基に、受け答えのフローについて紹介しました。

※1 物体検出のためのディープラーニングモデルで、YOLO(You Only Look Once)シリーズの最新版
※2 OpenAIのapi 参照URL(https://platform.openai.com/docs/guides/vision
※3 信頼性とスケーラビリティに優れた非同期メッセージサービス。メッセージの生成するPublisherと受信するSubscriberからなる。

デジタルヒューマンの全体構成①

次に、バックエンドに送られたテキストデータは以下の様な流れでデータを処理します。

◆ワーカーによるテキストデータ処理

1. EventParserの役割:
- EventParserは、サーバーから送信されるイベント(server-sent events)を解析するためのストリーミングパーサーです。テキストを構文解析し、元となったイベントを判別します。その上で、後続に必要な処理を伝達します。

2. Agentの処理:
- Agentは、前段でプリミティブに処理された内容をRAG(※4)や会話履歴などのツールを仲介し、最終的なアバター動作を作成します。また、相槌などの初期動作を一時的に記憶することで、素早い発話出力を実現しています。
- Agentでは、展示情報や会話履歴に基づいた発話を行い、会話中に処理した内容を一時的に記憶することで、迅速な発話出力を実現しています。

※4 テキスト生成に、外部情報の検索を組み合わせることで、より文脈に沿った回答をさせる技術

デジタルヒューマンの全体構成②

開発で重要だったポイント

最後に開発で重要だったポイントとして、「対話インターフェース」と「LLM(大規模言語モデル)の選定とアップデート」について説明しました。

 対話インターフェース
対話インターフェースの説明では、社長の見た目や目・声・耳といった人間らしい機能について触れました。それぞれの機能を実装する上での苦労した点や重要な点を紹介しました。特に見た目の部分では、単に社長の見た目を模写するだけでなく、瞬きや目の動き、発する言葉に応じた口の動きを表現するなど、人に近い動きを実現しています。このおかげで、来場者から「社長、ゴルフの調子はどうですか」と尋ねられるようになり、単なるAIとの会話ではなく、人と人の会話が実現していると実感できました。

 LLM(大規模言語モデル)の選定とアップデート
生成AIを用いたアプリケーション開発においては、LLMの発展に右往左往しない仕組み作りが重要 です。今回の開発スケジュールにおいても、LLMの発展は非常に速く、リリース中でのリプレースが想定されます。このため、LLMのアプリ導入に際して、実装面で密結合をさけるだけでなく、アプリケーション性能を即座に検証する仕組み作りも重要です。これにはプロンプトの管理、評価実行、結果の判断が必要です。また、この取り組みを効率よく進めるためには、開発組織に適応したシステムの構築が必要です。

LLM選定のTips

講演者コメント

古川さん
今回の発表はエンジニア向けの発表ということで、デジタルヒューマンに使用されている技術について何か一つでも持って帰って頂けたらという気持ちで発表させて頂きました。登壇後の質問コーナーでは、たくさんの方からポジティブなコメントを頂けたので、有意義な時間を過ごして頂けたのかなと思います。質問に来られたのは若い方が多かった印象で、新しい技術に対しての興味関心が強いと感じました。今回のデジタルヒューマンは初号機なので、これからも新技術を取り入れ、より多くの方に興味を持ってもらえるよう進化させていきたいです。

田島さん
講演後の質疑応答や懇親会を通じて、デジタルヒューマンに対する興味関心や協業可能性を模索できました。このような外部講演は自社の技術に対する外的な興味を認識する場としてとても有効であると再認識しました。さらに、エンジニアが集まる場でプレゼンスを向上させることは、優秀な人材を獲得していく、生存戦略につながる為、引き続きコミットしていきたいと思います。
最後にInsightEdgeでは従来の数理予測に限らず、生成AI領域にも力を入れおり、アカデミックなものから実用的なものまで多数の知見を蓄積しています。生成AIを用いたシステム開発に興味がある方は、ぜひ我々にお声がけください。


SCSKでは今後共に活躍していただける高度デジタル人材を募集しています。詳細は各採用サイトをご覧ください。

新卒採用サイト
https://www.scsk.jp/recruit/saiyo/
 
キャリア採用サイト
https://www.scsk.jp/recruit/career/