|
'예스24 리뷰어클럽 서평단 자격으로 도서를 제공받고 작성한 솔직한 리뷰입니다'
이것이 Spring AI다(개정판)는 생성형 AI를 단순히 사용하는 수준을 넘어, 실제 서비스로 구현하는 방법을 다룬 실전형 책이다. 이 책의 핵심은 AI를 하나의 기능으로 보는 것이 아니라, 시스템 안에 어떻게 구조적으로 통합할 것인가에 있다. LLM을 연결하고, 응답을 구조화하며, 이를 서비스 형태로 설계하는 과정까지 단계적으로 설명한다는 점에서 기존의 개념 중심 AI 서적과 결이 다르다. “AI를 어떻게 써야 하는가”가 아니라 “AI를 어떻게 쓸 수 있게 만들 것인가”에 대한 관점으로 이어진다. 이 부분은 실무에서 AI를 도입해야 하는 기획자나 개발자 모두에게 중요한 시사점을 준다. 또 다른 차별점은 Spring 기반이라는 점이다. 대부분의 AI 개발이 Python 중심으로 이루어지는 상황에서, 이 책은 기존 Java/Spring 환경을 유지하면서 AI를 적용할 수 있는 방법을 제시한다. 따라서 기업 환경에서의 실제 적용 가능성이 높고, 새로운 기술을 도입할 때의 진입 장벽을 낮춰준다. 다만, 완전한 입문서라고 보기는 어렵다. 기본적인 개발 이해가 없다면 따라가기 쉽지 않고, 빠르게 읽고 끝내는 책이라기보다 직접 구현하면서 참고해야 하는 성격이 강하다. 그만큼 이론서라기보다는 실습 중심의 가이드북에 가깝다. 결국 이 책은 AI를 배우기 위한 책이 아니라, AI를 실제로 만들어내기 위한 책이다. 생성형 AI 시대에서 경쟁력은 모델 자체가 아니라, 그것을 어떻게 구조화하고 서비스로 연결하느냐에 달려 있다. 그런 의미에서 이 책은 AI 시대의 개발 방향을 명확하게 보여주는 실용적인 지침서라고 볼 수 있다. #리뷰어클럽서평단 |
|
생성형 AI 파이썬 개발용 프레임 워크중 유명한것이 Lanchain 이다 Spring AI 는 자바 AI 애플리케이션 개발용 프레임 워크이다OpenAI, Hugging Face등 다양한 LLM을 자동으로 구성하고 여러 백터 저장소 연동도 지원한다 대화기억방식, RAG, 도구호출, MCP서버 개발 등 지원한다 Spring Boot 개발자가 생성형 AI를 활용한 프로그램 개발을 쉽게 할수 있도록 도와주는것이다. 1장에서는 Spring AI 개발환경 구축을 먼저 해본다
등을 차례대로 설치한후 2장이후 프로젝트들에서 사용하게되는 공통 부분 코드와 UI 구성을 설명한다 특히 의존성에 추가하는것중 OpenAI 스타터를 추가하여 OpenAI 가 제공하는 각종 AI 모델들을 사용할수 있게한다. 특히 예제코드 사용시 application.properties 에서는 OpenAPI key를 입력해줘야 된다. 2장에서는 특히, LLM을 이용하기 위한 ChatClient나 SystemMessage나 UserMessage등을 설명한다 부록에서는 이에 필요한 OpenAI API 키 생성과 외부서버를 실행해보기 위해서 Docker Container를 활용하기 위해 Docker Desktop을 설치를 해본다 아울러 Local LLM을 사용해보기 위해 Ollama를 설치한후 2G 용량의 llama3.2 2.3b 모델을 다운로드 받아 로컬에서 실행해본다 9장 대화 기억 편에서는 기억저장소로 오픈소스 NoSQL 분산 데이타베이스인 Apache Cassandra 를 사용하기위해 Docker Container를 사용한다 VSCode에서는 Cassandra Extension Studio 확장을 설치한다 11장 도구호출에서는 LLM이 외부의 API와 상호작용할수 있게해주는 방법을 배운다 @Tool 어노테이션을 활용하여 정의한다 LLM 이 도구호출 요청할때 전달하는 매개값과 별도로 애플리케이션이 직접관리하는 정보를 도구에 전달하는 ToolContext도 소개한다 아울러, 파일관리 도구 , 인터넷검색도구 결합하는 방법도 소개한다 이책에서 특히 요즘 핫한 12장, MCP 내용을 보면 MCP는 요즘 생성형 AI 계의 화제의 키워드 이다 이 책의 마지막 장인 12장에서 유형별로 설명을 한다 MCP 클라이언트와 서버 사이에서의 통신방식을 먼저 설명하고 그 통신 방식별 조합으로 해당 코드들을 설명하고 있다. 여기서 사용하는 MCP 기능들은 앞장인 11장에서 만들어본 기능을 활용하는것이다. 서버와 클라이언트 간은 JSON-RPC 메세지로 주고 받고 MCP CLient를 이용하는 애플리케이션과 같은 PC 에 MCP Server를 구동할때는 STDIO 통신방식으로 다른 PC에서 MCP 서버가 구동될때는 SSE 방식으로 통신을 한다 서버가 클라이언트에게 연결을 한번 구성한후 지속적으로 데이터를 보낼때 사용하는 방식이다
STD 통신 방식 MCP Server 서버의 build.gradle에서 의존성 설정과, application.properties 에서 서버의 구성을 설정한다. 아울러 java 파일에서 클라이언트에 제공할 도구들을 정의하며, MCP Client에 제공해야될 도구에 관한 정보를 설정한다. 애플리케이션의 최종 산물인 jar를 만들어본다. 이 jar 파일을 애플리케이션이 MCP Server를 실행할때 사용한다. 도구들은 기능별로 분리하여 별도의 MCP Server로 개발해야 사용하기 편하다 한다 위 와 같이 MCP Server를 구성한후 위 MCP Server 를 사용할 애플리케이션 을 만들어 본다 애플리케애션 설정 STDIO 통신 방식에선 애플리케이션 구동시 서버도 함께 구동시켜야 되므로 애플리케이션 구성파일에 MCP Server를 등록시켜준다. 애플리케이션은 LLM으로부터 도구 호출 요청을 받으면 해당 MCP Server에 도구실행을 지시하고 결과를 LLM에게 전송한다 build.gradle 파일에 MCP Client 관련 의존성을 추가하고 application. properties에 로깅과 STDIO MCP Server 실행을 하는 파일을 지정한다 위에서 STDIO MCP Server 관련 설정을 지정한 json 파일에서 서버이름과 실행 파일경로를 json 형식으로 적어준다. 서버 개수만큼의 서버를 표기한다 이때, 필요한 API KEY와 ACCESS TOKEN등을 지정한다 특히 MCP Server는 java 이외에도 다양한 언어로 개발가능하므로 다양하게 작성될수 있다 LLM과 대화하는 메소드, 텍스트와 이미지 처리하는 메소드 등 LLM 이 필요시 필요한 도구들을 호출할수 있는 도추 호출 정보를 프람프트에 함께 포함 시키는 작업을 한다. 이러한 내용들은 프롬프트 메세지중 시스템 텍스트에 포함시켜야 되고 않하면 LLM 할루시네이션이 발생한다고 한다 특정기능 요청 매핑 매소드를 선언한다 위에서 만든 서버와 애플리케이션 모두를 실행해서 제대로 동작하는지를 서버별로 확인하며 이때 터미널 콘솔을통해 확인을 해본다 11장에서 만든 datetime, Filesystem, internetSearch, BoomBarrier 서버가 제대로 동작하는지를 웹에 접속해서 질문을 하여 답변하는것을 확인함으로써 동작을 확인한다 이후 WebMVC 기반 SSE 통신방식, WebFlux 기반 SSE 통신방식, 2가지를 각각 서버와 애플리케이션 설정을 하여 확인해본다 이로써 Spring AI를 다양하게 다루어본다 특히 10에서는 RAG를 활용하는 방법도 다루었다 전반적으로 9장까지는 생성형 AI를 활용함에 기본적인 내용이고 10장 RAG, 11장 도구호출, 12장 MCP 는 생성형 AI 중고급에 해당하는 요즘 가장 핫한 주제들을 다루었다 기본적인 주제들부터 최근 핫이슈까지 두루 다루어 흥미롭게 볼수 있는책이다 |
|
'예스24 리뷰어클럽 서평단 자격으로 도서를 제공받고 작성한 리뷰입니다.' #리뷰어클럽리뷰 전공 시절부터 많이 도움받았던 한빛 미디어. 역시 설명이 친절하고 편집이 깔끔해서 따라하기가 좋다. 일단 프로그램부터 설치하기. java를 공부했던 기억을 더듬어서 차근 차근 따라하다 보니 해볼만 한것 같다. 개인적으로 가장 활용해 보고 싶던 Chat Model API 부터 프롬프트 엔지니어링까지. 학원에서 배우려고 했으나 거리, 시간의 문제로 배우지 못하던 부분을 친절한 책으로 따라하다 보니 생각보다 해볼만 했다. 아직까지 오프라인에서 ai 활용해서 가르쳐 주는 곳이 활성화 되어 있지 않은데 이런책이 빨리 나와주니 궁금하던 차에 많은 도움이 되었다. JAVA를 아예 다룬적이 없으면 조금 어려울것 같으니 JAVA 기초책과 병행하면서 활용해도 좋을듯. |
|
- 예스24 리뷰어클럽 서평단 자격으로 도서를 제공받고 작성한 리뷰입니다 ‘이것이 Spring AI다’는 제목 그대로, Spring 환경에서 AI를 개발하는 것을 알려주고 있습니다. 자바와 Spring에 익숙한 개발자 입장에서는 정말 반가운 책입니다. 파이썬 중심의 AI 개발 흐름 속에서, 기존에 쓰던 프레임워크 안에서 익숙한 방식으로 AI 기능을 개발할 수 있다는 점이 매우 마음에 듭니다. 프롬프트 엔지니어링 부분은 다양한 프롬프트의 종류와 특징에 대해 설명하고 있습니다. 복잡한 개념 설명보다 예제를 통해 ‘이런 식으로 말을 건네면 모델이 더 잘 이해한다’라고 알려주어 쉽게 이해할 수 있습니다. 이 책은 AI 개발범위를 텍스트 대화에 국한하지 않습니다. 음성, 이미지, 멀티모달 같은 기능까지 함께 다루고 있습니다. 예를 들어 사용자가 음성으로 질문을 던지고, 그에 대한 답을 화면과 음성으로 동시에 제공하는 흐름을 보면서, 지금 운영 중인 서비스에 붙여 보면 좋겠다는 생각을 하고 있습니다. 마지막에 나오는 에이전트와 멀티 에이전트 파트는 요즘 AI 개발 트렌드를 꽤 빠르게 반영하고 있습니다. 개념만 소개하고 넘어가는 수준이 아니라, 실제로 역할이 다른 여러 에이전트가 협업하는 구조를 코드로 구현하고 있습니다. 각 에이전트의 책임을 어떻게 나누고, Spring에서 그 흐름을 어떻게 관리할지, 메시지를 어떤 식으로 주고받게 설계해야 하는지에 대해 많이 배울 수 있었습니다. ‘Spring으로 AI 서비스를 만들어 보고 싶다’라는 개발자 분들에게는 좋은 가이드입니다. Spring과 AI를 함께 배우고 싶은 분들에게는 최고의 교과서가 아닐까 생각합니다. #리뷰어클럽리뷰 #한빛미디어 #이것이SpringAI다 #신용권 #SpringAI |
|
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다." 스프링은 문제 없이 AI를 잘 지원한다!! 2022년 11월 OpenAI가 ChatGPT를 발표한 후, 생성형 AI는 LLM, GPTs, RAG, AI 에이전트, MCP, 바이브코딩까지 개발의 패러다임을 송두리째 바꿔놓았다. 언어 중에서는 파이썬이 가장 인기 있는 언어였다. 파이썬 중심의 AI 툴킷(LangChain, LlamaIndex)이 인기를 끌고, Node.js 기반의 React가 프론트엔드를 이끌었다. 자바 진영에서는 2023년 프로젝트를 발족하였고, 2024년 기능 확장과 생태계 정비가 이루어졌다. 그리고 2025년 5월 1.0.0 버전이 정식으로 릴리스되었고, 2025년 9월 1.0.2 안정성 패치까지 이루어졌다. 🧩 선수 지식
👥 추천 독자
🏷️ 키워드 #SpringAI #스프링 #Spring #Java #ChatModel #ChatClient #프롬프트엔지니어링 #제로샷프롬프트 #퓨샷프롬프트 #자기일관성 #구조화된출력 #텍스트대화 #음성대화 #이미지생성 #이미지편집 #객체탐지 #비디오프레임분석 #어드바이저 #임베딩 #벡터자장소 #대화기억 #RAG #생성형AI #도구호출 #OpenAI #Docker #VertexAI #Gemini #Ollama 📝 특징
📚 책의 구성 이 책은 전체 12개 장과 부록으로 구성되어 있다. Chapter 02 "텍스트 대화"에서는 AI 애플리케이션의 대표격인 대화형 챗봇 예제를 실습한다. <Chapter 02 텍스트 대화 - 2.1 Chat Model API, p046~p047> Chapter 03 "프롬프트 엔지니어링"에서는 프롬프트 템플릿을 사용하여 제로샷, 퓨샷, 역할 부여, 스텝백, 생각의 사슬, 자기 일관성 등 다양한 프롬프트 엔지니어링 기법을 예제로 설명한다. <Chapter 03 프롬프트 엔지니어링 - 3.10 자기 일관성, p092~p093> Chapter 04 "구조화된 출력"에서는 LLM의 출력 결과를 List<String>, 객체, List<T>, Map 등으로 변환하는 예제를 실습한다. Chapter 05 "음성 대화"에서는 음성 모델을 활용하여 STT(음성을 텍스트로 변환), TTS(텍스트를 음성으로 변환) 기술을 실습한다. Chapter 06 "비전 및 이미지 생성"에서는 멀티모달 LLM을 활용하여 객체 탐지, 이미지 분석, 이미지 생성, 이미지 편집 등의 예제를 실습한다. Chapter 07 "모델 전·후처리 어드바이저"에서는 모델 전처리, 후처리를 효과적으로 지원하는 어드바이저의 개념을 소개한 후, 내장 어드바이저를 사용하는 방법을 설명한다. <Chapter 07 모델 전·후처리 어드바이저 - 7.6 내장 Advisor, p210~p211> Chapter 08 "임베딩과 벡터 저장소"에서는 생성형 AI의 핵심 개념인 임베딩에 관해 설명하고, 벡터 저장소(PGVector)를 도커로 설치한 후 OpenAI의 임베딩 모델로 텍스트와 이미지를 임베딩하여 벡터 저장소에 저장한 후 조회하는 예제를 실습한다. Chapter 09 "대화 기억"에서는 멀티턴을 지원하기 위한 기술을 설명한 후, 메모리, 벡터 저장소, RDBMS, 카산드라를 활용하여 대화 기억을 저장하는 실습을 진행한다. Chapter 10 "문서 검색 기반 답변, RAG"에서는 RAG 개념과 함께 데이터(텍스트, PDF, Word)에서 텍스트를 추출한 후 어드바이저를 사용하여 검색어 확장 및 재작성, 번역, 다중 쿼리를 적용하는 예제를 실습한다. <Chapter 10 문서 검색 기반 답변, RAG - 10.2 지식 기반 저장소와 ETL, p294~p295> Chapter 11 "도구 호출"에서는 LLM이 사용자 도구를 호출하는 과정을 설명한 후, 이미지 분석, 파일 관리, 인터넷 검색 도구를 생성하여 LLM이 호출하는 예제를 실습한다. Chapter 12 "MCP, 외부 도구"에서는 MCP의 개념을 설명한 후, STDIO, SSE 통신 방법으로 MCP Server를 생성하는 예제를 실습한다. <Chapter 12 MCP, 외부 도구 - 12.1 MCP란, p392~p393> "부록"에서는 OpenAI API key 발급과 Docker Desktop 설치 방법, 구글의 Vertex AI Gemini 모델을 사용하는 방법, 온-프레미스 LLM을 위한 Ollama 설치 방법을 캡처로 상세히 설명한다. ✨ 소감 파이썬 AI 애플리케이션을 공부한 경험으로 비추어 볼 때, Spring AI는 다른 언어보다 정식버전의 지원이 늦었지만 텍스트 대화부터 멀티모달(음성, 비전), RAG, Tool Calling, MCP까지 AI 애플리케이션을 개발할 때 필요한 필수 기능과 고급 기능까지 완벽하게 지원한다는 것을 알게 되었다. 특히 Spring AI는 기존의 Spring Data, Spring Boot와 일관성 있고 추상화된 API를 제공함으로써, 자바 개발자도 파이썬처럼 쉽게 AI 기능을 개발할 수 있을 것이다. 이렇게 제공된 추상화된 API를 사용하여 앞으로 다양한 벤더사가 지원된다면 자바의 AI 생태계도 머지않아 폭발적으로 확장될 것으로 예상된다. 필수 기능과 고급 기능의 설명은 물론, 실무적인 예제 코드로 구성된 "이것이 Spring AI다"는 많은 자바 개발자들에게 든든한 길잡이가 될 것이다. 💡 추천 대한민국의 많은 프로젝트가 Spring, Spring Boot로 개발되어 있는 것을 알고 있다. 기존 서비스에 AI 기능을 탑재하거나 백엔드로 자바를 사용하는 모든 자바 개발자에게 이 책이 좋은 출발점이 될 것이다. 이 책을 모두 읽을 즈음, 앞으로 추가되거나 개발할 AI 애플리케이션에 대한 인사이트도 함께 얻게 될 것이다. #신용권 #스프링AI #SpringAI #이것이SpringAI다 |
|
안녕하세요! 오늘은 2026년 3월의 한빛+ 나는 리뷰어다로 가져온 책 이것이 Spring AI다 개정판 도서의 후기를 들고 왔습니다 들어가기에 앞서, Spring AI가 무엇이냐ㅏㅏ 하면 자바(JAVA) 기반의 웹 프레임워크인 Spring이 한창 개발에 많이 쓰였다지요 인공지능이 발전되면서 회사는 이 Spring이라는 프레임워크에서 동작하는 AI를 새롭게 개발하게 됐고, 이 AI 통합 프레임워크가 바로 이 책에서 다룰 Spring AI입니다.
단순히 Spring AI 의 기능을 나열한 책이 아닌, Spring AI의 전체적인 흐름을 이해할 수 있도록 목차가 정렬되어 있더라구요 작년인 2025년 요 책이 나왔지만, 올 해 다시 개정판이 나온 것으로 보아 작년 초부터 핫했던 MCP, 작년 말에 세계를 강타했던 DeepSeek 의 영향이 있었을까 라는 생각도 듭니다(뇌피셜,,,)
한빛 사이트에 접속하셔서 책에서 진행하는 모든 예제의 소스코드, 자료 등을 한빛 홈페이지에서 접할 수 있구 특별하게 요 "이것이 Spring AI다 (개정판)"의 경우 "이것이 자바다" 네이버 카페에서 독자 Q&A 게시판에 질문을 남겨주시면 신용권 저자님께 질의응답도 할 수 있는 기회가 있다고 합니다 자바라는 언어가 이제 한 물 갔다는 평을 듣고 있는 요즘이지만, 기존 JAVA 기반의 개발자분들 중에서, 아직 python 기반으로 넘어오지 못한 분들이 많으신 것으로 알고 있습니다 자바를 오랫동안 사용했으나 AI 코드 툴과 접목한 프레임워크를 사용해보지 못한 분 최근에 자바 베이스의 프로그래밍을 시작하신 주니어 개발자 자바를 경험해본 적 있는 분들 중에서 최근 유행한 프롬프트 엔지니어링, RAG, MCP, 에이전트 개발에 도전해보고자 하는 분 위의 분들께 이 책을 추천드려요. Spring AI 개념은 가볍게 넘어가고, Chapter 2에서 ChatGPT API를 사용해 텍스트 대화를 진행해보신 이후에 Chapter 3의 프롬프트 엔지니어링까지 읽어보시면 생각보다 손쉽게 진도를 나갈 수 있었어요 Chapter 5는 음성 대화로 TTS, STT 모델은 이 책을 읽다가 처음 사용해봤는데 생각보다 어렵지 않았어요!!! 이후 비전 및 이미지 생성도 경험이 있으시다면 적당한 난이도일 것이고,,
모델 전 후 처리를 위한 어드바이저(API 사용)는 낯설 수 있는 내용이었습니다 여기서 Advisor란 Spring 애플리케이션과 LLM 간의 상호작용을 가로채서 LLM에게 쏘는 프롬프트를 강화하거나 LLM이 뱉어내는 응답을 변환하도록 하는 유연하고 강력한 툴이에요 이후 임베딩과 벡터 저장소의 개념을 학습해 Document의 저장, 검색, 삭제 등의 과정을 경험해보고 대화 기억과 기억 저장소의 개념을 통해 Chat으로 생성된 대화가 어디로 어떻게 가는지, 저장은 어떻게 하는지 배울 수 있었습니다
이후에는 문서 검색 기반 답변인 RAG, 도구 호출법, MCP 및 외부 도구를 자바에 결합하여 실습해볼 수 있었어요 이 과정을 충분히 숙지하셔야!! 요 "이것이 Spring AI다" 책의 꽃인 Chapter 13 에이전트 개발 단계에서 보다 손쉽게 다양한 도메인의 실습을 진행해보실 수 있으실 겁니당 여행 도메인, 관광지/맛집/숙소 추천 에이전트, 유튜브 검색 에이전트 등을 만들어보고 이후 14 챕터에서는 멀티 에이전트로 협업하는 과정까지 커버하고 있습니다 아무래도 요 책 한 권에서 OpenAI, SerpApi, Docker, Google Vertex AI Gemini, Meta Llama, DeepSeek R1 모델 등 되게 다양한 툴을 사용하고 있어서 복잡하고 번거로우실 수도 있지만 반대로 책 한 권으로 넓고 방대한 실습을 진행할 수 있고 또 따라하기 어렵지 않아서!! 부담스럽지 않은 독학을 해내실 수 있으실 겁니다 |
|
생성형 AI 애플리케이션을 만든다고 하면 대개 파이썬을 먼저 떠올리게 된다. 랭체인이나 라마인덱스처럼 검증된 툴킷이 풍부하고, 공개 자료도 많아 프로토타이핑이 빠르기 때문이다. 그러나 서비스 현장은 또 다른 언어로 움직인다. 백엔드가 JVM 계열이고 Spring Boot로 구축된 시스템이라면, “AI를 어떻게 붙일 것인가”가 곧바로 실무의 문제로 바뀐다. 파이썬 생태계에서 익숙했던 개념들을 자바와 스프링의 문법으로 다시 정렬해 주고, 그 위에 RAG와 도구 호출, 그리고 최근 가장 뜨거운 화두인 MCP까지 연결해 보여준다. Spring AI를 한 문장으로 요약하면, 자바 개발자가 생성형 AI 기능을 기존 스프링 방식으로 자연스럽게 통합할 수 있게 만드는 프레임워크라 할 만하다. OpenAI, Hugging Face 등 다양한 LLM을 자동으로 구성하고, 여러 벡터 저장소 연동도 지원한다. 대화 기억, RAG, 도구 호출 같은 핵심 기능이 단편적인 예제로 흩어져 있지 않고, 스프링 부트 개발자가 실제로 프로젝트를 만들 때 밟게 되는 순서로 정리되어 있다는 점이 이 책의 강점이다. 1장에서 개발 환경을 구축하고, 2장 이후 반복해서 사용하게 될 공통 코드와 UI 구성 요소를 먼저 설명함으로써, 중간에 길을 잃지 않도록 발판을 마련한다. 의존성에 OpenAI 스타터를 추가하여 OpenAI가 제공하는 모델을 호출하는 흐름은 “스프링스럽게” 깔끔하게 정리되어 있는데, 예제 실행을 위해 application.properties에 API 키를 입력해야 하는 기본 사항을 명확히 짚어주는 것도 실습서로서의 책임감이 느껴진다. 이어서 ChatClient, SystemMessage, UserMessage 같은 구성 요소를 설명하며, LLM을 호출하는 방식이 단순한 문자열 요청이 아니라 “대화 문맥을 설계하는 일”이라는 감각을 자연스럽게 체득하게 한다. 중반 이후부터 책은 확실히 속도를 올린다. 9장 대화 기억에서는 Apache Cassandra 같은 분산 NoSQL 데이터베이스를 기억 저장소로 활용하는 흐름을 Docker 컨테이너로 구성하고, VS Code에서 Cassandra 확장까지 설치해 확인한다. 대화 기억을 단순히 메모리로 처리하는 수준이 아니라, 저장소를 선택하고 운용하는 관점으로 확장해 주기 때문에, “챗봇 데모”를 넘어 “서비스”에 가까운 감각을 얻는다. 11장 도구 호출은 생성형 AI가 ‘말만 잘하는 모델’에서 ‘일을 처리하는 모델’로 넘어가는 관문을 다룬다. @Tool 어노테이션으로 도구를 정의하고, LLM이 전달하는 매개값 외에 애플리케이션이 직접 관리하는 정보를 ToolContext로 주입하는 방식은, 도구 호출을 단순한 함수 실행이 아니라 ‘안전한 경계 설정’으로 이해하게 만든다. 파일 관리 도구나 인터넷 검색 도구를 결합하는 예제 역시, 실제 업무에서 바로 떠올릴 법한 형태로 구성되어 있어 실습의 체감도가 높다. 그리고 이 책의 하이라이트는 12장 MCP이다. MCP는 요즘 생성형 AI 업계에서 가장 자주 언급되는 키워드 중 하나인데, 이 책은 이를 “유형별 조합”으로 정리하며 이해의 부담을 낮춘다. 클라이언트와 서버 간 통신 방식부터 짚고, JSON-RPC 메시지 기반의 주고받음을 바탕으로, 동일 PC에서 서버를 구동할 때는 STDIO 방식, 다른 PC에서 구동될 때는 SSE 방식으로 통신한다는 구분을 명확히 보여준다. 특히 SSE는 한 번 연결을 구성한 뒤 서버가 지속적으로 데이터를 밀어주는 방식이라는 설명이, 실제 운영 관점에서 왜 이런 통신이 필요한지 감을 잡게 한다. 부록의 구성 또한 실무적이다. OpenAI API 키 발급 방법을 안내하는 데서 멈추지 않고, 외부 서버 실행을 위해 Docker Desktop 설치를 진행하며, 로컬 LLM을 위한 Ollama 설치와 llama3.2 2.3b 모델 다운로드 및 실행까지 이어진다. 여기서 독자는 “클라우드 LLM만이 답이 아니다”라는 선택지를 손에 넣는다. 비용과 보안, 지연 시간 같은 현실적인 제약 속에서 로컬 실행이 왜 필요해지는지를, 도구 설치와 실행 경험을 통해 납득하게 된다. 실습 흐름도 설득력이 있다. 먼저 MCP Server를 구성하고(build.gradle 의존성, application.properties 설정, 자바 파일에서 제공 도구 정의와 도구 메타정보 설정, 최종 jar 산출), 그 다음 해당 서버를 사용하는 애플리케이션을 구성한다. STDIO 방식에서는 애플리케이션 구동 시 서버도 함께 떠야 하므로 구성 파일에 MCP Server를 등록하고, LLM으로부터 도구 호출 요청을 받으면 애플리케이션이 MCP Server에 실행을 지시한 뒤 결과를 LLM에게 전달하는 전체 경로를 따라간다. 서버 설정을 담은 JSON 파일에 서버 이름과 실행 파일 경로를 나열하고, 필요한 API KEY나 ACCESS TOKEN을 지정하는 방식은, “도구를 기능별로 분리해 여러 MCP Server로 운영하는 편이 사용하기 좋다”는 조언과 맞물려 설계 감각까지 전달한다. 또한 도구 호출 정보를 프롬프트의 시스템 텍스트에 포함시키지 않으면 할루시네이션 위험이 커진다는 경고는, 기술을 ‘되게 하는 법’에서 끝나지 않고 ‘안전하게 쓰는 법’까지 끌어올려 준다. 책을 덮고 나면 전체 구조가 또렷하게 남는다. 9장까지는 생성형 AI를 다루는 기본기, 10장 RAG, 11장 도구 호출, 12장 MCP는 중고급 주제를 다루며 최신 흐름을 밀도 있게 담아낸다. 텍스트 대화부터 멀티모달, 임베딩과 벡터 저장소, 대화 기억과 RAG, 도구 호출과 MCP까지 한 권에서 이어지니, 독자는 “어떤 기능을 언제 끼워 넣어야 하는지”라는 개발자의 질문에 답을 얻게 된다. #SpringAI #스프링AI #SpringBoot #스프링부트 #Java #자바개발 #백엔드개발 #AI개발 #생성형AI #LLM #OpenAI #HuggingFace #ChatModel #ChatClient #프롬프트엔지니어링 #RAG #벡터DB #벡터저장소 #임베딩 #대화기억 #ToolCalling #도구호출 #MCP #MCPServer #JSONRPC #STDIO #SSE #Docker #Ollama |
|
예스24 리뷰어클럽 서평단 자격으로 도서를 제공받고 작성한 리뷰입니다 최근 AI 개발에 관심이 많아 여러 자료를 찾아봤지만, 이처럼 구체적으로 Spring 기반의 AI 적용 방법을 안내하는 책은 처음이었습니다. 단순히 개념을 설명하는 데 그치지 않고, 실제 코드와 실습을 통해 하나하나 따라가다 보면 자연스럽게 AI 프로젝트의 큰 그림이 잡히는 경험을 할 수 있었습니다. 특히 생성형 AI와 RAG, Tool Calling 같은 최신 기술을 스프링 환경에서 어떻게 구현할 수 있는지 보여주는 부분이 인상 깊었고, 막연하게만 알던 기술들이 손에 잡히는 느낌이 들었습니다. 처음엔 두려움이 앞섰지만, 책을 읽으며 작은 성취감을 하나씩 쌓아가는 과정이 즐거웠습니다. 이론과 실습을 균형 있게 담아낸 덕분에, 이제는 저도 AI 기반 애플리케이션을 만들 수 있겠다는 자신감이 생겼습니다. AI와 스프링을 함께 공부하고 싶은 분께 적극 추천하고 싶은 책입니다. #리뷰어클럽리뷰 |
|
한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다. 이것이 Spring AI다(한빛미디어, 2025) ![]() 책 소개저자 : 신용권 제목 : 이것이 Spring AI다 출판사 : 한빛미디어 출간 연도 : 2025.08. 페이지 : 472쪽 Spring AI는 AI 엔지니어링을 위한 애플리케이션 프레임워크로, 이식성과 모듈형 설계와 같은 Spring 생태계의 설계 원칙을 AI 영역에 적용하고, 애플리케이션을 구성하는 기본 단위로 POJO(Plain Old Java Object)를 활용하도록 촉진하는 것을 목표로 한다.(Spring AI Docs 中) LLM을 java 생태계에 통합하기 위한 Spring 프로젝트인 Spring AI를, 신용권 저자와 함께 알아가보자. (저자는 '이것이 자바다'(한빛미디어,2024) '혼자 공부하는 자바'(한빛미디어,2024)를 출간한 JAVA 전문가이다.) Spring AI Spring AI is an application framework for AI engineering. Its goal is to apply to the AI domain Spring ecosystem design principles such as portability and modular design and promote using POJOs as the building blocks of an application to the AI domain. At spring.io https://spring.io/projects/spring-ai 책은 총 12개의 챕터로 구성되어 있다. Chapter 01 Spring AI 시작 Spring AI 개발 환경 구축부터 시작하는 책은 VS CODE를 기준으로 진행 된다. Chat Model API 사용 예제를 시작으로 프롬프트 엔지니어링의 다양한 예시들(제로-샷 프롬프트, 퓨-샷 프롬프트 등)을 1~3장에 걸처 설명한다. 4장에서는 LLM 출력을 다양한 형식으로 변환 하는 방법을 안내하는데, List<String>과 T 객체, Map<string, object> 객체로 변환 하는 코드 실습을 통해 다양한 변환기 별 특징(구현체를 사용하는 방법 / 저수준&고수준)을 학습 할 수 있게 안내한다. ![]() 특히 챕터 5. 음성 대화 파트는 STT(Speech-To-Text)와 TTS(Text-To-Speech) 모델 실습을, 챕터 9. 대화 기억 파트는 In-Memory / VectorStore / RDBMS / Cassandra 대화 기억 실습을 통해 기억저장소 활용법을 안내한다. 책의 후반부인 챕터 10에서는 RAG와 ETL을, 마지막인 챕터 12에서는 MCP를 다루며 다양한 생성형 AI 사용법을 안내한다. Spring은 자바 개발자, 특히 자바 백엔드 개발자들이 필수로 사용하는 프레임워크로 이 책은 Spring AI를 통해 AI 기술을 자바에서 활용할 수 있도록 안내한다. VS Code로 실습하는 12개 챕터를 통해 실무 프로젝트에 Spring AI를 적용할 수 있도록 안내하는 '이것이 Spring AI다'를 자바 개발자 그리고 Spring AI에 관심있는 모든 분께 추천한다. 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다. |
|
이 포스팅은 한빛미디어에서 책을 받아읽고 주관적으로 작성했습니다. AI를 만들때 Python 기반으로 프로토타입을 만듭니다. 비교적 공개된 자료와 라이브러리가 편리하기 때문입니다. 하지만 모델의 변화가 크게 변화지 않거나 사내에서 백엔드 서버가 JVM 계열인 서버면 Spring AI를 검토하게 되는데요. 최근 대대적 업데이트와 성능면에서도 좋은 평가를 받고 있습니다. 다만 관련된 책과 자료는 쉽게 찾기 힘듭니다. 이 문제를 해결해준 책이 나왔는데요. 이것이 자바 책을 쓴 신용권 개발자가 이것이 Spring AI다를 썼습니다. 이 책은 최신 AI 기술을 Spring 생태계 통합하는 방법을 알려주는데요. 자세히 알아보도록 하겠습니다. 1) spring ai 무엇인가 Spring AI는 Spring 개발자들이 익숙한 환경에서 AI 기능을 손쉽게 사용할 수 있도록 만든 도구입니다. 복잡한 AI 모델을 호출할 때도 간단한 설정과 코드만으로 처리할 수 있게 도와주는 역할을 하는데요. 스프링 부트 3.4.x 버젼 이상 부터 지원을 합니다. 또한 Spring AI 내부 구현 방식은 기존의 랭체인과 조금 다르지만 유사한 기능을 제공 해줍니다. OpenAI, Hugging Face 등 다양한 LLM을 자동으로 구성하고 엔터프라이즈 환경에 적합한 여러 벡터 저장소 연동을 지원합니다. 2) MCP 란? MCP는 애플리케이션과 다양한 외부 도구를 연결하는 표준화된 방법을 제공합니다. MCP에서는 외부 도구를 MCP Server라고 부릅니다. 내부 도구는 자바로 구성해야하지만 외부 도구의 경우에는 다양한 언어로 가능합니다. 즉 MCP Protocol 통해서 대화면되면 되는 것이죠. 이로써 MCP는 USB-C 포트와 유사하다고 이것이 Spring AI다 책은 알려줍니다. USB 포트가 컴퓨터에 다양한 주변 장치를 연결하는 표준화된 방법을 제공하는 것처럼 MCP 애플리케이션에 다양한 MCP Server를 연결하는 표준화된 방법이 비슷한 것이죠. ps. 이것이 Spring AI다 책은 스프링 기반으로 백엔드 개발을 해본 개발자들이 생성형 AI 기능을 자연스럽게 통합 할 수 있는데요. 스프링 AI를 활용해 텍스트와 이미지 생성 뿐만 아니라 음성처리와 문서 기반 질의 응답에 관련된 예제가 자세히 적어져 있어 실무에 도입하는 분들에게 길라잡이가 될 것으로 보입니다. |