メインコンテンツまでスキップ

プラットフォームアーキテクチャ

システム構成図

┌─────────────────────────────────────────────────────────────┐
│ PlantPulse AI │
│ │
│ ┌───────────────────────────────────────────────────────┐ │
│ │ AI Chat (코파일럿 UI) │ │
│ │ 자연어 대화 · SSE 스트리밍 · 리치 시각화 │ │
│ └────────────────────────┬──────────────────────────────┘ │
│ │ │
│ ┌────────────────────────┼──────────────────────────────┐ │
│ │ 내장 에이전트 (AgentOrchestrator + ToolRegistry) │ │
│ │ 에이전트 루프 · 도구 자동 호출 · LiteLLM(gpt-4o) │ │
│ └────────────────────────┬──────────────────────────────┘ │
│ │ │
│ ┌────────────┬───────────┴────┬─────────┬───────────────┐ │
│ │ 통합 MCP │ TimeSeries │ RAG │ AURA LLM │ │
│ │ (온톨로지 │ -Insight │(LightRAG│ LLM·Embed·Re │ │
│ │ 포함) │ 27도구 │ 서버) │ rank·Multi │ │
│ └─────┬──────┴───────┬────────┴────┬────┴───────────────┘ │
│ │ │ │ │
│ ┌─────┴────┬─────────┴─┬──────┬────┴────┬─────────┐ │
│ │Postgre │Cassan │Valkey│ MinIO │ Qdrant │ │
│ │ SQL │ dra │(Redis)│ (S3) │(Vector) │ │
│ └──────────┴───────────┴──────┴─────────┴─────────┘ │
│ (PostgreSQL·Cassandra·Redis·MinIO = 플랫폼 공용, Neo4j·Qdrant = LightRAG 저장소)
└─────────────────────────────────────────────────────────────┘

レイヤー構造

PlantPulse AI は 4 つのレイヤーで構成されます。

プレゼンテーションレイヤー

構成要素役割技術
AI Chat Webユーザー対話インターフェース + 内蔵エージェントJava 21, Spring Boot 3.4, JSP
TimeSeries Dashboard分析結果の可視化Next.js, ECharts
RAG WebUIドキュメント管理LightRAG WebUI (/webui)

AI サービスレイヤー

構成要素役割技術
統合 MCP工場データゲートウェイ (116 API) + オントロジー (5 ツール)Platform server-web /api/v5/mcp, MCP Protocol
TimeSeries-Insight異常検知 + 予測 (27 ツール)Python, FastAPI, IBM Granite TSPulse, TTM
RAG技術ドキュメント検索 (3 ツール)LightRAG 1.5.4, Qdrant, Neo4j

AI インフラレイヤー

構成要素役割技術
AURA LLM産業特化型言語モデル自社ファインチューニングモデル (vLLM サービング)
LiteLLMLLM プロキシ/ルーティング (チャット LLM ゲートウェイ)OpenAI 互換 API
内蔵エージェントエージェントループ + ツール呼び出しオーケストレーションcopliot-web AgentOrchestrator

データレイヤー

構成要素役割ポート
PostgreSQL 18リレーショナルデータ (メタ、設定、チャット履歴)5432
Apache Cassandra時系列データ (センサー値、推論履歴)9042
Neo4jグラフデータ (オントロジー)7687
Qdrantベクトルデータ (埋め込み)6333
Valkeyキャッシュ (セッション、一時データ)6379
MinIOオブジェクトストレージ (ドキュメント、画像)9000/9001

データフロー

ユーザークエリの処理フロー

사용자 질문


AI Chat Web ──SSE 스트리밍──▶ 브라우저


내장 에이전트 (AgentOrchestrator 에이전트 루프)

├──▶ LiteLLM Proxy ──▶ AURA LLM (gpt-4o, 의도 분석 · tool-calling)

├──▶ 통합 MCP (실시간 데이터 조회 + 온톨로지 관계 탐색)
│ ├── 플랫폼 server-web /api/v5/mcp
│ └── Neo4j (그래프 DB)

├──▶ TimeSeries-Insight (이상 탐지/예측)
│ ├── Cassandra (시계열 데이터)
│ └── IBM Granite TSPulse / TTM

├──▶ RAG (LightRAG 문서 검색)
│ ├── Qdrant (벡터 검색)
│ └── Neo4j (지식 그래프)

└──▶ LiteLLM Proxy ──▶ AURA LLM (종합 답변 생성)

ISA-95 資産階層構造

PlantPulse は ISA-95/OPC-UA 標準に基づく資産階層構造に従います。

Company (회사)
└── Site (공장/사이트)
└── Area (구역)
└── Line (생산 라인)
└── Equipment (설비)
└── Tag (센서 태그)
└── Point (시계열 데이터)

すべての MCP ツールは、この階層構造を基準にデータを照会します。


モジュール間連携

┌──────────┐ 데이터+온톨로지 ┌──────────────────┐
│ PlantPulse│◄────────────────│ 통합 MCP │
│ 플랫폼 │ │ (server-web) │
│ (+ Neo4j) │ └────────┬─────────┘
└──────────┘ │

┌──────────┐ 센서 데이터 ┌─────┴────────────┐
│ Cassandra │◄────────────────│TimeSeries-Insight │
│ PostgreSQL│◄────────────────│ (이상탐지/예측) │
└──────────┘ └──────┬────────────┘

┌──────────┐ 벡터 검색 ┌─────┴──────┐
│ Qdrant │◄────────────────│ RAG │
│ Neo4j │◄────────────────│ (LightRAG) │
└──────────┘ └──────┬──────┘

┌──────┴──────┐
│ AURA LLM │
│ (통합 추론) │
└─────────────┘