# Agentic AI 가이드: 언어모델의 한계 극복

[](https://youtu.be/kJLiOGle3Lw?si=_fmZOfvFySRakQNW) 

> **"AI를 이해하는 가장 좋은 방법은 먼저 작게 시작하는 것이다."** - 스탠포드 웨비나

## 언어모델의 기본 원리와 작동 방식

### 언어모델 작동 기본 메커니즘

- 입력 텍스트 기반 다음 단어 확률 계산

- "학생들이 책을"이라는 입력 → "열었다", "읽었다" 등 다음 단어 예측

- 학습 데이터량에 따라 예측 정확도 변화

### 2단계 학습 프로세스

1. **사전학습(Pre-training)**

- 웹, 책 등 공개 텍스트 데이터로 단어 예측 훈련

- 대규모 코퍼스로 기본 언어 이해력 구축

2. **후속학습(Post-training)**

- 지시사항 따르기(Instruction Following) 훈련

- 인간 피드백 기반 강화학습(RLHF)

- 사용자 친화적 상호작용 능력 개발

## 프롬프트 엔지니어링 필수 기법

### 1. 구체적 지시사항 작성

```javascript
나쁨: "날씨를 알려주세요"
좋음: "서울의 내일 오전 9시 기온과 강수 확률을 정확히 알려주세요"
```

### 2. Few-shot 학습

```javascript
예시1: 텍스트: "날씨가 좋다" → 감정: 긍정
예시2: 텍스트: "비가 온다" → 감정: 부정
실제: 텍스트: "구름 많다" → 감정: ?
```

### 3. 컨텍스트 제공

```javascript
다음 문서 내용만 참조하여 답변하세요:
[문서 내용]
답변을 찾을 수 없다면 "정보가 없습니다"라고 답변하세요.
```

### 4. Chain of Thought

```javascript
문제를 단계별로 풀어보세요:
1. 먼저 자신의 해결 방법 제시
2. 학생 답안과 비교
3. 정답 여부 판단 및 설명
```

### 5. 작업 분해 전략

- 단계1: 요약 생성

- 단계2: 이전 요약 + 상세 분석

- 단계3: 최종 통합 및 답변

## RAG 시스템 구축 방법

### 데이터 처리 파이프라인

1. **텍스트 분할**: 500-1000자 단위로 청크화

2. **임베딩 변환**: OpenAI 임베딩 모델 사용

3. **벡터 DB 저장**: Pinecone, FAISS 등 활용

4. **유사도 검색**: 코사인 유사도 기반 Top-K 선택

### 검색 증강 프로세스

```javascript
# 기본 RAG 파이프라인
query = "언어모델 학습 방법"
query_embedding = embed_model.encode(query)
relevant_chunks = vector_db.search(query_embedding, k=3)
context = "\n".join(relevant_chunks)
prompt = f"컨텍스트: {context}\n질문: {query}"
response = llm.generate(prompt)
```

## 도구 사용과 외부 연동

### Function Calling 구현

```javascript
// 날씨 조회 API
{
  "function": "get_weather",
  "parameters": {
    "location": "Seoul",
    "time": "tomorrow 9am"
  }
}
```

### 실행 가능한 툴 목록

- **API 호출**: 날씨, 주식, 뉴스 등

- **계산 실행**: Python 코드 샌드박스

- **데이터베이스 쿼리**: SQL, Vector DB 접근

- **파일 처리**: 문서 읽기/쓰기

## Agentic AI 핵심 컨셉

### 정의와 특징

1. **환경 상호작용 능력**

- 도구 사용으로 외부 데이터 접근

- 실시간 정보 수집과 처리

2. **Reasoning + Action 프레임워크**

- 상황 분석과 계획 수립

- 단계별 실행과 피드백 순환

### 고객 지원 에이전트 워크플로우

1. 문제 분석과 작업 분해

2. API 호출로 정보 수집

3. 수집 데이터 통합 분석

4. 최종 솔루션 제시

## Agentic 디자인 패턴

### 1. Planning 패턴

```javascript
작업: 코드 리팩토링
계획:
1. 현재 코드 구조 분석
2. 개선 가능 영역 식별
3. 우선순위 설정
4. 단계별 리팩토링 실행
```

### 2. Reflection 패턴

```javascript
1단계: 초기 솔루션 생성
2단계: 자체 비평과 문제점 발견
3단계: 개선된 버전 재생성
4단계: 최종 검증
```

### 3. Multi-agent 협업

- 전문화된 에이전트 구성

- 특화 작업 분담

- 에이전트 간 정보 교환

### 스마트홈 시스템 예시

```javascript
에이전트 구성:
- 기후 제어 에이전트
- 조명 제어 에이전트  
- 보안 시스템 에이전트
각 에이전트는 전문 API와 연동
```

## 평가 및 최적화 전략

### 에이전트 평가 방법

1. **기본 LLM as Judge**

- 생성 결과 객관적 평가

- 정답과 비교 점수화

2. **Agentic 평가 패턴**

- 단계적 평가 프로세스

- 다중 관점 검증

- 반성 패턴 적용

### 시작과 실험 로드맵

1. **프롬프트 플레이그라운드 활용**

- Claude, GPT Playground 등

- 빠른 반복 테스트

2. **API 기본 연동**

- 간단한 API 호출 구현

- 결과 파싱과 처리

3. **프레임워크 선택**

- LangChain, AutoGPT 등

- 요구사항에 맞는 도구 선정

## 실전 개발 팁

### 시작 전략

- 단순한 use case부터 시작

- 반복적 개선 접근

- 로깅과 모니터링 구축

### 윤리적 고려사항

- 할루시네이션 탐지 시스템

- 내용 필터링 가드레일

- 입/출력 검증 체계

## 실제 적용 분야

### 1. 소프트웨어 개발

- 코드 생성 자동화

- 버그 수정과 테스트

- 풀리퀘스트 생성

### 2. 연구와 분석

- 웹 정보 수집

- 데이터 종합과 요약

- 보고서 자동 생성

### 3. 작업 자동화

- 반복 작업 최적화

- 문서 처리 시스템

- 워크플로우 자동화

## 핵심 포인트 요약

- **언어모델 기초**: 확률 기반 단어 예측 시스템

- **RAG 시스템**: 자체 데이터 활용과 정확도 향상

- **Tool Usage**: 외부 시스템 연동과 실행 능력

- **Agentic AI**: 추론과 행동 결합으로 복잡한 작업 처리

- **디자인 패턴**: Planning, Reflection, Multi-agent 활용

- **실무 적용**: 단순 → 복잡으로 점진적 발전

"에이전트 AI는 언어모델 사용의 자연스러운 확장입니다. 작게 시작하여 단계별로 복잡성을 더해가며 실무에 맞는 솔루션을 구축하는 것이 핵심입니다."

For the site tree, see the [root Markdown](https://blog.learntoday.kr/.md).
