강의

멘토링

커뮤니티

NEW
AI Technology

/

AI Agent Development

[Season 1] Spring AI in Action: Developing a Premium Reservation AI Agent

Spring AI + JPA + MySQL Premium Reservation Agent Backend Development with 'Autonomous Behavior' Beyond Chatbots to Agents: The Definitive Guide to Tool Calling and Prompt Engineering

47 learners are taking this course

  • bitcocom
Java
Spring Boot
backend
AI Agent
Spring AI

What you will gain after the course

  • You can create custom tools that AI agents can use by leveraging Spring AI's @Tool.

  • You can learn how to implement the core backend functionality of an AI agent using Java and Spring Boot.

  • You can complete an AI-based inquiry management system backend that integrates with a real database.

  • You can integrate backend and frontend systems to provide services.

[Season 1] Spring AI in Practice: Premium Reservation AI Agent Development

Don't settle for simple chatbots anymore. 🤔
Create AI agents that perform actual business logic and interact with databases!

GourmetBot AI Agent Demo

💡 Course Motivation

In the real world, companies want more than simple conversational AI—they want "agents that integrate with our actual company database to handle business tasks". This course teaches you how to create agents with practical problem-solving capabilities by combining traditional backend technologies (DB, transactions) with cutting-edge AI technologies (LLM, Tool Calling).

In this course, we develop a premium reservation AI agent at a production-ready level using Spring AI, JPA, and MySQL. Going beyond simple chatbots that just answer questions, you'll learn how to build an proactive AI agent that understands customer requests, queries databases to determine availability, confirms actual reservations, retrieves reservation details, and cancels reservations. Additionally, we implement a smart agent that stores conversation content in a database to remember previous conversation context.

🏆 Goal

  1. Effective Agent Design: Implement a robust system with separated brain-memory-tools as shown in the architecture diagram above.

  2. Tool Calling Master: Make AI autonomously judge and call Java methods (business logic) to manipulate databases.

  3. Business Logic Integration: Rather than simple Q&A, we build a complete backend system where Read (R) - Create (C) - Delete (D) operations are organically connected.

🎩 Concept

"GourmetBot" - AI Concierge for Premium Fine Dining

  • Smart: Remembers customer visit history and suggests personalized tables.

  • Safe: Essential allergy information is checked and data integrity is guaranteed.

  • Polite: Uses an elegant and formal tone and manner that is not mechanical.


🔑 Core Content

  1. Spring AI Architecture Implementation: Implementing each element of the diagram in code (System Prompt, Repository, Tools).

  2. Advanced Prompt Engineering: Applying Slot Filling (Follow-up Questions), Time Awareness (Date Calculation), and Chain of Thought (Step-by-Step Reasoning) Techniques.

  3. Data Integrity & Transactions: Implementing Upsert Pattern (automatic user registration) and Soft Delete (reservation cancellation status management).

  4. Tool Strictness: Powerful input data validation using Java Record (DTO) and JSON Schema.

(Season 1) AI Agent Architecture
  1. Central Control (Spring AI & LLM): The framework receives user requests and forwards them to the LLM (GPT). At this point, the System Prompt we wrote is injected to become the agent's 'judgment criteria (brain)'.

  2. Hands and Feet (Tools - Java Code): LLMs cannot access databases on their own. Instead, based on their judgment results, they call (Tool Calling) the business logic (reservation creation, cancellation, inquiry) that we implemented in Java.

  3. Memory Storage (Memory - MySQL): Permanently stores and retrieves conversation context (Chat Memory) and actual business data (customers, tables, reservation information).

  4. Note: The grayed-out Retrieval(RAG) section is the 'knowledge search' part that will be covered in Season 2, and will not be implemented in Season 1.


(Season 1) Tool Calling
  • User Request (Chat Request): The user requests a reservation from the chatbot. For example, they might request "Please make a reservation for 4 people tomorrow at 7 PM."

  • Tool Definition: Spring AI defines Java methods that perform functions such as creating reservations, checking reservations, and canceling reservations as tools that AI models can understand. Each tool includes a name, description, and required input information (such as reservation date, time, and number of people).

  • Dispatch Tool Call Requests: The AI model analyzes the user's reservation request and determines that it needs to call the bookTable tool to create a reservation. The AI model sends a request to Spring AI to call the bookTable tool.

  • Tool Execution: Spring AI receives a request from the AI model and executes a Java method (bookTable) that performs the actual reservation creation functionality. At this time, it passes along the reservation information provided by the user (tomorrow evening 7 PM, 4 people).

  • Return Result: When the bookTable method is executed and the reservation information is saved to the database, results such as reservation success status and reservation number are returned to Spring AI.

  • Chat Response: The AI model provides a final response to the user based on the tool execution results. For example, it might respond, "Your reservation for 4 people tomorrow at 7 PM has been completed. Your reservation number is 12345."

(Season 1) Database ERD
  • customer table: A table that stores customer information. It includes information such as customer ID, name, phone number, visit count, notes, etc.

  • restaurant_table table: A table that stores restaurant table information. It includes information such as table ID, seating capacity, table type, etc.

  • reservation table: A table that stores reservation information. It includes information such as reservation ID, reservation time, customer ID, table ID, number of people, allergy information, reservation status, etc. It has relationships with the customer table and the restaurant_table table.

  • spring_ai_chat_memory table: A table that stores conversation content with the chatbot. It includes information such as conversation ID, conversation content, message type, timestamp, etc. Through this, the chatbot can remember previous conversation content and provide contextually appropriate responses.

Software Architecture

This is the software architecture (blueprint) of an AI chatbot service called 'GourmetBot'.

When users ask questions on the web/app screen, the backend server receives them and integrates with OpenAI(ChatGPT) to provide answers, and when necessary, retrieves information from the database.

Core Lecture Method: LLM+Tool Calling

In this course, we will develop an AI agent using the Method 2: LLM + Tool Calling approach shown in the image above.

  • Agents Beyond Simple Chatbots: LLM (brain) understands user intent and directly uses tools (body) defined in the application to perform actual tasks.

  • Direct Business Logic Execution: AI calls Java methods (tools) such as reservation creation, inquiry, and cancellation to interact with the database and handle business logic.

  • Leveraging the Powerful Features of Spring AI: Easily connect and manage LLMs and application tools through the Spring AI framework.

Features of This Course

📌 Practical project-based learning: This is a hands-on course that minimizes theoretical explanations and focuses on implementing a fully functional reservation system from start to finish.

📌 Complete Mastery of Spring AI Core Features: In-depth coverage of @Tool functionality and prompt engineering, which are essential for AI agent development.

📌 Building Backend and Frontend Integration Services: Build services by integrating backend systems (Spring Boot) with frontend systems (Vite+React).

📌 Building a Robust Backend System: Build a stable backend system that integrates with real databases using JPA and MySQL.

📌 Implementing reservation confirmation, inquiry, and cancellation features: Implement core functionalities needed for actual reservation systems through AI agents.

📌 Implementing Conversation Context Memory Feature: Store conversation content in a database so that AI agents can remember previous conversations and maintain continuity in dialogue.

📌 Scalable Architecture Design: Learn how to design flexible architectures that consider future feature expansions such as RAG (Retrieval-Augmented Generation). (RAG functionality will be covered in Season 2.)

I recommend this for people like this

Backend Developers: Those who want to integrate Spring AI technology into their services, those who want to create actually functioning AI agents

Spring Framework Users: Those who want to implement new features using Spring AI

Those who prefer practice-oriented learning: Those who want to learn through actual projects rather than theory

🌏 Applications

This course's architecture can be directly applied to all domains that require 'reservations' and 'consultations'.

  • 🏥 Hospital Appointment Bot: Return patient identification, department recommendation.

  • 🏨 Hotel Concierge: Room inquiry, room service ordering.

  • 💇 Beauty/Hair Salon Booking: Designer assignment, treatment time calculation.

  • 🛒 CS Consultation Bot: Shipping tracking, order modification/cancellation automation.

After taking the course

  • You will gain the ability to develop AI agents using Spring AI.

  • You will gain the ability to integrate backend (Spring Boot) and frontend (React) systems.

  • You will gain the ability to build backend systems using JPA and MySQL.

  • You will gain the ability to implement a real reservation system that includes reservation confirmation, inquiry, and cancellation features.

  • You will gain the ability to design and implement databases for remembering conversation context.

  • You will experience the basics and practice of prompt engineering.

  • You will experience a project that completes an actual reservation system.

Let's learn frontend implementation!

Node.js, VS Code, React.js, JavaScript, Tailwind CSS, Vite Tool

GourmetBot Main Screen

GourmetBot Reservation, Inquiry, Cancellation

Let's learn backend implementation!

IntelliJ IDEA, Spring Boot, Spring AI, JPA, MySQL

Remember conversation content

We implement functionality to store and retrieve conversation content in a database so that AI agents can remember previous conversation history and provide contextually appropriate responses. This enables us to offer customers a more natural and personalized experience.

Implementing Reservation Functionality

We will implement a feature that understands customer reservation requests in natural language, checks availability, and then creates actual reservations. You will learn the process where AI converses with customers to collect necessary information and ultimately delivers reservation confirmation messages.

Implementing Reservation Cancellation

When a customer requests a reservation cancellation, we implement functionality for the AI to find and process the cancellation of that reservation. We learn how to build a stable system by considering various situations that may arise during reservation cancellation.

Implementing Reservation Inquiry

We will implement a feature where AI searches for reservation information from the database and provides it to customers so they can check their own reservation history. You will learn how to enhance convenience by providing customers with accurate reservation information.

Pre-enrollment Reference Information

💻 Development Environment
  • IDE: IntelliJ IDEA Community Edition.

  • Language: Java 17 or 21.

  • Framework: Spring Boot 3.5.8 (Latest Stable).

  • Library: Spring AI 1.0.3 (or 1.1.0 Snapshot).

  • Database: MySQL 8.x.

  • AI Model: OpenAI (gpt-4o-mini or gpt-5-mini).

📚 Learning Materials
  • The source code (backend, frontend) is provided in Lecture 29 at the end of the video course.

  • The course materials are provided as PDF files.

  • The source code is provided through Github.

📚 Prerequisites

  • Java: Understanding of basic Java syntax (Java 17+ recommended).

  • Spring Boot: Basic usage of DI/IoC, JPA(Repository), Controller.

  • Database: Basic understanding of SQL (SELECT, JOIN concepts).

Recommended for
these people

Who is this course right for?

  • A backend developer who wants to create an AI agent applicable to real services using Spring AI's @Tool functionality

  • A developer who needs to build a system that integrates AI functionality to interact with databases in a Java and Spring Boot environment

  • A working developer who is considering how to efficiently connect AI models with existing backend systems

  • Developers who want to create services by integrating backend and frontend systems

Need to know before starting?

  • You need basic knowledge about the Java programming language.

  • It would be good to have a basic understanding of the Spring Boot framework.

  • Having basic knowledge of databases and SQL would be helpful.

Hello
This is

8,081

Learners

629

Reviews

665

Answers

4.9

Rating

11

Courses

안녕하세요 박매일 강사입니다.
SW교육센터를 운영중이며 대학, 관공서, 기업체에 컨설팅 및 SW위탁교육을 진행하고 있습니다.


📄 주요 강의경력외 다수

- 구름 특성화고 전공캠프 강의(Full Stack 과정)
- 소프트웨어마이스터고등학교 산학협력교사
- 광주인공지능사관학교 강의
- 패스트캠퍼스 백엔드 부트캠프 강의
- 스마트인재개발원 교육부장 및 강의
- 한국전력공사 In-House 코딩 위탁 교육
- 한양대학교 ERICA 온라인 강의
- 비트소프트웨어교육센터운영(해외취업,국비교육)
- SW채용연수사업(미래창조과학부)

🎤 온라인 교육콘텐츠 제공

인프런 : Java,DB,MVC,Spring,Spring AI,IoT
패스트캠퍼스 : Java, Spring Boot

email : bitcocom@empas.com

Curriculum

All

29 lectures ∙ (7hr 8min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

Not enough reviews.
Please write a valuable review that helps everyone!

Limited time deal ends in 8 days

$19,250.00

30%

$22.00

bitcocom's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!