러닝 랭체인 - 랭체인과 랭그래프로 구현하는 RAG, 에이전트, 인지 아키텍처 | MCP 개념부터 서버 구축 및 활용법 특별 수록
메이오 오신.누노 캄포스 지음, 강민혁 옮김 / 한빛미디어 / 2025년 5월
평점 :
장바구니담기


한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.


1. 이 책을 선택한 동기


일전에 GPT API를 활용한 인공지능 앱 개발을 읽어봤지만, `OpenAI API`에만 의존해야 한다는 제약과 실제 구현하기에는 깊이 있는 지식이 부족하다는 걸 느꼈어요.


그러던 중 랭체인이라는 프레임워크를 알게 되었습니다. LLM을 단순히 API로 호출하는 차원을 넘어서, 복잡한 워크플로우를 구성하고 다양한 LLM 모델을 조합해서 사용할 수 있다는 점이 매력적이었어요. 


더욱이 실제 운영 환경에서 돌아가는 LLM 애플리케이션을 만들려면 단순한 질의응답 기능을 넘어서, `RAG`(검색 증강 생성)나 `에이전트` 같은 고급 개념들을 이해해야 한다는 걸 깨달았어요. 이론만 아는 게 아니라 실제로 구현할 수 있는 실력을 기르고 싶어서 러닝 랭체인을 읽기 시작했습니다.



2. 어떤 책인지


러닝 랭체인은 단순한 랭체인 매뉴얼이 아니었어요. LLM을 활용한 실용적인 애플리케이션 개발의 전체 여정을 다루는 종합 가이드였습니다. 책은 크게 세 부분으로 나뉩니다.


첫 번째는 LLM과 랭체인의 기초 개념 설명입니다. AI나 머신러닝 배경지식이 없어도 이해할 수 있도록 트랜스포머 아키텍처부터 프롬프트 엔지니어링까지 친절하게 설명해줘요. 


두 번째는 랭체인의 핵심 기능들을 하나씩 파헤치는 부분입니다. 체인, 메모리, 에이전트, RAG 시스템 구축 방법을 실습 위주로 다룹니다. 


마지막은 랭그래프를 활용한 고급 워크플로우 설계인데, 이 부분이 특히 인상적이었어요.


가장 큰 특징은 `Python`과 `JavaScript` 두 언어로 모든 예제를 제공한다는 점입니다. JavaScript가 주력인 저에게는 특히 좋았던 점입니다. 또한 단순한 코드 나열이 아니라, 복잡한 설계적인 부분은 시각적 다이어그램으로 설명해서 복잡한 AI 개념들을 직관적으로 이해할 수 있게 도와줍니다.



3. 특히 인상적이었던 점


가장 인상깊었던 건 랭체인의 `체인` 개념을 설명하는 방식이었어요. 처음에는 단순히 여러 LLM 호출을 연결하는 정도로만 이해했는데, 책을 읽으면서 이게 얼마나 강력한 패러다임인지 깨달았습니다.


예를 들어, 사용자 질문을 받아서 → 관련 문서를 검색하고 → 검색 결과를 요약한 뒤 → 최종 답변을 생성하는 과정을 하나의 체인으로 구성할 수 있어요. 이 과정에서 각 단계마다 다른 프롬프트와 모델을 사용할 수 있고, 중간 결과를 메모리에 저장해서 다음 단계에 활용할 수도 있습니다.


이걸 보면서 React의 `컴포넌트 합성` 개념과 매우 유사하다는 걸 느꼈어요. 작은 기능들을 조합해서 복잡한 애플리케이션을 만드는 방식에서 닮은 점이 느껴졌습니다. 특히 `LCEL`(LangChain Expression Language) 문법을 보면서는 함수형 프로그래밍의 파이프라인 연산자와 비슷하다는 생각이 들었습니다.


또 하나 인상적이었던 건 **RAG 시스템 구축 과정을 단계별로 상세히 설명**한 부분이에요. `벡터 데이터베이스`, `임베딩`, `문서 분할`, `유사도 검색` 같은 개념들이 처음에는 추상적으로 느껴졌는데, 실제 구현 예제를 따라하면서 '아, 이렇게 동작하는구나!'라는 순간이 여러 번 있었어요.



4. 덕분에 무엇을 배웠는가


첫째, 프롬프트 엔지니어링의 실제 적용법이에요. 단순히 "좋은 프롬프트를 작성하라"는 추상적인 조언이 아니라, Few-shot 프롬프트, Chain-of-Thought, 역할 기반 프롬프트 등 구체적인 기법들을 실습할 수 있었습니다.


둘째, RAG 시스템 구축을 통해 벡터 데이터베이스의 작동 원리를 이해했어요. 문서를 어떻게 임베딩으로 변환하고, 유사도 검색을 통해 관련 정보를 찾아내는지, 그리고 이를 LLM의 컨텍스트로 활용하는 전체 파이프라인을 손으로 구현해볼 수 있었습니다.


셋째, 랭그래프를 통한 상태 기반 대화 시스템 구축법을 익혔어요. 단순한 일회성 질답이 아니라, 이전 대화 내용을 기억하고 복잡한 워크플로우를 처리할 수 있는 에이전트를 만드는 방법을 배웠습니다.


마지막으로, LLM 애플리케이션의 성능 최적화와 비용 관리에 대한 실용적인 지식도 얻었어요. `토큰 사용량 최적화`, `캐싱 전략`, `스트리밍 응답` 등 실제 운영 환경에서 고려해야 할 요소들을 알 수 있었습니다.



5. 좋았던 점


5.1 Python과 JavaScript 예제 동시 제공의 장점


모든 예제를 `Python`과 `JavaScript` 두 버전으로 제공한다는 점이에요. JavaScript가 주력 언어인 저에게는 정말 큰 도움이 되었습니다. 기본적으로는 JS 코드를 따라했지만, Python 코드도 함께 보면서 두 언어 간의 문법적 차이점을 자연스럽게 학습할 수 있었어요.


특히 비동기 처리 방식의 차이가 흥미로웠습니다. JavaScript의 `async/await`와 Python의 `asyncio`가 어떻게 다르게 구현되는지, `Promise`와 `Coroutine`의 차이점 등을 코드로 직접 비교해볼 수 있었거든요. 한 번에 두 언어의 지식을 얻는 효과가 있었습니다.


5.2 체계적인 기초 지식 제공


0장에서 LLM 기초 지식을 충실히 다룬 점도 좋았어요. `트랜스포머 아키텍처`, `어텐션 메커니즘`, `토큰화`, `프롬프트 엔지니어링`, `파인튜닝` 등 AI 배경지식이 전혀 없어도 이후 랭체인 학습에 필요한 필수 개념들을 빠르게 습득할 수 있도록 구성되어 있었습니다.


특히 각 개념을 설명할 때 단순한 정의가 아니라, 실제 사용 사례와 함께 설명해주는 점이 인상적이었어요. 예를 들어 `Few-shot` 프롬프트를 설명할 때도 "몇 개의 예시를 제공하는 것"이라는 추상적 설명에 그치지 않고, 실제로 어떤 상황에서 효과적인지, 어떻게 예시를 구성해야 하는지까지 구체적으로 알려줬습니다.


5.3 시각적 이해를 돕는 다이어그램


복잡한 AI 개념들을 다이어그램으로 시각화해서 설명한 점도 큰 장점이었어요. 특히 `RAG` 파이프라인을 설명할 때 문서 입력부터 최종 응답 생성까지의 전체 과정을 플로우차트로 보여준 건 정말 도움이 되었습니다. `벡터 데이터베이스`의 작동 원리도 단순히 "유사도 검색을 한다"는 설명보다는, 실제로 문서가 어떻게 벡터로 변환되고, 쿼리 벡터와 어떻게 비교되는지를 그림으로 보여줘서 직관적으로 이해할 수 있었어요.



6. 아쉬운 점


6.1 LLM 애플리케이션 a to z 개발 내용 부재


가장 아쉬웠던 점은 처음부터 끝까지 하나의 완성된 **LLM 애플리케이션을 개발하는 내용이 없었다는 점입니다.** 각 장마다 해당 개념을 설명하는 예제는 충실하지만, 실제로 배포 가능한 수준의 애플리케이션을 단계별로 구축해보는 경험은 제공되지 않았습니다.


예를 들어, "문서 기반 Q&A 시스템 만들기" 같은 프로젝트를 통해 요구사항 분석부터 시작해서 데이터 준비, RAG 시스템 구축, UI 개발, 배포, 모니터링까지 전체 개발 사이클을 경험해볼 수 있었다면 더 좋았을 것 같아요.


6.2 최신 모델 반영 할 수 없는 한계


책이 출간된 시점(2025년 5월 14일)이 얼마 되지 않았음에도 벌써 각 LLM 모델의 업그레이드 버전이 많이 나와버렸죠. 책의 예제에서는 `gpt-3.5-turbo-instruct`를 사용하지만, 예를 들어 GPT-4o, Claude 4 같은 새로운 모델들이나, 최신 랭체인 버전의 변경사항들이 반영되지 않은 점은 어쩔 수 없는 한계인 것 같습니다. 


다만 어떤 모델을 선택하느냐는 “랭체인을 통해 LLM을 구현한다”는 점을 익히는 과정에서는 크게 영향을 끼치지는 않기 때문에 학습에 지장이 생기지는 않습니다.



7. 이 책을 읽은 덕분에 기대되는 변화


1. 당장 시도해보고 싶은 프로젝트들이 생겼어요. 예를 들어, 회사에서 사용할 수 있는 내부 문서 검색 시스템입니다. 개발팀에서 누적된 기술 문서, 회의록, 가이드 등을 RAG 시스템으로 구축해서 자연어로 검색할 수 있게 만들어보고 싶어요.

2. 랭체인을 통해 배운 개념들이 다른 개발 영역에도 도움이 될 것 같아요. 특히 파이프라인 설계, 상태 관리, 비동기 처리 등의 개념은 일반적인 웹 애플리케이션 개발에도 적용할 수 있을 것 같습니다.

3. 또한 AI 기술의 발전 속도를 고려하면, 지금 배운 기초가 앞으로 더 고급 기술을 학습할 때 탄탄한 토대가 될 거라고 생각해요. 랭체인 생태계 자체도 계속 발전하고 있으니, 이 책으로 기초를 다진 상태에서 새로운 기능들을 추가로 학습해나갈 수 있을 것 같습니다.


앞으로는 AI 도구를 단순히 사용하는 차원을 넘어서, 실제 비즈니스 문제를 해결하는 맞춤형 솔루션을 만들 수 있을 것 같아요.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
멀티패러다임 프로그래밍 - 객체지향, 함수형, 명령형의 통합적 사고로 구현하는 소프트웨어 설계와 구현
유인동 지음 / 한빛미디어 / 2025년 4월
평점 :
장바구니담기


 "한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."


이 책을 선택한 동기
개발 커뮤니티에서 '객체지향 vs 함수형' 주제를 의논하는 글을 많이봐왔습니다. 객체지향은 Flutter 개발을 하게되면서 차츰 이해할 수 있었지만, 함수형은 여전히 잘 모르는 영역이었어요.


그러던 중 멀티패러다임 프로그래밍이라는 책 제목을 보게 되었어요. 밸런스 게임처럼 '이것 아니면 저것'의 이분법적 사고에서 벗어나, 상황에 따라 필요한 패러다임을 조합해서 사용할 수 있다는 접근법이 신선했습니다. 함수형, 객체지향, 절차적 프로그래밍을 한 번에 조화롭게 이해할 수 있다는 기대감에 이 책을 선택할 수밖에 없었어요.

 

어떤 책인지
이 책은 제목 그대로 '멀티패러다임'에 대한 종합적인 가이드입니다. 총 7장으로 구성되어 있으며, 각 패러다임을 단순히 나열하는 것이 아니라 실제로 어떻게 조합해서 사용하는지에 중점을 두고 있어요.

 

1-3장에서는 이론적 기반을 다집니다. 객체지향의 반복자 패턴과 함수형의 일급 함수가 어떻게 만나는지, 자바스크립트의 이터레이션 프로토콜을 통해 실제 언어에서 어떻게 구현되는지 보여줍니다. 특히 LISP와 하스켈 같은 순수 함수형 언어의 개념들을 자바스크립트로 어떻게 가져올 수 있는지 설명해요.

 

4-5장에서는 실전으로 들어갑니다. 비동기 프로그래밍과 실제 데이터 처리 사례들을 다루면서, 함수형 프로그래밍이 단순한 이론이 아니라 실무에서 어떻게 활용되는지 보여줍니다. 특히 백엔드 비동기 처리나 커머스 데이터 다루기 같은 현실적인 예제들이 인상적이었어요.

 

6-7장은 종합편입니다. HTML 템플릿 엔진을 만들면서 객체지향과 함수형을 실제로 조합하고, Todo 앱과 Setting 앱을 통해 프런트엔드 개발에서의 멀티패러다임 적용법을 보여줍니다.

 

저자 유인동님의 접근 방식이 특히 좋았던 것은, 각 패러다임의 장단점을 이론적으로만 설명하는 게 아니라 '언제, 왜, 어떻게' 조합해야 하는지 구체적인 코드와 함께 보여준다는 점이었어요.

 

특히 인상적이었던 점
첫 챕터부터 머리를 한 대 맞은 기분이었습니다. '이터러블, 이터레이터, 제네레이터'를 통해 타입스크립트를 다양한 프로그래밍 방식으로 작성할 수 있다는 구체적인 사례를 보여주는데, 그 순간 제가 그동안 얼마나 기본기를 놓치고 있었는지 깨달았어요.

 

부끄럽지만 그렇게 숱하게 사용하고 있던 forEach, map, filter에 대해 저는 아무것도 몰랐다는 것을 알게되어죠…! 이들이 이터러블 객체를 다루는 방식이라는 것도 제대로 이해하지 못했고, 제네레이터는 책에서나 슬쩍 봤지 실제 구현에 활용한다는 생각을 해본 적이 없었어요. 고차함수, 일급함수도 마찬가지였습니다.


또한 타입스크립트 활용법에서 인상적이었습니다. 저는 그동안  타입스크립트를 아주 기초적인 부분만 사용하고 있었고, 제네릭도 때때로 쓰긴 했지만 정말 얕게만 활용하고 있었습니다. 아이러니하게도 멀티패러다임 프로그래밍을 알고 싶어 펼치게 된 이 책에서 타입스크립트를 더 잘 알게 되는 계기가 되었어요.

 

특히 타입스크립트의 제네릭과 클래스를 조합하는 방법, map 등의 고차함수를 체이닝으로 연결해서 훨씬 간결하고 자연스러운 흐름으로 읽을 수 있게 만드는 기법들이 정말 놀라웠습니다. 이런 기본기를 정확히 이해하면 이렇게까지 활용할 수 있다는 점이 충격적이었어요.

 

덕분에 무엇을 배웠는가
가장 큰 수확은 제가 그동안 절차형으로만 작성해왔던 코드를 완전히 다른 관점에서 바라보게 되었다는 점입니다.

 

1. 이터레이터와 제네레이터를 실제로 활용할 수 있겠다는 확신이 생겼어요. 책에서 보여준 FxIterable 클래스처럼 제네릭과 이터러블을 조합해서 체이닝 가능한 데이터 처리 파이프라인을 만드는 방법이 정말 인상적이었습니다. 단순히 배열에 forEach, map, filter를 쓰는 게 아니라, 지연 평가를 통해 성능까지 최적화할 수 있다는 점이 놀라웠어요.

 

2. 타입스크립트의 제네릭 활용 방법을 제대로 익혔습니다. 이전에는 단순히 타입 안전성을 위해서만 사용했는데, 이제는 함수형 프로그래밍과 객체지향을 조합하는 핵심 도구라는 것을 알게 되었어요. `FxIterable<A>`처럼 타입 파라미터를 통해 체이닝하면서도 타입 안전성을 보장하는 방식이 정말 우아하더라고요.
 
3. 비즈니스 로직을 멀티패러다임으로 작성해볼 용기가 생겼습니다. 이토록 기발한 아이디어로 만들어진 효율적인 프로그래밍 방식이지만, 팀원과 함께 싱크를 맞춰야 실무에서 적용할 수 있을 것 같아요. 독단으로 갑자기 적용하기 시작하면 팀 컨벤션이 무너지고, 코드를 보는 팀원들이 받지 않아도 될 스트레스가 늘어나겠죠...! 하지만 같이 공부하면서 적용하면 분명 다 같이 행복해길 것이라 생각해요!

 

좋았던 점
1. 체계적이고 점진적인 학습 구조
각 패러다임을 따로 설명하는 것이 아니라, 어떻게 조합되는지에 중점을 둔 구성이 정말 좋았습니다. 1장에서 이터레이터 패턴과 일급 함수의 만남을 보여주고, 2-3장에서 LISP와 하스켈의 개념을 자바스크립트로 가져오는 과정이 자연스럽게 이어졌어요. 특히 제네레이터로 이터레이터를 만드는 과정에서 명령형과 함수형이 어떻게 연결되는지 보여준 부분이 인상적이었습니다.


2. 실무 중심의 실전 예제와 적용법
4-5장의 비동기 프로그래밍과 실전 데이터 처리 사례들이 특히 도움이 되었어요. 단순한 이론 설명이 아니라 '커머스 데이터 다루기', '결제 프로세스 문제', '백엔드 비동기 처리' 같은 현실적인 문제들을 멀티패러다임으로 해결하는 방법을 보여줬습니다. 6-7장의 HTML 템플릿 엔진과 Todo 앱 만들기도 실제로 적용해볼 수 있는 구체적인 사례여서 좋았어요.

 

3. 다양한 언어와의 비교를 통한 개념 이해
하스켈, LISP(클로저), 코틀린, 스위프트 등 다른 언어들의 예제를 통해 멀티패러다임이 단순히 자바스크립트만의 특징이 아니라는 점을 보여준 것이 좋았습니다. 특히 하스켈의 함수 합성 연산자나 클로저의 매크로 시스템을 자바스크립트로 어떻게 가져올 수 있는지 설명한 부분이 인상적이었어요.

 

이를 통해 언어를 넘어 적용 가능한 개념이라는 패러다임의 본질을 이해할 수 있었습니다. 프론트엔드 개발자로서 Flutter(Dart)도 사용하는 입장에서, 다른 언어에서도 이런 접근법을 적용해볼 수 있겠다는 영감을 얻었어요.

 

조금 아쉬웠던 점
초보자에게는 다소 학습 곡선이 가파를 수 있습니다. 사실 저는 예제들을 이해하기에 조금 버거웠어요..! 첫 챕터부터 이터레이터, 제네레이터, 고차함수 개념들이 한꺼번에 나오면서 제 기본기 부족을 절실히 느꼈어요.

하지만 이것이 책의 문제라기보다는, 오히려 제가 기본기가 아직 탄탄하지 않다는 것을 깨닫게 해준 계기가 되었습니다. 어떻게든 읽어내려고 노력하면서 오히려 기본기를 강화할 수 있었어요.

 

다행히 저자님께서 설명하는 문장 자체는 무척 이해하기 쉽게 작성해주셨습니다. 특히 복잡한 예제에는 넘버링을 통해 단계별로 쉬운 문장으로 풀이를 작성해주신 부분이 정말 도움이 되었어요. 결과적으로는 한 단계 레벨업할 수 있는 기회가 되었습니다!

 

이 책을 읽은 덕분에 기대되는 변화
서두에 작성한 것처럼, 객체지향과 함수형 코딩에 대해 아직 깊게 익히지 못했음에도 이미 어느 한쪽을 택해서 개발해야 하는 건가라는 이분법적 사고에 빠져있었습니다. 그런데 이 책을 읽고 유연하게 조합을 하면 된다고 사고를 넓힐 수 있었어요!

 

프레임워크에 사고를 제한하지 않고, 언어 레벨에 대해 포커스를 맞출 수 있게 되었습니다. 특히 다른 언어에서는 이걸 어떻게 구현할 수 있었는지를 보여주는 대목들 덕분이죠. 저의 경우 Flutter를 사용하게 되며 조금씩 그 점을 느꼈는데, 멀티패러다임 프로그래밍을 읽은 덕분에 더 뚜렷하게 그려졌습니다.

 

이제 아주 작은 부분부터 각 프로그래밍 방식의 장점을 활용하는 로직을 만들어보려 해요. 이 내용은 동료들에게도 공유하며 함께 시각을 넓히고자 합니다!


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
이펙티브 소프트웨어 아키텍처 - 더 나은, 더 빠른 소프트웨어를 구축하기 위한 소프트웨어 아키텍처 필수 가이드
올리버 골드만 지음, 최희철 옮김 / 길벗 / 2025년 3월
평점 :
장바구니담기


길벗 27차 개발자 리뷰어 활동을 위해 책을 협찬 받아 작성된 서평입니다.


1. 책을 읽게 된 계기


점점 구현을 넘어 시스템 전체를 설계하는 관점에 관심을 가지게 되었습니다. 작게는 하나의 컴포넌트를 어떻게 조직화할지부터, 크게는 여러 팀이 협업할 수 있는 구조를 어떻게 설계해야 하는지에 이르기까지, 단순한 구현을 넘어선 더 큰 그림을 보고 싶은 호기심이 생겼죠.


단순한 기술 지식이 아닌, 아키텍처를 대하는 태도와 사고방식을 배우고 싶었기 때문에 『이펙티브 소프트웨어 아키텍처』를 읽기 시작했습니다.



2. 책의 핵심 내용


아키텍처가 제공하는 가장 핵심적인 가치를 하나만 꼽는다면 그것은 복잡성 관리라고 할 수 있습니다. 복잡성은 소프트웨어의 본질적인 기능을 저해하고 예측 불가능한 동작을 유발하며 사용자 신뢰를 떨어뜨립니다. 또 결함으로 이어져 소프트웨어 안정성을 해치 기도 하고, 장애를 전파시켜 작은 오류로 대규모 중단 사태를 만들기도 합니다. 나아가 복잡한 시스템은 이해하기 어려워 더 단순한 형태나 구조로 개선하기 어럽게 합니다. 즉, 복잡성은 소프트웨어의 가장 큰 적이며, 체계적인 아키텍처 설계야말로 이를 방어할 수 있는 최선의 방법이라고 할 수 있습니다.

『이펙티브 소프트웨어 아키텍처』, 들어가며 중에서



2.1 소프트웨어 아키텍처와 소프트웨어 설계의 구분


『이펙티브 소프트웨어 아키텍처』는 가장 먼저, "소프트웨어 아키텍처가 무엇인지"를 명확히 정의하는 것부터 시작합니다.


여기서 중요한 점은 흔히 "설계(design)"와 "아키텍처(architecture)"를 섞어 쓰지만, 두 개념은 엄연히 다르다는 걸 강조한다는 거였어요.


- 소프트웨어 설계는 시스템의 특정 릴리스(release), 특정 버전, 특정 기능 구현을 위해 구체적인 사항을 결정하고, 변경사항을 반영하는 과정을 말합니다.

- 소프트웨어 아키텍처는 이런 "구체적인 설계 작업들"이 반복될 수 있도록 만드는 기본 뼈대와 패턴, 원칙의 집합입니다. 즉, 좋은 아키텍처는 "좋은 설계"를 단발성이 아니라, 수백 번 수천 번 반복해서 만들어낼 수 있는 기반을 마련해줍니다.


책은 이 차이를 명확히 정리하면서, 아키텍처는 단순한 한 번의 설계가 아니라, 시스템이 시간이 지나면서 겪을 모든 변화와 확장을 지탱할 수 있도록 설계된 '진화 가능한 틀' 이라는 중요한 메시지를 전달합니다.



2.2 아키텍처의 본질

아키텍처를 단순히 다이어그램이나 기술 스택으로 치환하는 실수를 경계합니다.


아키텍처는 시스템의 주요 의사결정(Decisions)의 집합이라고 정의하며,


이 의사결정들이 어떻게 시스템의 유연성, 유지보수성, 확장성에 영향을 주는지를 상세히 설명합니다.


2.3 아키텍트의 역할


아키텍트는 단순히 기술적인 ‘디자인’만 하는 사람이 아니라, 비즈니스 목표를 이해하고, 이해관계자와 커뮤니케이션하며, 갈등을 조정하는 역할까지 수행해야 한다고 강조합니다. 특히 ‘커뮤니케이션의 중요성’을 반복해서 언급하는데, 이는 실제 실무에서 아키텍트가 기술자만이 아니라 "조율자"여야 한다는 현실적인 통찰을 줍니다.


2.4 아키텍처 설계 방법론

변화는 항상 예측할 수 없으며, 그렇기 때문에 아키텍처는 '완성'하는 것이 아니라 '진화'시켜야 한다는 철학을 제시합니다. 초기에 모든 것을 완벽히 설계하려는 시도는 위험하며, 오히려 중요한 결정(핵심 의사결정)은 명확히 하되, 나머지는 점진적으로 설계하는 방법을 추천합니다.



3. 좋았던 점


3.1 현실적인 시각

이 책은 아키텍처 이론서가 아니었어요. 현실 세계에서는 모든 요구사항을 처음부터 알 수 없고, 모든 기술 선택이 완벽할 수 없다는 사실을 인정하는 데서 출발합니다. 그런 ‘현실성’이 되려 이 책을 더욱 신뢰할 수 있게 만들었습니다.


3.2 변화 관리의 중요성 강조

빠르게 변화하는 시대에 맞게 아키텍처도 변화에 강한 구조로 설계해야 한다는 메시지가 인상 깊었습니다. 

'처음에 완벽히 설계한다'는 환상을 버리고, 설계의 핵심은 "변화를 받아들일 수 있는 유연성"이라는 것을 설득력 있게 풀어냅니다. 이 점은 특히 빠르게 변화하는 스타트업 환경이나, 제품 주기가 짧은 프로젝트에 적용할 때 큰 통찰을 줍니다.



3.3 아키텍트의 소프트 스킬 강조

기술적인 설계 능력뿐 아니라, 이해관계자와 소통하고, 팀을 설득하며, 조직 내 갈등을 중재하는 능력을 아키텍트의 핵심 역량으로 다루는 부분이 특히 좋았습니다. 


기술자적 관점만으로는 해결할 수 없는 문제들이 아키텍처에서는 더 빈번하게 나타난다는 사실을 자연스럽게 받아들이게 해줍니다.



4. 아쉬웠던 점


4.1 기술적인 깊이에 대한 아쉬움


책이 지향하는 대상이 ‘개념과 철학’을 다루는 쪽이다 보니, 구체적인 시스템 설계 사례나 마이크로서비스, 도메인 주도 설계(DDD), 이벤트 소싱 같은 **구체적인 아키텍처 패턴**에 대한 깊이 있는 다루기는 상대적으로 부족했습니다.


실제 대규모 시스템에서 아키텍처를 어떻게 적용했는지에 대한 예시가 조금 더 많았더라면 실질적인 적용에 더 도움이 되었을 것 같다는 아쉬움이 남습니다.


4.2 분량에 따른 압축된 전개


비교적 짧은 분량 안에 아키텍처의 철학부터 조직 운영까지 담으려다 보니, 일부 챕터에서는 다소 빠르게 주제가 넘어가는 인상을 받았습니다. 


특히 아키텍처를 처음 공부하는 독자에게는 약간 더 친절한 설명이나 추가적인 사례가 있었다면 더 좋았을 것 같습니다.


5. 느낀 점


『이펙티브 소프트웨어 아키텍처』는 단순히 좋은 구조를 설계하는 법을 알려주는 책이 아니었어요.


‘어떻게 하면 변화를 견딜 수 있는 시스템을 만들 수 있을지’, ‘어떻게 하면 기술과 조직 사이를 잇는 다리를 놓을지’ 함께 고민하게 만드는 책입니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
플랫폼 엔지니어링 - 개발과 운영을 아우르는 플랫폼 관리의 핵심 원칙
카미유 푸르니에.이언 놀런드 지음, 류광 외 옮김 / 한빛미디어 / 2025년 3월
평점 :
장바구니담기


"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."



1. 어떤 동기로 이 책을 선택했는가?

개발 인프라에 대해 깊게 파는 내용이라 생각했습니다. 예를 들어, 배포 시스템, 클라우드 인프라, 공통 라이브러리, CI/CD 파이프라인, 서버 환경 셋업, 개발 환경 구성 등이라 생각하였죠. 때문에 이 책을 통해 깊게 지식을 익힐 수 있겠다고 생각했습니다.


하지만 이 책은 사실 그런 개념이나 사용 기술들을 알려주는 내용이 아니었어요. '플랫폼'이 단순 인프라와 어떤 차이가 있고, 어떤 배경에서 탄생했으며, 어떤 전략으로 접근해야하는지를 다루었습니다.


오히려 생각지 못한 즐거운 발견이었어요. 아직 실무적으로도 접할 수 없던 분야이기에 이번 기회로 정확히 이해하고 싶었습니다.



2. 이 책은 어떤 내용을 담고 있는가?


이 책은 ‘플랫폼’이라는 개념을 단순한 기술적 인프라가 아닌, 제품 철학과 조직 전략의 관점에서 해석합니다. 플랫폼 팀은 단순한 기술 지원팀이 아니라, 내부 개발자들이 효율적으로 제품을 만들 수 있도록 돕는 프로덕트 팀이어야 한다는 점을 반복해서 강조해요.



또한 플랫폼은 단지 기술 구성요소가 아니라, 명확한 고객(내부 개발자)이 존재하는 하나의 제품이며, 이 제품을 관리하고 발전시켜야 할 전략이 필요하다는 사실을 깨닫게 되었어요.



책은 다음과 같은 구조로 이야기를 풀어나갑니다.



- 플랫폼 팀이 실제로 어떤 문제를 해결해야 하며, 무엇을 하지 않아야 하는지 구체적으로 알려줍니다.

- 플랫폼 팀의 역할, 책임, 범위에 대해 명확히 선을 그으며, 제품처럼 사용자 중심으로 운영되어야 함을 강조합니다.

- 온콜 관행, SLO/SLA 관리, 내부 고객 팀과의 관계 등 운영의 영역까지 포함해서 플랫폼 팀이 가져야 할 사고방식을 제시합니다.

- 플랫폼이 실패하는 여러 이유를 설명하며, 왜 사일로화되기 쉬운지, 그리고 ‘잘 만든 플랫폼’이 조직 전체에 어떤 영향을 미치는지를 다양한 관점에서 다룹니다.


유독 흥미롭게 다가온 점은, 애플리케이션 팀과 플랫폼 팀의 차이에 대한 설명이었어요. 저 또한 플랫폼보다는 애플리케이션 팀의 사람이라는 점에서 더더욱 플랫폼 영역을 이해하고 배경을 쌓아야한다는 생각이 들었어요.


3. 좋았던 점


1) 플랫폼을 ‘제품’으로 바라보는 관점


이 책은 플랫폼은 철저히 고객 중심으로 설계되고, 진화해야 한다고 말합니다. 그들의 고객은 내부 개발자란 점도 흥미로웠어요. 개발자 경험(DX)이나 사용자 여정(User Journey)도 철저히 고려되어야 했습니다. 그 과정에서 “이건 우리가 만든 거니까 써야 해”라는 식의 접근은 실패로 이어진다는 점도 실감 있게 설명됩니다.


2) 조직 내 관계에 대한 내용


플랫폼 팀은 독립된 기능을 수행하는 팀이 아니라, 애플리케이션 팀과 지속적으로 신뢰를 구축해야 합니다. “우리는 당신들이 더 나은 코드를 쓰고 더 빠르게 배포할 수 있도록 돕는 팀입니다”라는 정체성을 조직 전체에 어떻게 퍼뜨릴 수 있는지에 대한 고민이 아주 구체적으로 담겨 있어요.


3) 실패하는 플랫폼의 공통 패턴


많은 조직이 ‘표준화’라는 명분으로 플랫폼 팀을 만들지만, 실제론 내부 고객을 무시한 채 팀의 욕심만 반영된 경우가 많아요. 책에서는 그런 상황에서 어떻게 플랫폼이 외면받는지, 실제 예시 없이도 독자가 상상할 수 있을 정도로 잘 풀어냅니다.


4) 운영 관점


단지 플랫폼을 만드는 것뿐 아니라, 운영까지도 플랫폼 팀의 중요한 역할이라고 말합니다. 예를 들어, 온콜 체계나, SLO, 장애 대응, 실패 복구 등의 책임도 플랫폼 팀의 일부여야 하며, 이를 통해 전체 시스템의 안정성과 신뢰도를 유지할 수 있다고 말합니다.


4. 아쉬웠던 점


1) 플랫폼 경험이 없는 독자에게는 어려운 내용


이 책은 실제로 플랫폼 팀에 속해 있거나, 조직 내에서 플랫폼을 기획하고 있는 사람에게는 정말 유용한 가이드입니다. 하지만 저처럼 플랫폼이라는 개념을 막 접한 입장에서는 많은 부분이 뜬구름 잡는 얘기로 느껴졌어요. 아직은 공감보다는 관찰에 가까운 독서가 되었어요.



2) 부족한 실사례 혹은 케이스 스터디


이 책이 전하는 메시지는 굉장히 탄탄하고 설득력 있어요. 하지만 구체적인 기업 사례나, 실무적인 경험이 좀 더 들어 있었다면 훨씬 생생했을 거라 생각해요. 현재 상태로는 ‘원칙 중심’의 글이기 때문에, 실무 적용을 고민하는 독자에게는 약간 아쉽게 느껴질 수 있어요.


3) 번역의 아쉬움


몇몇 용어들은 번역이 다소 어색했어요. 예를 들어 ‘거짓양성(오탐)’, ‘거짓음성(미탐)’ 같은 표현은 배경이 없는 독자로서는 이해가 어려운 표현이었습니다. 



마치며


『플랫폼 엔지니어링』은 단순히 기술적인 지식을 쌓는 책이 아니었어요. 플랫폼 팀이라는 존재가 왜 중요한지, 그리고 어떻게 잘 기능할 수 있는지를 집요하게 파고들었어요. 플랫폼이 단순히 인프라 구축 선에서 끝나는 것이 아니라 어떤 전략으로 어떻게 구성되어야 하는지를 알려주었어요.


플랫폼에 대한 배경지식이 없는 저에게 어려운 책이었지만, 언젠가 제가 플랫폼을 현업에서 마주하고 깊이 알아야할 때, 이 책은 분명 아주 단단한 길잡이가 되어줄 거라 생각합니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
GPT API를 활용한 인공지능 앱 개발 - 오픈AI o1, 랭체인, 라마인덱스로 만드는 AI 프로그램, 2판 O'reilly 오라일리 (한빛미디어)
올리비에 케일린 외 지음, 이일섭 외 옮김 / 한빛미디어 / 2024년 12월
평점 :
장바구니담기



"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."


리뷰어는 파이썬 지식이 거의 없는 프론트엔드 개발자입니다.



이 책을 선택한 이유


최근 프로젝트에서 TTS를 활용한 챗봇을 만들 뻔한 경험이 있어요. 당시 OpenAI API를 활용할 가능성이 언급되었지만, 결국 프로젝트는 무산되었죠. 하지만 그때부터 AI와 GPT API에 대한 호기심이 생겼고, 기회가 된다면 더 깊이 알아보고 싶다는 생각이 들었어요.


개발자로서 ChatGPT는 이미 필수적인 도구가 되었고, 저는 그 내부 원리가 어떻게 작동하는지 궁금했어요. 단순히 이론적인 지식만 습득하는 것이 아니라, 실제로 GPT API를 활용하여 인공지능 애플리케이션을 개발하는 과정을 경험해보고 싶었어요. 그리고 이 책의 제목이 그런 저의 기대를 정확히 반영하고 있었기에, 주저 없이 선택했어요.




목차


책의 목차는 다음과 같습니다.


1. GPT와 대규모 언어 모델(LLM)의 개념 이해

2. OpenAI API의 기본 사용법

3. GPT API를 활용한 다양한 프로젝트(뉴스 생성, 챗봇, 텍스트 요약 등)

4. 프롬프트 엔지니어링과 최적화 기법

5. 고급 활용: 파인 튜닝과 RAG(검색 기반 생성 모델)

6. 실전 프로젝트 개발 및 배포



사전 지식이 필요한 책


`파이썬`에 대한 기초 지식이 필요했어요. 사실 저도 충분히 알지는 못했기 때문에, 책을 읽으면서 ChatGPT에게 질문하며 예제를 해석했어요. 어떻게 보면 겸사겸사 파이썬 공부도 할 수 있어서 좋았어요! 그리고 이 책은 전체 예제를 깃허브 리포지토리로 제공했기 때문에 실습하는 데 도움이 많이 되었어요.



✅ 좋았던 점


1. GPT, LLM, OpenAI에 대한 기초 지식 이해



솔직히 그동안 ChatGPT를 매일 같이 사용하면서도, 각 모델이 어떤 변천사를 거쳐왔는지, 이 LLM에 대해 깊이 이해하지 못하고 있었어요. 그냥 "GPT-4가 더 강력하다더라" 정도로만 알고 있었지, 왜 강력한지, 어떤 구조적 차이가 있는지, 어떤 한계를 가지고 있는지는 제대로 몰랐죠.


이 책은 첫 장부터 **GPT-1부터 최신 GPT-4o까지의 발전 과정**을 상세하게 다룹니다.


특히 다음과 같은 개념을 명확하게 설명해 주었어요.


- GPT 모델의 구조와 학습 방식

    - GPT 모델이 트랜스포머(Transformer) 아키텍처를 기반으로 한다는 점

    - 모델이 수많은 데이터를 기반으로 사전 학습을 거치고, 이후에는 특정 도메인에 맞춰 미세 조정(Fine-Tuning)될 수 있다는 점

- 토큰(Token) 개념

    - 우리가 GPT 모델에 입력하는 텍스트가 그대로 처리되는 것이 아니라, 내부적으로 **토큰 단위**로 변환되어 모델이 이해할 수 있는 형태로 전환된다는 점

    - API를 사용할 때 토큰 수가 곧 비용과 직결되기 때문에, 토큰 최적화를 고려해야 한다는 점


그리고 무엇보다도 프롬프트 인젝션(Prompt Injection)이라는 개념을 처음 접하게 되었다는 것도 매우 인상적이었어요.


기본적으로 LLM은 사용자의 입력을 기반으로 답변을 생성하는데, 특정한 방식으로 입력을 설계하면 의도하지 않은 방식으로 모델이 동작할 수도 있다는 거죠. 보안적인 측면에서도 이러한 위협을 어떻게 방어할 수 있을지 고민해 볼 필요성을 느꼈습니다.



2. 실습 중심의 구성

이 책의 장점은 이론 중심이 아니라 실습 중심으로 구성되어 있다는 점이라 생각합니다.덕분에 단순히 "이렇게 하면 된다"가 아니라, 직접 해보면서 배우는 경험을 할 수 있었습니다.


책에서 다루는 5가지 프로젝트


1. 뉴스 생성 솔루션

    - GPT API를 활용하여 특정 주제의 뉴스 기사를 자동 생성하는 프로젝트

    - 프롬프트 엔지니어링을 활용해 원하는 형식으로 뉴스 기사를 구성하도록 설정

    - 사용자 입력(예: "오늘의 경제 뉴스")에 따라 GPT가 관련 뉴스를 자동으로 생성

    - 이를 웹 서비스로 배포하는 과정도 포함됨

2. 유튜브 동영상 요약

    - 유튜브 자막 데이터를 분석하여 핵심 내용을 요약하는 프로젝트

    - OpenAI의 Whisper API(음성 인식)를 활용하여 음성을 텍스트로 변환

    - GPT API를 활용하여 주요 내용을 정리하고, 원하는 길이로 요약하는 기능 구현

3. 챗봇 개발

    - 단순한 질문응답이 아니라 사용자의 문맥을 기억하고 대화 흐름을 유지하는 챗봇 구현

    - 단순 API 호출이 아니라, 메모리 기능을 추가하여 보다 자연스러운 대화 흐름을 만드는 방법을 설명

4. 개인 어시스턴트 개발

    - 일정 관리, 할 일(To-do) 목록, 이메일 초안 작성 등의 기능이 포함된 AI 비서 구현

    - GPT API를 활용하여 다양한 입력을 처리하고, 사용자 맞춤형 답변을 생성하는 방식

5. 문서 정리 도구

    - PDF 및 문서를 분석하고 요약하는 기능을 구현

    - GPT API를 이용해 문서의 핵심 내용을 추출하고, 이를 정리하여 제공하는 방식

6. 감정 분석

    - 자연어 처리 중 감정 분석은 대표 분야

    - 텍스트가 긍정적인지, 부정적인지 파악하는 것

    - GPT API를 이용하여 분류별 모델 평가를 통해 감정별 확률 확인


이 프로젝트들은 단순한 코드 예제가 아니라, 각각의 기능이 실전에서 어떻게 활용될 수 있는지 직접 체험할 수 있도록 구성되어 있어요.


덕분에 단순히 코드를 읽는 것이 아니라, 직접 실행하고, 수정하고, 실험하면서 GPT API의 활용법을 자연스럽게 익힐 수 있었습니다.




 3. 프롬프트 엔지니어링, 파인 튜닝, RAG 학습

GPT API를 단순히 호출하는 것만으로 끝나는 것이 아니라, 어떻게 하면 더 나은 응답을 얻을 수 있는지에 대한 최적화 방법도 배울 수 있었습니다.


- 프롬프트 엔지니어링

    - "간결하게 작성할수록 더 좋은 응답을 얻는다" 같은 기본 개념부터

    - "역할(Role-based Prompting)" 기법을 활용해 특정한 스타일로 답변을 유도하는 방법

    - 프롬프트 최적화에 따른 응답 차이를 실험할 수 있도록 구성

- 파인 튜닝(Fine-Tuning)

    - 기본적으로 GPT API는 사전 학습된 모델을 그대로 사용하지만, 특정 도메인(예: 법률, 의료, 금융)에 맞게 모델을 최적화하는 방법도 다룹니다.

    - 학습 데이터를 제공하여 모델이 특정한 스타일이나 도메인에 맞게 응답하도록 조정하는 방법을 실습할 수 있었어요.

- RAG(Retrieval-Augmented Generation)

    - 기본적인 LLM은 훈련 데이터 내에서만 정보를 제공하기 때문에, 최신 정보가 반영되지 않는 한계가 있음

    - 이를 해결하기 위해, 외부 데이터베이스나 검색 시스템과 연동하는 기법을 설명

    - GPT 모델이 문서를 검색하고, 검색된 내용을 기반으로 답변을 생성하는 방식

    

4. 오픈AI 모델을 개선하는 다양한 전략과 최적화 작업의 흐름 제공

이 책에서는 오픈AI 모델을 개선하는 다양한 기법을 비교하는 내용을 체계적으로 정리해 주었어요.


비용과 성능을 고려할 때 처음부터 비싼 방법을 사용할 필요가 없다는 점도 배울 수 있었습니다.


실제로 모델을 개선하는 방법은 여러 가지가 있는데, 단순한 프롬프트 최적화부터 파인 튜닝, RAG까지 점진적으로 적용할 수 있는 전략이 있습니다.


책에서는 단순히 기법을 소개하는 것뿐만 아니라, 최적화가 이루어지는 전체 흐름을 시각적으로 정리한 자료도 제공했어요.


이 흐름을 보면서, 처음부터 비용이 많이 드는 방법을 선택할 필요 없이, 단계적으로 최적화하는 것이 중요하다는 점을 확실히 배울 수 있었어요.


5. AI 프레임워크 사용법(랭체인, 라마인덱스)


이 책에서는 GPT API를 활용할 때 유용한 AI 프레임워크들도 다루었어요.


- 랭체인 (LangChain)

    - LLM을 보다 쉽게 활용할 수 있도록 도와주는 프레임워크

    - 프롬프트 체이닝, 메모리 관리, API 호출을 간편하게 처리할 수 있도록 함

    - 챗봇, 문서 요약, Q&A 시스템 등에 필수적인 기능들을 쉽게 구현할 수 있음

- 라마인덱스 (LlamaIndex, 구 GPT Index)

    - 대용량 문서를 효과적으로 처리하고, 검색 기반 생성(RAG) 기능을 구현하는 데 활용

    - GPT 모델이 문서를 효과적으로 검색하고, 중요한 정보를 추출하는 기능을 강화


이 프레임워크들을 활용하면 단순히 GPT API를 호출하는 것이 아니라, 더 강력하고 효율적인 AI 애플리케이션을 개발할 수 있다는 것을 알게되었습니다!


🤔 아쉬웠던 점


1. LLM 비즈니스 활용 사례가 다소 아쉬웠습니다.


LLM이 실제 서비스들에서 어떻게 사용되는지가 궁금했어요. 목차에 'LLM 비즈니스 활용 사례' 제목이 있는 것을 보고 혹한 이유도 있었죠! 목차에는 아래 기업들이 나열되어 있었어요.




- 비 마이 아이즈

- 모건 스탠리

- 칸 아카데미

- 듀오링고

- 야블

- 웨이마크

- 인월드 AI


제가 아는 기업은 '모건 스탠리', '칸 아카데미', '듀오링고'가 있었습니다. 어떤 서비스인지 알아야 어떻게 적용했다는 것인지 이해할 수 있을 거라 생각했어요.


- 모건 스탠리

    - GPT-4를 사용하여 `챗봇` 구축 : 내부 금융 관련 콘텐츠에 관한 포괄적인 검색을 수행하고, 자사에 축적된 지식을 효율적으로 활용

- 칸 아카데미

    - GPT-4를 사용하여 `칸미고` 개발: 학생들에게 수업하고 질문하며, 시험 문제 제작, 수업 계획, 학생 관리, 교재 제작 등을 수행하는 친근한 형태의 `AI 어시스턴스`

- 듀오링고:

    - GPT-4를 사용하여 `역할극`(Roleplay)과 `내 답변 설명`(Explain My Answer) 기능 추가


하지만 막상 책장을 펼쳐보니 사례는 굉장히 단출하게만 소개되어 있었어요...! 모델을 사용하여 어떤 기능을 만들었다 정도였습니다. 상세하게는 아니더라도 어떤 필요성이 있었고, 어떤 기법을 이용하여 어떻게 구축이 되었고, 어떤 효과를 보았는지가 궁금했었죠. 이 궁금증은 해소하지 못하여 다소 아쉬웠습니다.


다만 오픈AI 웹사이트에서 기업들의 사례가 많다는 것은 알 수 있었어요.


2. LLM 애플리케이션의 개발 및 배포 과정 설명 부족

책의 "6.2 LLM 기반 애플리케이션 개발 과정" 챕터가 있긴 하지만, 실제로 LLM 애플리케이션을 처음부터 배포까지 구축하는 과정을 체계적으로 따라가기엔 부족한 점이 있었습니다.


1. LLM 애플리케이션 프로젝트 구조 가이드 부족

    - LangChain, LlamaIndex 같은 프레임워크를 사용할 때 폴더 구조를 어떻게 설계하는지 설명 부족

2. 실제 서비스 개발 흐름 설명 부족

    - LLM 애플리케이션의 주요 컴포넌트(예: 프롬프트 처리, 메모리 관리, 벡터DB 연동 등)를 어떻게 설계해야 하는지 설명이 부족

    - 단순 API 호출 예제는 있지만, 대화 히스토리를 관리하거나, RAG를 적용하는 등의 실제 서비스 설계 과정이 빠져 있음

3. 배포 및 운영 전략 설명 부족

    - 서버리스 환경(AWS Lambda, Cloudflare Workers 등)에서 GPT API를 어떻게 최적화해서 배포하는지 설명 없음

    - Hugging Face Spaces, Vercel, FastAPI, Flask 등 어떤 배포 옵션이 적절한지 비교하는 내용이 부족

    - LLM 모델을 사용할 때 API Rate Limit을 어떻게 관리하는지, 캐싱 전략, 비용 최적화 방법에 대한 설명 부족

4. 테스트 및 모니터링 관련 내용 부족

    - API 호출 시 실제 서비스에서는 LLM 응답의 일관성을 테스트하는 방법이 중요할 것 같은데, 이에 대한 가이드가 없음

    - LangSmith, Weights & Biases 같은 LLM 애플리케이션 모니터링 도구 활용법이 포함되지 않음


단순한 API 호출을 넘어서 실제 운영 가능한 형태로 애플리케이션을 만들려면 프로젝트 구조, 배포,테스트, 모니터링까지 고려해야 한다고 생각했어요. 또한, GPT API를 실무에서 어떻게 활용하는지 제대로 배우려면, 단순한 코드 조각이 아니라 하나의 완성된 서비스 구축 과정을 보여줄 필요가 있다고 생각했어요.



누가 읽으면 좋을까요?


이 책은 다음과 같은 분들에게 특히 추천해 드려요:


1. AI와 GPT API에 관심이 있는 개발자

2. 파이썬 기초 지식을 가진 프론트엔드 개발자

3. AI 서비스나 챗봇 개발을 시작하려는 분들

4. AI 관련 비즈니스 아이디어를 구상 중인 분들

5. 프롬프트 엔지니어링에 관심 있는 분들


파이썬 지식이 전혀 없는 분들은 기본적인 파이썬 문법을 먼저 학습한 후에 이 책을 접하시는 것이 좋을 것 같아요. 그래도 예제 코드가 비교적 간단하게 구성되어 있어서, 기초적인 프로그래밍 지식만 있다면 충분히 따라갈 수 있어요.




마치며


이 책을 읽으면서 GPT API에 대한 기본적인 이해를 높일 수 있었고, 실전 프로젝트를 따라 하면서 실제 개발에 적용할 수 있는 감각을 익힐 수 있었어요. 단순한 개념 학습을 넘어 직접 만들어보고 실행해보면서 AI 기술을 실무에 어떻게 적용할 수 있을지 고민할 기회가 되었어요.


앞으로는 책에서 다룬 내용을 바탕으로 간단한 챗봇이나 AI 기반 기능을 직접 만들어보려고 해요. 특히 프롬프트 엔지니어링과 API 최적화 기법을 실제로 실험해보고 싶습니다!


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo