Agent Architecture (에이전트 아키텍처)
정의
**Agent Architecture (에이전트 아키텍처)**는 자율 에이전트를 구성하는 핵심 컴포넌트와 이들 간의 상호작용 방식입니다.
에이전트의 핵심 컴포넌트
┌─────────────────────────────────────────┐
│ Perception Module │
│ (센서, 환경 관찰, 데이터 입력) │
└────────────┬────────────────────────────┘
↓
┌─────────────────────────────────────────┐
│ Knowledge Base / Ontology │
│ (지식 저장소, 규칙, 온톨로지) │
└────────────┬────────────────────────────┘
↓
┌─────────────────────────────────────────┐
│ Reasoning Engine │
│ (LLM, 추론 엔진, 계획 수립) │
└────────────┬────────────────────────────┘
↓
┌─────────────────────────────────────────┐
│ Action Module │
│ (도구 선택, 실행, 명령 전달) │
└────────────┬────────────────────────────┘
↓
┌─────────────────────────────────────────┐
│ Learning / Feedback │
│ (결과 평가, 지식 갱신, 개선) │
└─────────────────────────────────────────┘
4가지 주요 아키텍처 패턴
1. 반응형 아키텍처 (Reactive Architecture)
센서 → [규칙 매칭] → 즉시 행동
특징:
- 가장 간단
- 빠른 응답
- 사전정의 규칙만 가능
- 온톨로지: 엄격한 IF-THEN 규칙
예: 온도 > 38°C → 즉시 냉각 장치 작동
2. 계층형 아키텍처 (Hierarchical Architecture)
┌──────────────┐
│ 상위 레이어: 전략 수립 (LLM)
└──────┬───────┘
↓
┌──────────────┐
│ 중간 레이어: 계획 생성
└──────┬───────┘
↓
┌──────────────┐
│ 하위 레이어: 구체 행동 실행
└──────────────┘
특징:
- 추상화 수준 다름
- 상위 결정이 하위를 제약
- 온톨로지: 계층 구조 (상위 개념 → 하위 개념)
예: 전략(진단) → 계획(어떤 검사) → 행동(검사 실행)
3. 모듈형 아키텍처 (Modular Architecture)
┌─────────────┐ ┌──────────────┐
│ 인식 모듈 │ │ 추론 모듈 │
└──────┬──────┘ └───────┬──────┘
└─────┬──────────────┘
↓
┌─────────────┐
│ 행동 모듈 │
└─────┬───────┘
↓
┌─────────────┐
│ 학습 모듈 │
└─────────────┘
특징:
- 각 모듈이 독립적
- 모듈 교체 용이 (LLM 업그레이드 등)
- 온톨로지: 모듈 간 인터페이스 정의
예: 추론 모듈을 GPT → Gemini로 교체 가능
4. 분산형 아키텍처 (Distributed Multi-Agent)
에이전트 A 에이전트 B 에이전트 C
(진단 담당) (치료 담당) (모니터링)
↓ ↓ ↓
┌─────────────────────────────┐
│ 통신 / 조정 (Orchestrator) │
└─────────────────────────────┘
특징:
- 여러 에이전트 협력
- 복잡한 시스템 처리
- 온톨로지: 공유 지식 (모든 에이전트가 같은 온톨로지 사용)
예: 의료 팀 (진단 담당 + 처방 담당 + 약사)
에이전트 아키텍처의 3가지 설계 결정
1. 중앙화 vs. 분산화
중앙화:
└─ 1개 LLM이 모든 결정
└─ 간단, 빠름, 병목 가능성
분산화:
└─ 여러 LLM/에이전트 협력
└─ 복잡, 느림, 확장성 좋음
2. 동기형 vs. 비동기형
동기형:
└─ 한 단계씩 순차 처리
└─ 이해하기 쉬움, 느림
비동기형:
└─ 여러 단계 병렬 처리
└─ 복잡함, 빠름
3. 상태 저장 방식
메모리:
└─ 현재 상태만 (짧은 기억)
파일:
└─ 영구 저장 (긴 기억)
데이터베이스:
└─ 복잡한 쿼리 (구조화된 기억)
벡터 DB:
└─ 의미론적 검색 (유사 사례 기억)
온톨로지와 아키텍처의 관계
온톨로지가 아키텍처를 결정한다:
간단한 온톨로지
↓
반응형 아키텍처 (IF-THEN 규칙)
복잡한 온톨로지
↓
계층형/모듈형 아키텍처 (추론 필요)
분산된 온톨로지
↓
분산형 아키텍처 (멀티 에이전트)
좋은 에이전트 아키텍처의 조건
1. 명확성 (Clarity)
└─ 각 컴포넌트 역할이 명확
2. 확장성 (Scalability)
└─ 새로운 도구/규칙 추가 용이
3. 신뢰성 (Reliability)
└─ 장애 격리, 오류 처리
4. 해석 가능성 (Interpretability)
└─ 에이전트 결정이 왜?
5. 안전성 (Safety)
└─ 제약과 검증 메커니즘
관련 개념
- Autonomous Agent — 에이전트의 개념
- Decision Making — 의사결정 로직
- PRAL Loop — 아키텍처 내 기본 루프
- Ontology — 지식 기반 설계
관련 영상: Fundamentals of Building Autonomous LLM Agents (Video 4)