AI 에이전트 시스템 구축(도구, 오케스트레이션, 지식과 메모리)

2026. 2. 22. 03:43·온라인강의

오늘은 2주차 AI 에이전트 엔지니어링(한빛미디어) 인프런 스터디에 Chapter4 도구로, chapter5 오케스트레이션 chapter6 지식과 메모리에 대해서 다룹니다.

 

Chapgter4 도구

유형 특징 예시
로컬도구 로컬 실행, 정확하고 예측 가능 계산기, 시간대 변환
API 기반 도구 외부 서비스 연동, 실시간 데이터 날씨 API, 주식 조회
플러그인 도구 모듈화, 최소 커스터마이징으로 통합 허깅페이스, 플랫폼 플러그인
MCP 도구 표준화된 프로토콜로 통합 JSON-RPC 기반 서비스

 

플러그인 도구

플러그인 도구는 강력하지만 로컬 또는 원격에서 제공하는 맞춤형 도구처럼 높은 수준의 커스터마이징과 적응성을 제공하지는 않습니다. 

오픈소스 파운데이션 모델의 플러그인 도구 개발의 대표적 사례: 허깅페이스 라이브러리는 자연어처리 작업을 위한 다양한 사전학습모델과 프러그인 도구를 제공함

 

MCP

MCP 서버: JSON-RPC 2.0인터페이스로 데이터/서비스 노출

MCP 클라이언트: 에이전트가 JSON-RPC 요청을 보내고 구조화된 응답 수신

한번 서비스를 MCP로 노출하면 여러 에이전트가 커스텀 어댑터 없이 재사용 가능

 

상태 유지(Stateful) 도구와 보안

- 지속적 상태를 직접 조작하는 도구는 파괴적 실수나 악용의 위험이 큼

- 최소 권한 원칙 적용 필수

 

도구 개발 자동화

파운데이션 모델을 활용한 도구 생성: 사람이 llm을 활용해서 도구를 미리 개발함

API명세를 제공하면 래퍼/헬퍼 함수를 자동 생성

사람의 검토와 CI/CD 파이프라인 통합 필수

실시간 코드 생성: 에이전트가 작동 중 필요에 따라 도구코드를 작성하고 실행

새로운 API나 문제에 즉각 대응 가능

But 품질관리아 안되서 시스템 오류, 보안 침해 발생

재현성 문제로 한번 성공하더라고, 다음번 제대로 동작하지 않을 가능성이 존재함

리소스 소비: 비효율적 코드의 반복 생성/실행으로 연산 자원 부담 증가

반드시 가드레일 설정 필요

 

도구 사용 설정과 오류처리

tool-choice 파라미터로 도구 사용 방식 제어:

auto: 모델이 컨텍스트에 따라 자율 판단

any/ required: 최소 한개 도구 호출 장제

none : 모든 도구 호출 차단

 

오류 처리 체계:

스키마 검증: jsonschema, Pydantic 을 사용해 누락된 필드나 잘못된 구조를 탐지합니다. 도구 호출이 누락된 경우 자동으로 실행하고, JSON이 유효하지 않다면 모델에 수정 프롬프트를 보냅니다.

지능적 재시도: 일시적 오류에는 지수 백오프 같은 구조화된 재시도 로직을 적용하거나 전체 과정을 다시 시작하지 않고 문제된 부문만 재생성합니다.

안정적인 폴백: 재시도가 실패하면 백업 모델이나 서비스를 사용하거나 사요자에게 추가 입력을 요청하거나 캐시된 데이터를 활용하거나 안전한 기본값을 반환합니다.

로깅: 프롬프트, 도구 호출, 검증 오류, 재시도, 

 

Chapter5 오케스트레이션

단순히 도구 호출 순서를 정하는 것을 넘어, 컨섹스트 구성 + 계획 + 실행을 아우르는 과정

사용자 요청을 파운데이션 모델, 외부/로컬 도구, 데이터베이스를 조율하여 처리

단순 작업: 하나의 도구 + 최소 컨텍스트로 충분

복잡한 워크플로: 정교한 계획, 메모리 검색, 동적 컨텍스트 조합 필요

 

반사형 에이전트(reflex agent) : 입력-행동 직접 매핑, 추론 없음, 밀리초 단위 응답

응답: 키워드 라우팅, 단순 조회, 간단한 자동화

 

리액트 에이전트(ReAct agent) 가장 많이 사용: 추론(Reasoning) + 행동(Action) 반복 루프

사고 -> 도구 호출 -> 관찰 -> 계획 갱신 사이클

용도: 탐색형 워크플로, 트러블슈팅, 동적 데이터 분석

도구 호출, 관찰 결과, 단계별 의사결정 등 실행 과정의 흔적이 로그로 남기 쉬어 디버깅과 가사에 유리함

 

계획 후 실행 에이전트(Planner-executor agent): 계획 단계와 실행 단계를 분리

명확한 작업 분해, 디버깅 용이, 비용 효율적(큰 모델은 계획만 담당)

 

쿼리 분해 에이전트(Query-decompositon agent) : 복잡한 질문을 하위 질믄으로 반복 분해

- 자문 후 검색 패턴

- 외부 지식 검색이 필요한 상황에서 특히 효과적

- 각 사실이 도구 출력에 근거하도록 보장

 

성찰 및 메타추론 에이전트(reflection and metareasoning agent): 과거 단계를 검토하고 실수 감지및 수정

- 고위험 워크플로(금융, 의료, 사고 대응)에 적합

- 생각과 행동을 교차시키는 것에 그치지 않고 다음 단계로 진행하기 전에 과거 단계를 검토해 실수를 찾아내고 수정함으로써 react 패러다임을 확장함

- 각 행동에 성찰 단계를 짝지으면 에이전트는 도구 출력이 기대에서 벗어났을 떄 이를 감지하고 되돌릴 수 없는 작업을 실제로 실행하기 전에 재개호기하거나 롤백할 수 있음

 

심층 리서치(Deep Research): 계획 + 쿼리 분해 + 리액트 루프 결합

- 학술 문헌 서베이, 기술 실사, 경쟁 정보 분석에 최적

- 높은 비용과 지연 시간이 단점

 

표준도구 선택

- 효과적인 도구 선택의 핵심: 간결하고 명확한 도구 이름과 설명

- 예시 호출 포함, 입력 타입/범위 명시로 애매한 매치 방지

# wolfram alpah를 활용한 도구 호출

 

시맨틱 선택 : 도구 설명을 임베딩 -> 벡터 DB인덱싱 -> 쿼리와 유사도 검색

임베딩 모델: Ada, Titan, Cohere Embed, Mordern BERT 등

검색된 후보 중 FM이 최종 도구 및 파라미터 결정

계층적 선택 : 도구를 그룹으로 조직 -> 1단계: 그룹 선택 -> 2단계: 그룹 내 도구 선택

시멘틱적으로 유사한 도구가 많을 때 정확도 향상

매우 많은 도구가 있는 경우에만 권장

 

도구 실행과 토폴로지

파라미터화: LLM이 도구 정의에 맞게 파라미터를 설정, 타입 검증 후 실행

도구 토폴로지 (LLM Agent 시스템에서 도구들이 어떻게 연결되고, 어떤 순서와 구조로 호출되는지를 나타내는 구조적 설계 방식)

단일 도구 실행: 하나의 도구 선택 -> 파라미터 설정 -> 실행 -> 응답

병렬 도구 실행: 여러 도구를 동시에 실행하여 포괄적 정보 수집

체인: 순차 실행, 각 단계가 이전 결과에 의존

그래프: 조건부 분기 + 병합, 비선형 워크플로 모델링

 

랭그래프 코드 도식

 

컨텍스트 엔지니어링

각 오케스트레이션 단계에 올바른 정보와 지침을 동적으로 조합하는 작업

프롬프트 엔지니어링이 "무엇을 쓸지"라면, 컨텍스트 엔지니어링은 "무엇을 담을지"

핵심 실천 사항:

관련성 우선: 가장 유용한 정보만 선택적 으로 검색

명료성 유지: 구조화된 포맷(MCP 등)으로 예측 가능하게 전달

토큰 최적화: 긴 히스토리는 요약, 불필요한 표현 제거

동적 조집: 매 추론 스텝마다 현재 목표에 맞게 컨텍스트 재구성

 

핵심 요약

시스템의 지연시간 VS 정확도 트레이드오프를 신중히 검토

시나리오에서 보통 필요한 액션 수를 파악하여 복잡도 결정

요구사항을 충족하는 가장 단순한 접근 방식을 선택하고, 필요 시 점진적으로 복잡도 증가

 

Chapgter6 지식과 메모리

에이전트가 더 똑똑해지려면?

- 도구와 오케스트레이션만으로는 부족

- 과거에 일어난 일을 기억해야 함

- 모델 가중치 이상의 추가 정보가 필요

컨텍스트를 풍부하게 만드는 두가지 방식

지식: 외부 사실과 도메인 특화 정보(주로 RAG)

메모리: 에이전트 자신의 히스토리

 

지식 vs 메모리

 

지식(주로 RAG로 구현)

- 외부 사실과 도메인 특화 콘틍츠를 생성 시점에 주입

- 기술 스팩, 정책 문서, 상품 카탈로그, 시스템 로그 등

- 모델 가중치에 없는 정보를 보완

메모리

- 에이전트 자신의 히스토리(대화, 도구 출력, 상태 업데이트)

- 여러 턴과 세션에 걸쳐 연속성 유지

- 과거 상호작용을 기억하고 활용

메모리는 컨텍스트 엔지니어링의 기반이며, 지식을 저장하는 장소

 

키워드 기반 검색

전체 텍스트 검색의 핵심

역색인:모든 텍스트를 전처리하면서 토크나이징, 정규화(소문자 변환, 어간 추출), 불용어 제거를 수행한 뒤, 각 용어를 그 용어가 등장하는 메시지 청크나 문서 목록에 매핑함

BM25 스코어링 함수

용어 빈도: 쿼리 용어가 얼마나 자주 등장하는지

역문서 빈도: 코퍼스 전체에서 해당용어가 얼마나 희귀한지

문서 길이 정규화: 너무 길거나 짧은 청크에 페널티

동의어나 개념적 연관성은 놓칠 수 있음

 

시맨틱 메모리와 벡터 스토어

RAG

인덱싱-> 검색 -> 생성

단순 RAG 적용 단점: 매 세션마다 '백지 상태'에서 시작하게 되고 장기 실행되거나 복잡한 작업을 할 때, 컨텍스트 윈도 밖으로 밀려 사라지게 됨

시맨틱 경험 메모리(중요): 외부 지식 + 과거 상호작용

외부 지식뿐 아니라 에이전트 자신의 과거 대화도 벡터로 저장

매 입력마다 임베딩 생성 -> 전체 상호작용 이력 검색

컨텍스트 윈도 배분 전략

1. 시맥틱 경험 메모리 검색 결과

2. 시스템 메시지

3. 최근 입력

 

그래프 RAG 접근(중요) 

지식을 그래프 구조(노드 + 엣지)로 표현

엔티티 간 관계를 명시적으로 저장

멀티홉 추론과 관계 체이닝 지원

구조화된 요약 가능

 

지식 그래프 구축 8단계

1.데이터 수집 : 다양한 소스에서 원시 데이터 확보

2.데이터 전처리 : 정제, 중복 제거, 표준화

3.엔티티 인식 : NER 등으로 핵심 엔티티 식별(사람, 장소, 조직, 개념 등)

4.관계 추출 : 엔티티 간 술어(관계어) 추출

5.온톨로지 설계 : 범주와 관계 유형의 스키마 정의

6.그래프 채우기 : 노드와 엣지를 데이터베이스에 생성

7.통합/검증 : 정확성 확인, 엔티티 해소

8.유지보수: 정기적 엡데이트와 온톨로지 개선

지식 그래프는 RDF(resource description framework)데이터 모델을 기반으로 시멘틱 트리플을 추출하는 방식으로 수행됩니다. 

시맨틱 트리플은 주어-술어-목적어 표현으로 이루어집니다.

 

장점

- 평면 테이블이나 벡터 스토어로 표현이 어려운 복잡한 관계 지원

- 구조화된 추론 가능

- 하나의 엔티티를 둘러싼 풍부한 컨텍스트 이해

 

동적 지식 그래프

- 새로운 정보를 지속적으로 업데이트하여 지식을 관리함

실시간 정보 반영(뉴스, 소셜 미디어, 모니터링 시스템)

적응형 학습: 재학습 없이 새 데이터로 지속 갱신

구조화된 포맷으로 연산과 추론에 유리

 

노트 작성 기법

인간의 독해 전략 모방

- 여백에 메모하며 읽는 방식과 유사

- 질문 전에 컨텍트스에 대한 노트를 먼저 생성

 

1) 컨텍스트, 2) 노트 생성, 3) 노트 + 컨텍스트 + 질문, 4) 응답

'온라인강의' 카테고리의 다른 글

AI 에이전트 시스템 구축(단일 에이전트에서 멀티 에이전트로)  (0) 2026.02.24
AI 에이전트 시스템 구축(에이전트 시스템의 학습)  (1) 2026.02.23
[인프런] 시스템 기획서 작성 & 시스템 기획자의 실무  (0) 2026.02.18
[인프런] 게임 데이터 테이블 및 UX/UI 설계  (0) 2026.02.16
[인프런] 게임 시스템 구조 분할 및 규칙 설계  (0) 2026.02.14
'온라인강의' 카테고리의 다른 글
  • AI 에이전트 시스템 구축(단일 에이전트에서 멀티 에이전트로)
  • AI 에이전트 시스템 구축(에이전트 시스템의 학습)
  • [인프런] 시스템 기획서 작성 & 시스템 기획자의 실무
  • [인프런] 게임 데이터 테이블 및 UX/UI 설계
AI강선생
AI강선생
AI강선생의 블로그 입니다.
  • AI강선생
    나의 배움과 성장의 궤적
    AI강선생
  • 전체
    오늘
    어제
    • 분류 전체보기 (59)
      • 온라인강의 (45)
      • 오프라인강의 (2)
      • 독서 (1)
      • 생각과다짐 (6)
      • 도메인 (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    claude code
    게임기획
    오레일리
    spring
    클로드코드
    AI agent
    AI시대
    티스토리
    docker
    Redis
    랭체인
    llmagent
    에이전트
    PostgreSQL
    rustfs
    java
    Claude
    국회
    cursor
    길벗
    FastAPI
    이지스퍼블리싱
    Python
    한빛미디어
    혼공바이브코딩
    챌린지
    유리링
    인프런
    LangChain
    스프링부트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
AI강선생
AI 에이전트 시스템 구축(도구, 오케스트레이션, 지식과 메모리)
상단으로

티스토리툴바