機能要件
本システムが提供する主要な機能要件を以下に記述する。
1. ユーザー管理
- ユーザーはシステムに登録、ログイン、ログアウトできる。
- ユーザーは自身のプロフィール情報を管理できる。
2. グラフデータ管理
- ユーザーはCSVまたはJSON形式でグラフデータをアップロードできる。
- アップロードされたグラフデータは永続化され、プロジェクトとして管理される。
- ユーザーは自身のプロジェクトに紐づくグラフデータを閲覧、選択できる。
3. グラフ可視化
- ユーザーはアップロードしたグラフデータをインタラクティブに可視化できる。
- 可視化されたグラフは、ノードのサイズ、色、レイアウトなどを変更できる。
4. LLM連携によるグラフ分析
- ユーザーは自然言語でグラフの分析や可視化の指示をLLMに与えることができる。
- LLMはユーザーの指示を解釈し、適切なグラフ分析(中心性計算、コミュニティ検出など)を実行できる。
- LLMは分析結果に基づいてグラフの可視化設定を提案・適用できる。
- LLMは曖昧な指示に対して、明確化のための質問をユーザーに投げかけることができる。
5. リアルタイムインタラクション
- ユーザーの操作やLLMからの応答はリアルタイムでUIに反映される。
- グラフの可視化設定の変更は即座にUIに反映される。
6. 履歴管理
- ユーザーとLLMの対話履歴は保存され、後から参照できる。
- グラフの可視化設定の変更履歴も保存される。
7. セキュリティ
- ユーザー認証はセキュアな方法で行われる。
- LLMへの入力およびLLMからの出力は厳格に検証され、セキュリティリスクが排除される。