← 活動記録一覧

FACTUAL ACTIVITY RECORD · 実際の作業をもとにした活動記録

AIの作業を3Dの知性生息地として可視化する

同期済みのtask、会話、AIタレントを島とオフィスの空間へ投影する初期実装

対象期間:

目的

メインのAIと複数のAIタレントがtaskごとに動く様子は、会話一覧だけでは全体像や関係をつかみにくかった。作業の構造と活動状態を、眺めて理解できる空間として表現する必要があった。

同期済みのtask、turn、message、AIタレントの情報を一つのsnapshotへまとめ、taskを島、AIタレントを3Dキャラクターとして表示し、会話の詳細へも移動できるWebアプリの土台を作ることを目指した。

実装

同期adapterと3D状態変換で、同期済みデータを画面向けのOfficeSnapshotへ変換した。root taskをsession roomとして扱い、子task、担当AI、messageを同じ表示単位へ束ね、endpoint実装から返す構成にした。

  • 3D scene表示はtaskごとの島、AIキャラクター、象のモニュメント、領域ごとの地形を3D空間へ配置する。
  • 3D application表示はsession選択、AIタレント詳細、会話表示、読み込み状態を管理する。
  • 空間配置処理は複数taskの島配置を決め、移動処理とmotion処理は移動経路と動作状態を計算する。

Blender用の生成scriptを用意し、知性生息地、オフィス、session island、10名のAIタレントとgeneric characterを編集可能なsourceとWeb向け3D assetの両方で管理した。表示用portraitもAIタレントごとのvisual metadataへ対応付けた。

対象component群にbrowser、server、proxyの接続境界を分け、login画面と認証cookieを使って同期済みデータへ接続した。同期元のlocal fileをWebアプリから直接読まず、停止中でも保存済み履歴を参照できる構成にした。

  • 実データを取得できない開発時にも画面を確認できるdemo snapshotを分離した。
  • 3D asset、portrait、island配置、移動とanimation、server mappingをそれぞれtest可能な単位へ分けた。
  • 秘密情報をlocal環境設定へ置き、exampleには値を含めず、生成途中のbackupも管理対象から除外した。

画面、3D scene、server変換、Supabase接続、asset生成手順をproject guideへまとめ、実データ経路と開発用表示の違い、同期元が停止している場合の更新限界を記録した。

3D表示はlocal sourceをbrowserから直接読むのではなく、同期済みdatasetをOfficeSnapshotへ変換する境界を置いた。

同期済み会話を3Dの知性生息地へ投影

図を描画しています…

確認したこと

確認結果

初期実装は76ファイルで構成され、Web画面、API、3D asset、生成script、server mapping、接続設定、testを含んでいた。

taskごとの島、10名のAIタレント、会話詳細、移動・待機などの3D表示に必要な処理が一つのアプリとして組み合わされた。

server mapping、portrait、island配置、roaming、motionを含む17件のtestが成功した。

秘密情報を含むlocal設定とBlenderのbackupが成果物から除外されていることを確認した。

cutoff時点で初期実装は対象へ反映されていた。公開環境への配備、長時間運転、複数端末、負荷・accessibilityの包括確認はこの範囲では実施していない。

完了とした根拠

同期済みのtaskと会話を3D空間へ変換する画面・API・asset・mappingが揃い、17件のtestと秘密情報の非包含を確認した初期実装が対象へ反映されたことをもって完了とした。