ryuhyoj***
2026-05-24

환각과 비용의 병목을 뚫고 프로토타입을 실서비스로 진화시키는 32가지 설계 패턴을 소개합니다. 특정 기술에 종속되지 않는 범용 패턴과 파이썬 예제를 통해 스스로 사고하고 행동하는 프로덕션급 에이전트 시스템을 완성하도록 돕습니다.
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬받아 작성된 서평입니다."
"그럴듯한 프로토타입은 누구나 만든다. 하지만 무너지지 않는 서비스는 '설계'에서 갈린다."
이 책은 LLM API를 붙여 데모를 만드는 시대를 지나, 그 데모를 실제 사용자에게 내보내는 '프로덕션'의 문턱에서 모두가 부딪히는 골짜기-환각, 매번 달라지는 응답, 지식 공백-를 정면으로 다룬다.
저자는 이 문제들을 "프롬프트를 더 잘 쓰면 된다"는 식으로 넘기지 않는다.
대신 시스템 설계의 문제로 격상시킨 뒤, 현업에서 반복적으로 마주치는 32가지 상황을 문제 정의 → 해결 방식 → 코드 예제 → 트레이드오프라는 일관된 형식의 '패턴'으로 정리한다.
책을 덮을 때쯤이면, 어떤 모델을 쓰든 흔들리지 않는 설계 원칙 한 묶음이 손에 쥐어져 있다.
1. '패턴'이라는 형식의 힘 — GoF의 AI 버전
오래전 개발자들이 손에 들고 다니던 GoF 디자인 패턴서를 떠올리면 가장 가깝다. 모든 패턴이 동일한 구조로 서술되어, 정답을 외우는 게 아니라 판단의 좌표계를 얻게 된다. 덕분에 설계 회의에서 "지금 우리 RAG는 검색 품질 검증 단계가 비었으니 CRAG 패턴을 넣을지 보자"고 말할 팀 공용 언어가 생긴다.
2. RAG를 '검색 붙이기'에서 '아키텍처'로 끌어올린다
분량으로 보나 깊이로 보나 이 책의 심장은 RAG다. "임베딩 + 벡터DB"라는 흔한 한 줄 요약을 넘어, CRAG(검색된 문서 품질을 재검증), Self-RAG(모델이 스스로 근거가 충분한지 점검)까지 단계적으로 분화시킨다. 검색 결과 하나만 잘못 들어와도 답변 전체가 무너지던 고질병을 아키텍처로 푸는 방법을 보여준다.
3. "모델은 틀릴 수 있다"를 전제로 설계한다
심판형 LLM(LLM-as-a-Judge)과 성찰(Reflection) 패턴은 AI가 낸 답을 또 다른 AI가 평가하고 스스로 고치게 만든다. 그 밑에 깔린 "AI도 테스트의 대상"이라는 관점이 인상적이다. 기존 소프트웨어의 단위 테스트처럼, 생성형 AI를 검증 가능한 엔지니어링 안으로 끌어들인다.
4. 특정 모델·프레임워크에 종속되지 않는다
GPT든 클로드든 제미나이든, 랭체인이든 무엇이든 가리지 않는다. 무게중심을 구현이 아니라 설계 사고에 두었기 때문에, 코드 예제는 낡아도 패턴은 살아남는다. 변화 속도가 빠른 AI 환경에서 비교적 오래 참고할 수 있다는 게 가장 영리한 선택이다.
5. 가장 가려운 곳 — 신뢰성·안전·비용까지 챙긴다
후반부 9장의 가드레일은 프롬프트 인젝션 방어, 행동 제한, 자체점검을 다루며 "에이전트가 외부 도구를 쓰는 순간 보안은 곧 설계 문제가 된다"는 걸 체감시킨다. 8장에서는 소규모 언어 모델(SLM), 프롬프트 캐싱, 인퍼런스 최적화로 비용과 지연시간이라는 현실적 제약까지 놓치지 않는다.
이 책의 미덕은 "AI를 써보는 단계에서 AI로 시스템을 설계하는 단계로 데려다 준다"는 점이다.
시중의 AI 책 상당수가 "이런 게 가능해요!"에서 멈추는 반면, 이 책은 출력 형식 제어부터 RAG 고도화, 신뢰성 검증, 다중 에이전트 협업, 비용 최적화, 가드레일까지 프로덕션을 떠받치는 전 과정을 32개의 이름 붙은 패턴으로 촘촘히 안내한다.
특히 인상 깊었던 건 두 가지다.
첫째, 관점의 전환. "모델은 틀릴 수 있다"를 전제로 시스템을 설계한다는 한 문장이, 배포를 망설이던 마음의 매듭을 풀어줬다.
둘째, 레퍼런스로서의 가치. 쉽게 읽히는 책은 아니다. 하지만 생성형 AI 정보가 사방에 흩어진 지금, 책상 옆에 꽂아두고 설계 회의 전에 꺼내 보게 될 그런 책이다.
앞으로의 경쟁력은 "얼마나 큰 모델을 쓰느냐"가 아니라 "그 모델을 얼마나 신뢰할 수 있는 시스템으로 엮어내느냐"에서 갈린다. AI 도구에 어느 정도 익숙해진 분이라면, 이 책으로 분명히 한 단계 더 나아갈 수 있다.