AI 지식 · 심층 가이드
AI 지식 아키텍처 & 패턴 완전 정리
에이전트 루프와 멀티 에이전트, LangGraph 상태 관리, Evals와 관찰성까지 LLM 애플리케이션을 시스템으로 세울 때 필요한 설계 패턴을 정리했습니다.
한 번의 호출로 끝나는 기능과 에이전트는 설계 난이도가 다릅니다. 루프가 들어오는 순간 종료 조건, 중간 상태 저장, 도구 실패 복구, 비용 상한이 전부 설계 항목이 됩니다. 게다가 실행이 비결정적이라 같은 입력으로 재현이 안 되고, 그래서 버그를 '가끔 이상함'이라는 형태로만 관찰하게 됩니다. 이 영역에서 실력 차이는 프롬프트가 아니라 상태를 어디에 두고 실패를 어떻게 관측 가능하게 만들었는지에서 드러납니다.
출발점은 AI 에이전트 설계 패턴입니다. 계획과 행동, 관찰이 순환하는 기본 루프를 잡고 나면 그 루프를 코드로 고정하는 방법이 필요한데, LangGraph — 상태 기반 워크플로우가 노드와 조건부 엣지로 분기와 체크포인트를 명시적으로 만듭니다. 역할을 나눌 필요가 생기면 멀티 에이전트 시스템 — AutoGen & CrewAI로 넘어갑니다. 다만 AI 애플리케이션 평가(Evals) 시스템과 AI 시스템 관찰성(Observability)을 먼저 붙이지 않으면 구조를 바꿔도 좋아졌는지 알 수 없습니다.
멀티 에이전트로 넘어가기 전에 확인할 것이 있습니다. 에이전트를 나눌수록 호출 수는 곱으로 늘고, 한 에이전트의 잘못된 중간 결론이 다음 에이전트의 전제가 되어 오류가 누적됩니다. 단일 에이전트에 도구를 더 주는 쪽으로 해결되는 문제라면 그쪽이 대개 더 싸고 디버깅도 쉽습니다. 나누기로 했다면 최대 반복 횟수와 누적 토큰 상한을 하드 리밋으로 걸어야 합니다. 상한이 없는 루프는 도구가 계속 애매한 결과를 돌려줄 때 멈추지 않고, 이 사고는 보통 요금 청구서로 먼저 발견됩니다.
01AI 에이전트 설계 패턴
에이전트 루프: 계획(Plan) → 도구 선택(Act) → 관찰(Observe) → 반복. ReAct(Reasoning + Acting) 패턴. 메모리: Short-term(컨텍스트), Long-term(벡터 DB), Episodic(이전 경험). 에이전트는 목표 달성까지 자율 반복합니다.
02멀티 에이전트 시스템 — AutoGen & CrewAI
여러 전문 에이전트가 협력해 복잡한 작업 수행. AutoGen(Microsoft): 에이전트 간 자동 대화. CrewAI: 역할 기반 팀 에이전트. 패턴: ①순차 실행 ②병렬 실행 ③계층적 실행. 한 에이전트의 실패가 전체를 막을 수 있어 에러 처리가 중요합니다.
03LangGraph — 상태 기반 워크플로우
LangChain의 그래프 기반 에이전트 오케스트레이션. 노드(LLM 호출/함수)와 엣지(조건부 분기)로 복잡한 워크플로우 표현. 상태 머신으로 에이전트 루프 구현. 체크포인트로 중간 상태 저장/복구가 가능합니다.
04AI 애플리케이션 평가(Evals) 시스템
LLM 앱 품질을 자동 측정. ①기준 답변과 LLM 비교(G-Eval) ②인간 평가자 레이블 수집 ③A/B 테스트 ④지표: 정확도, 관련성, 무해성. LangSmith, Weave(W&B), Phoenix(Arize)로 운영. 에벌 없이 LLM 앱 개선은 블라인드 항법입니다.
05AI 시스템 관찰성(Observability)
프로덕션 LLM 앱 모니터링. 추적: 각 LLM 호출의 입출력, 레이턴시, 토큰. 지표: 오류율, 비용, 사용자 만족도. 도구: LangSmith, Langfuse, Helicone, OpenTelemetry. 문제 진단 시 전체 체인의 흐름을 시각화하는 것이 핵심입니다.
06AI 게이트웨이 패턴
여러 LLM 프로바이더를 통합 관리하는 레이어. 기능: ①프로바이더 장애 시 자동 전환(fallback) ②로드 밸런싱 ③비용 제어 ④캐싱 ⑤레이트 리미팅. OpenRouter, LiteLLM, Portkey 활용. 단일 코드베이스로 다양한 모델 전환이 가능합니다.
07AI 파이프라인 오케스트레이션
복잡한 AI 워크플로우의 스케줄링과 모니터링. Apache Airflow: 배치 파이프라인. Prefect: Python 기반, 더 간단. Temporal: 내구성 있는 워크플로우. LLM 재처리, 벡터 DB 업데이트, 모델 재학습 파이프라인 관리에 활용됩니다.
08Knowledge Base 설계 패턴
기업 지식을 AI가 활용 가능하게 구조화. ①문서 계층 설계(FAQ, 정책, 매뉴얼) ②메타데이터 스키마 정의(날짜, 부서, 권한) ③업데이트 주기 설정 ④접근 권한 관리. 좋은 KB 설계가 RAG 품질의 70%를 결정합니다.
09Agentic RAG — 에이전트 + RAG 결합
단순 RAG를 넘어 에이전트가 검색 전략을 자율 결정. 쿼리 분해 → 각 서브쿼리로 검색 → 정보 통합 → 최종 답변. Self-RAG: 검색 필요 여부를 LLM이 판단. CRAG(Corrective RAG): 검색 결과 평가 후 보정.
10AI Safety & Alignment 기초
AI가 의도대로 동작하도록 설계하는 원칙. ①Constitutional AI(Anthropic): 원칙 기반 훈련 ②RLHF: 인간 피드백으로 정렬 ③Red Teaming: 의도적 공격으로 취약점 발견 ④Guardrails: 응답 전/후 안전 필터. Nemo Guardrails, Llama Guard 활용.
11실시간 AI 처리 — WebSocket & 스트리밍
실시간 AI 응답 구현 스택. Backend: FastAPI/WebSocket + asyncio, Node.js/SSE. Frontend: EventSource, ReadableStream. 토큰 버퍼링으로 UI 깜빡임 방지. 긴 응답은 스트리밍으로, 짧은 응답은 일반 API가 효율적입니다.
12Document Ingestion 파이프라인
기업 문서를 RAG용으로 자동 처리. ①소스: S3, SharePoint, Notion, Confluence ②형식 파싱: PDF, DOCX, PPTX, HTML ③청킹 & 임베딩 ④벡터 DB 저장 ⑤증분 업데이트(변경된 문서만 재처리). Airbyte, Unstructured, LlamaHub Loaders 활용.
13AI 기반 추천 시스템
임베딩 유사도 기반 콘텐츠 추천. ①사용자 행동 → 임베딩 ②아이템 임베딩과 유사도 검색 ③CF(협업 필터링) + CB(콘텐츠 기반) 하이브리드. LLM 설명 생성: "이 책을 추천하는 이유는...". Two-Tower 모델로 수백만 아이템을 실시간 처리합니다.
14대화형 AI 설계 — 상태 관리
챗봇의 대화 상태 관리. 방법: ①전체 히스토리(토큰 많음) ②슬라이딩 윈도우 ③요약 메모리(주기적 요약 삽입) ④엔티티 메모리(언급된 사람/장소 추적). LangChain Memory 모듈. 장기 대화에서 일관성 유지가 핵심 과제입니다.
15AI 거버넌스 기술 구현
책임 있는 AI를 위한 기술적 구현. ①결정 로깅(입력, 출력, 모델, 프롬프트 버전) ②설명 가능성(LLM 설명 생성) ③감사 추적(변경 불가 로그) ④편향 모니터링 ⑤휴먼 인더루프(고위험 결정 시 사람 검토). EU AI Act 고위험 시스템 요구사항 대응.
정리하며
- 에이전트 루프에는 최대 반복 횟수와 누적 토큰 상한을 코드 레벨 하드 리밋으로 겁니다
- 구조 변경 전에 Evals와 트레이싱을 먼저 붙여야 개선 여부를 판단할 수 있습니다
- 멀티 에이전트는 오류 누적과 비용 증가를 동반하므로 단일 에이전트 확장을 먼저 시도합니다
- 대화 상태는 컨텍스트에 쌓지 말고 외부 저장소에 두어 재시작과 재개가 가능하게 만듭니다
더 깊이 들어가고 싶다면 AI 지식 학습 라이브러리에서 다른 주제 가이드를 이어서 보거나, 언어 비교에서 같은 개념이 다른 언어에서 어떻게 표현되는지 확인해 보세요.