핸즈온 OpenAI Agents SDK with Python
책 소개
2022년 11월 ChatGPT의 등장은 인공지능 역사에 있어 결정적인 전환점이 되었다. 단순히 질문에 답하는 수준을 넘어, 복잡한 맥락을 이해하고 창의적인 결과물을 생성하는 대규모 언어 모델(LLM)의 능력은 기술 산업 전반에 걸쳐 새로운 가능성을 열었다. 하지만 ChatGPT와 같은 대화형 인터페이스는 시작에 불과했다. 진정한 혁신은 LLM이 능동적으로 도구를 사용하고, 복잡한 작업을 단계별로 수행하며, 지속적으로 학습하고 적응할 수 있는 '에이전트(Agent)'로 진화하면서 시작되었다.
LLM 에이전트는 단순한 텍스트 생성을 넘어 실제 비즈니스 문제를 해결하는 자율적인 시스템이다. 외부 API를 호출하고, 데이터베이스를 조회하며, 다른 에이전트와 협업하여 복잡한 워크플로우를 실행한다. 고객 서비스 자동화, 데이터 분석, 문서 처리, 코드 생성 등 다양한 영역에서 에이전트 기술은 이미 실질적인 가치를 창출하고 있다.
그러나 LLM 에이전트를 실제 프로덕션 환경에 배포하는 것은 여전히 많은 도전 과제를 안고 있다. 불안정한 출력, 예측 불가능한 동작, 복잡한 상태 관리, 에러 핸들링, 보안 문제 등 수많은 기술적 장벽이 존재한다. 연구 프로토타입 수준의 에이전트와 실제 비즈니스에 적용 가능한 안정적인 에이전트 사이에는 큰 격차가 있다.
이러한 격차를 줄이기 위해 OpenAI는 2024년 12월, Agents SDK(소프트웨어 개발 키트)를 공식 발표했다. Agents SDK는 개발자들이 프로덕션 수준의 에이전트를 보다 쉽고 안정적으로 구축할 수 있도록 설계된 통합 프레임워크다. 메모리 관리, 도구 통합, 에러 핸들링, 관찰 가능성(observability), 멀티 에이전트 오케스트레이션 등 에이전트 개발에 필수적인 기능들을 체계적으로 제공한다.
본서는 OpenAI Agents SDK를 활용하여 실전에서 바로 사용 가능한 LLM 에이전트를 구축하는 방법을 다룬다. 단순한 API 레퍼런스 나열이 아니라, 실제 개발 현장에서 마주치는 문제들을 해결하는 핵심 패턴과 베스트 프랙티스를 중심으로 구성했다. 각 장은 개념 설명, 실제 코드 예제, 그리고 프로덕션 환경을 고려한 구현 방법을 포함한다.
본서를 집필하면서 가장 중점을 둔 부분은 '실용성'이다. 모든 예제는 실제로 동작하는 코드이며, 각 패턴은 실무에서 바로 적용할 수 있도록 설계했다. 또한 프로덕션 환경에서 발생할 수 있는 다양한 엣지 케이스와 그 해결 방법을 함께 제시했다.
LLM 에이전트 기술은 여전히 빠르게 진화하고 있다. OpenAI Agents SDK 역시 지속적으로 업데이트되고 개선될 것이다. 하지만 본서에서 다루는 핵심 패턴과 원칙들은 SDK 버전이 변경되어도 여전히 유효할 것이다. 메모리 관리, 에러 핸들링, 멀티 에이전트 협업 등의 기본 개념은 에이전트 개발의 본질이기 때문이다.
이 책이 LLM 에이전트 개발 여정을 시작하는 개발자들에게 든든한 가이드가 되기를 바란다. 또한 이미 에이전트를 개발하고 있는 실무자들에게는 프로덕션 수준의 시스템을 구축하는 데 필요한 구체적인 해법을 제공하기를 희망한다. OpenAI Agents SDK를 통해 여러분의 아이디어가 실제로 동작하는 지능형 시스템으로 구현되는 과정에 이 책이 작은 보탬이 되었으면 한다.
목 차
저자 소개 Table of Contents (목차)
서문: 들어가며
제1장: OpenAI Agentss SDK 시작하기 1.1. Hello World - 첫 번째 에이전트 만들기 1.2. 문서 작성 에이전트 - 고급 설정 1.3. 구조화된 출력 에이전트 1.4. 대화형 에이전트
제2장: 메모리(Memory) 관리 2.1. 무상태 에이전트 - 기본 동작 이해 2.2. 영속 메모리 - 자동 대화 기록 2.3. 수동 메모리 관리 2.4. 컨텍스트 메모리 - 애플리케이션 상태 관리 2.5. 고급 컨텍스트 메모리 - 장기 기억 시스템 2.6. 복합 메모리와 컨텍스트
제3장: 세션(Session) 관리 3.1. 세션 사용하기 3.2. 세션 저장하기
제4장: 동적 지시문과 모델 설정 4.1. 동적 지시문 에이전트 (Instruction Agent) 4.2. 모델 설정 구성
제5장: 실행 결과 분석과 모니터링 5.1. RunResult 기초 5.2. RunResult 심층 분석 5.3. RunResult와 대화 관리 5.4. RunResult 프로덕션 모니터링
제6장: 프로덕션 수준 에이전트 구축 6.1. 단계별 프로덕션 에이전트 구축 6.2. 최종 프로덕션 데모 실행
제7장: 에러 핸들링과 디버깅 7.1. 에러 핸들링 에이전트 7.2. 실행 결과 에러 분석 7.3. 에이전트 실행 디버깅
제8장: 도구(Tool) 통합 기초 8.1. 기본 도구 통합 8.2. 고급 도구 통합
제9장: 도구(Tool) 활용 및 고급 패턴 9.1. 함수 도구 활용 9.2. OpenAI 호스팅 도구
제10장: 고객 서비스 에이전트와 대화 관리 10.1. 고객 서비스 에이전트 메모리 10.2. 프로덕션 대화 관리
제11장: 실행 패턴 (Execution Patterns) 11.1. 동기 실행 (Synchronous Execution) 11.2. 비동기 실행 (Asynchronous Execution) 11.3. 스트리밍 실행 (Streaming Execution)
제12장: 설정 관리와 최적화(Optimization) 12.1. 설정 관리 (Configuration Management) 12.2. 토큰 최적화 (Token Optimization) 12.3. 메모리 최적화 (Memory Optimization)
제13장: 가드레일(Guardrails)& 모더레이션(Moderation) 13.1. 기본 입력 가드레일 13.2. 고급 입력 검증 13.3. 콘텐츠 모더레이션 13.4. 도메인별 가드레일 (의료 분야)
제14장: 모니터링(Monitoring)과 엣지 케이스 처리 14.1. 사전 모니터링 시스템 14.2. 실시간 에이전트 모니터링 14.3. 엣지 케이스 처리
제15장: 핸드오프(Handoff) & 라우팅(Routing) 15.1. 기본 에이전트 핸드오프 15.2. 다중 핸드오프 라우터 15.3. 커스텀 핸드오프 함수 15.4. 핸드오프 입력 필터
제16장: 관찰 가능성과 추적 (Observability & Tracing) 16.1. 기본 관찰 가능성 16.2. 커스텀 비즈니스 메트릭
제17장: 에이전트 오케스트레이션 패턴 17.1. 코드 기반 오케스트레이션 (Code-based Orchestration) 17.2. 하이브리드 오케스트레이션 17.3. 공유 컨텍스트 패턴
제18장: 멀티 에이전트 처리 패턴 18.1. 순차 처리 (Sequential Processing) 18.2. 병렬 처리 (Parallel Processing) 18.3. 조건부 라우팅 (Conditional Routing)
제19장: 팀 오케스트레이션 (Team Orchestration) 19.1. 리서치 팀 오케스트레이션 19.2. 전문화된 리서치 에이전트 생성 19.3. 리서치 팀 실행 데모
제20장: 멀티모달 에이전트 20.1. 기본 비전 분석 20.2. 고급 비전 에이전트
결론 - 마무리 하며 References. 참고 문헌
E-Book 구매
Yes24: https://www.yes24.com/product/goods/171359745
교보문고: https://ebook-product.kyobobook.co.kr/dig/epd/ebook/E000012392928
Github 코드
Last updated
