부록 · 치트시트 · 용어집 · 추가 학습
이 부록은 빠른 참조용입니다. 각 항목의 상세 설명은 본문 해당 장을 보세요.
분야 고유 용어가 아닌 보편 기술 용어(JSON·HTTP·데이터베이스 등)의 풀이는 부록 25 · 기초 기술 용어 사전에 따로 있습니다.
A. 프레임워크별 치트시트
OpenAI Agents SDK (2·3부)
PYTHON
from agents import Agent, Runner, function_tool, SQLiteSession @function_tool def my_tool(x: str) -> str: """도구 설명 — 명확하게.""" return ... agent = Agent(name="A", instructions="역할", tools=[my_tool]) result = Runner.run_sync(agent, "입력") # 동기 # await Runner.run(agent, "입력", session=...) # 비동기+메모리 # 멀티에이전트: 도구로 manager = Agent(name="M", tools=[agent.as_tool("name", "desc")]) # 핸드오프 triage = Agent(name="T", handoffs=[billing_agent, refund_agent]) # 가드레일 agent = Agent(name="A", input_guardrails=[my_guardrail])
LangGraph (4부)
PYTHON
from langgraph.graph import StateGraph, START, END from langgraph.checkpoint.memory import InMemorySaver builder = StateGraph(State) builder.add_node("n", node_fn) builder.add_edge(START, "n") builder.add_conditional_edges("n", router_fn, {"a": "node_a", "b": END}) graph = builder.compile(checkpointer=InMemorySaver()) graph.invoke({...}, {"configurable": {"thread_id": "t1"}})
CrewAI (5부)
PYTHON
from crewai import Agent, Task, Crew, Process agent = Agent(role="역할", goal="목표", backstory="배경", tools=[...]) task = Task(description="...", expected_output="...", agent=agent) crew = Crew(agents=[...], tasks=[...], process=Process.sequential) crew.kickoff() # Hierarchical은 manager_llm 또는 manager_agent 필수
MCP / FastMCP (6부)
PYTHON
from fastmcp import FastMCP mcp = FastMCP("Server") @mcp.tool def add(a: int, b: int) -> int: """두 수를 더한다.""" return a + b mcp.run(transport="http", port=8000) # 연결: agents.mcp.MCPServerStreamableHttp(params={"url": ...})
n8n (7부)
CODE
트리거 노드(Chat/Webhook/Schedule)
└→ AI Agent 노드
├─ Chat Model (OpenAI/Claude/Ollama)
├─ Memory (Simple/Window/Postgres)
├─ Tool (검색/HTTP/앱/벡터스토어)
└─ Output Parser (구조화 출력)
└→ 출력 노드(Slack/Sheets/Gmail) · Switch로 분기
B. 용어집
| 용어 | 뜻 |
|---|---|
| 에이전트(Agent) | LLM이 목표 달성까지 스스로 다음 행동을 정하며 반복 수행하는 시스템 |
| 에이전트 루프 | 인식→추론→행동→관찰을 반복하는 동작 구조 (ReAct) |
| 도구(Tool) | 에이전트가 호출해 외부와 상호작용하는 함수 |
| 함수 호출(Function Calling) | LLM이 도구 호출을 JSON으로 요청하는 메커니즘 |
| 핸드오프(Handoff) | 한 에이전트가 다른 에이전트에게 통제권을 넘김 (OpenAI SDK) |
| 가드레일(Guardrail) | 입출력을 검사해 부적절한 사용을 차단 |
| 트립와이어(Tripwire) | 가드레일이 작동해 실행을 멈추는 트리거 |
| 메모리(Memory) | 대화 맥락을 유지하는 기록. 단기(대화)·장기(영속) |
| 체크포인터(Checkpointer) | 그래프 상태를 저장해 재개를 가능케 함 (LangGraph) |
| 휴먼 인 더 루프(HITL) | 중요한 단계에서 사람의 승인을 받는 패턴 |
| State / Node / Edge | LangGraph의 3대 원시: 공유 데이터·작업·전환 |
| 조건부 엣지 | 라우터 함수 결과로 다음 노드를 정하는 분기 |
| 리듀서(Reducer) | 상태 병합 방식(덮어쓰기 vs 누적)을 정함 |
| Crew / Process | CrewAI의 팀과 실행 방식(Sequential/Hierarchical) |
| Flows | CrewAI의 이벤트 기반 통제 워크플로 |
| MCP | 도구를 표준 방식으로 연결하는 프로토콜 ("AI용 USB-C") |
| 매니페스트 | MCP 서버가 노출하는 도구·스키마 목록 |
| RAG | 관련 지식을 검색해 컨텍스트에 주입하는 기법 |
| 토큰(Token) | LLM 처리·과금의 기본 단위 |
| 프롬프트 인젝션 | 외부 콘텐츠의 숨은 지시로 에이전트를 오작동시키는 공격 |
| 트레이싱(Tracing) | 실행 흐름을 기록해 디버깅·평가에 쓰는 기능 |
C. 추가 학습 링크
빠르게 변하는 분야이므로, 항상 공식 문서를 1차 출처로 삼으세요.
공식 문서
- OpenAI Agents SDK:
openai.github.io/openai-agents-python - LangGraph:
docs.langchain.com(LangGraph 섹션) - CrewAI:
docs.crewai.com - MCP:
modelcontextprotocol.io/ FastMCP:gofastmcp.com - n8n:
docs.n8n.io(Advanced AI 섹션) - Microsoft Agent Framework(AutoGen 후계): Microsoft 공식 문서
배경 개념
- ReAct 패턴 원 논문 (Reasoning + Acting)
- RAG(검색 증강 생성) 개념 자료
- ML 회귀·랜덤포레스트 등 기초 (5부 데이터사이언스 보충): scikit-learn 공식 문서, 강의 영상
학습 팁
- 각 프레임워크의 공식 "examples" 저장소를 클론해 직접 돌려보기
- 대표 입력 10~20개로 테스트 세트를 만들어 프롬프트 변경 시 회귀 점검
- 트레이스·실행 이력을 항상 켜고 관찰하는 습관
D. 빠른 의사결정 요약
| 상황 | 추천 |
|---|---|
| 비개발자 포함·업무 자동화 | n8n |
| 흐름을 정밀 제어·프로덕션 복구 | LangGraph |
| 역할 분담형·빠른 프로토타입 | CrewAI |
| OpenAI 중심·최소 추상화로 빠르게 | OpenAI Agents SDK |
| 도구를 여러 클라이언트에서 공유 | MCP로 표준화 |
| 새 멀티에이전트(MS 생태계) | Microsoft Agent Framework |
이전 장: 23. 트러블슈팅과 프레임워크 선택 가이드
처음으로: 00. 학습 안내서 INDEX
맺음말
이 안내서는 여러 프레임워크를 다뤘지만, 진짜 자산은 도구 이름이 아니라 개념입니다. 에이전트 루프, 메모리, 도구, 멀티에이전트 협업, 가드레일, 비용·보안 — 이 개념들은 다음에 어떤 새 프레임워크가 나와도 그대로 통합니다. 도구는 계속 바뀌겠지만, 여러분이 1부에서 8부까지 쌓은 사고의 틀은 남습니다. 그 틀을 들고 공식 문서를 읽고, 직접 만들고, 트레이스를 관찰하며 다듬어 가세요. 그것이 에이전틱 AI 엔지니어의 일입니다.