테마
생성형 AI 활용 개발 워크플로
AI 도구로 AI 에이전트를 만드는 현대적 개발 방식
학습 목표
- AI 에이전트 개발에 필요한 두 가지 핵심 지식(LangGraph 문법, 프롬프트 설계)을 이해한다.
- 생성형 AI를 레버리지하여 코드를 생성하는 실전 개발 플로우를 익힌다.
- 참고 코드 제공, 문제 분할, API 키 관리 등 핵심 팁을 적용할 수 있다.
- 사용 가능한 AI 도구들의 특징을 파악하고 상황에 맞게 선택할 수 있다.
1. AI 에이전트 개발에 필요한 핵심 지식
AI 에이전트를 만들기 위해 반드시 알아야 할 지식은 크게 두 가지다.
- LangGraph 문법 — Node, Edge, State, Tool 등 기본 개념을 이해하고, 그래프 구조로 워크플로를 설계할 수 있어야 한다.
- 프롬프트 설계 — 목적에 맞는 시스템 프롬프트와 프롬프트 템플릿을 설계할 수 있어야 한다. AI 에이전트의 행동 품질은 프롬프트에 의해 결정된다.
생성형 AI가 코드를 작성하더라도, 그 코드를 이해하고 수정 요청을 하기 위해 기본 지식은 필수다. 이 두 가지 지식을 갖추면 생성형 AI를 레버리지하여 자신의 지식 수준보다 고품질의 결과물을 생산할 수 있다.
2. 생성형 AI를 활용한 개발 플로우
실전에서 AI 에이전트를 개발하는 단계별 흐름은 다음과 같다.
| 단계 | 내용 | 포인트 |
|---|---|---|
| 1단계 | 구현할 AI 에이전트의 요구사항 정의 | 기능, 입출력, 제약조건 명확히 |
| 2단계 | 참고할 LangGraph 코드를 컨텍스트로 제공 | 가장 중요한 단계 |
| 3단계 | 생성형 AI 도구에 코드 생성 요청 | 요구사항 + 참고 코드를 함께 전달 |
| 4단계 | 생성된 코드 검토 | 의도대로 구현되었는지 확인 |
| 5단계 | 수정 사항 재요청 | 부족한 부분을 구체적으로 지시 |
| 6단계 | 2~5단계 반복 | 만족할 때까지 반복 |
3. 핵심 팁
팁 1: 참고 코드를 컨텍스트로 제공
바로 "이런 에이전트 만들어줘"라고 요청하면 자유도가 너무 높아서 의도와 다른 결과물이 나올 수 있다.
내가 선호하는 구현 패턴의 예시 코드를 함께 전달하면, AI가 해당 패턴을 따라 구현해준다.
| 패턴 | 특징 | 예시 코드와 함께 전달하면 |
|---|---|---|
| CreateReactAgent | 간단하고 빠른 구현 | 간단한 Tool 사용 에이전트 생성 |
| Graph Workflow | 세밀한 제어 가능 | 복잡한 분기·합류 로직 구현 |
# 예시: Cursor에 요청할 때
"아래 참고 코드의 패턴으로 뉴스 검색 에이전트를 만들어줘."
+ [참고 코드 붙여넣기]팁 2: 문제를 잘게 쪼개기 (Divide & Conquer)
한 번에 전체 코드를 요청하면 복잡해서 AI가 감을 못 잡을 수 있다.
- 각 부분 기능을 완벽하게 구현 → 마지막에 합치는 방식이 효과적
- 예: Tool 정의 → State 설계 → Node 구현 → Graph 연결 순으로 요청
- 순차적으로 차근차근 쌓아가기
팁 3: 환경 변수로 API 키 관리
소스코드에 API 키를 직접 넣으면 Cursor 등의 AI 도구를 통해 유출될 가능성이 있다. AI 도구가 코드를 분석할 때 API 키가 컨텍스트에 포함되기 때문이다.
환경 변수로 설정하면 안전하다.
bash
# Windows (영구 설정)
setx LANGCHAIN_API_KEY "lsv2_..."
setx OPENAI_API_KEY "sk-..."
# Mac / Linux
export LANGCHAIN_API_KEY="lsv2_..."
export OPENAI_API_KEY="sk-..."python
# 코드에서 환경 변수 사용
import os
api_key = os.environ["LANGCHAIN_API_KEY"]4. 사용 가능한 AI 도구들
| 도구 | 특징 | 적합한 경우 |
|---|---|---|
| Cursor AI | IDE 통합, 코드 생성/편집 | 복잡한 프로젝트, 기존 코드베이스 수정 |
| Claude Code | CLI 기반, 터미널에서 작업 | 커맨드라인 선호, 자동화 파이프라인 |
| Codex | OpenAI의 코딩 전용 도구 | OpenAI 생태계 활용 시 |
| ChatGPT / Claude | 웹 인터페이스, 대화형 | 간단한 코드 생성, 개념 학습 |
최근에는 대부분 상향 평준화되어 도구 간 큰 성능 차이가 없다. 핵심은 도구 자체가 아니라 "어떻게 요청하느냐" 에 달려 있다.
5. 실전 예시: Short-term Memory AI 에이전트
실제로 생성형 AI 도구를 활용하여 AI 에이전트를 만드는 과정을 살펴본다.
목표: 최근 10개 대화 내역을 참조하여 답변하는 챗봇
진행 과정
| 순서 | 요청 내용 | AI 도구 응답 |
|---|---|---|
| 1차 | InMemorySaver + trimMessages 예제 코드를 컨텍스트로 제공하고, "최근 10개 대화를 참조하는 챗봇" 요청 | 기본 동작 코드 생성 |
| 2차 | "LangSmith 추적 코드 추가해줘" | 추적 설정 코드 추가 |
| 3차 | "중복 코드 정리해줘" | 코드 리팩토링 완료 |
총 3번의 요청으로 동작하는 AI 에이전트가 완성되었다.
6. 핵심 정리
생성형 AI를 활용한 개발의 핵심은 "AI에게 좋은 컨텍스트를 제공하는 것" 이다. LangGraph 문법과 프롬프트 설계라는 두 축의 기본 지식을 갖추고, 참고 코드 제공 + 문제 분할 + 반복 요청의 패턴을 따르면 자신의 실력 이상의 고품질 AI 에이전트를 효율적으로 만들 수 있다.