[Season 1] Spring AI 実践:プレミアム予約AIエージェント開発

Spring AI + JPA + MySQLを活用した「自律行動型」プレミアム予約エージェントのバックエンド開発 チャットボットを超えてエージェントへ:Tool Callingとプロンプトエンジニアリングの定石

難易度 初級

受講期間 無制限

Java
Java
Spring Boot
Spring Boot
backend
backend
AI Agent
AI Agent
Spring AI
Spring AI
Java
Java
Spring Boot
Spring Boot
backend
backend
AI Agent
AI Agent
Spring AI
Spring AI

学習した受講者のレビュー

4.9

5.0

문석청

30% 受講後に作成

良い講義をありがとうございました。

5.0

em241101

30% 受講後に作成

良いですね。詳細な説明

5.0

bigho98

100% 受講後に作成

以前はチャットモデル固有のリクエスト、レスポンスオブジェクトのフィールド名を一つ一つマッピングするのが大変でしたが、こんなに簡単で素晴らしいSpring AIがあったんですね。おかげで本当にたくさん学びました。良質な講義ありがとうございます。

受講後に得られること

  • Spring AIの@Toolを活用して、AIエージェントが使用できるカスタムツールを作成できます。

  • JavaとSpring Bootを使用して、AIエージェントのバックエンドの核となる機能を実装する方法を習得できます。

  • 実際のデータベースと連動するAIベースの問い合わせ管理システムのバックエンドを完成させることができます。

  • バックエンドとフロントエンドのシステムを連携させてサービスを提供できます。

[Season 1] Spring AI 実践:プレミアム予約AIエージェント開発

もはや単純なチャットボットに満足しないでください。🤔
実際のビジネスロジックを実行し、データベースと相互作用する AIエージェントを作ってみましょう!

GourmetBot AI Agent Demo

💡 講義の動機 (Motivation)

現場では、単なる対話型AIを超えて、"実際に自社のDBと連動して業務を処理してくれるエージェント"が求められています。この講義では、伝統的なバックエンド技術(DB、トランザクション)と最新のAI技術(LLM、Tool Calling)を組み合わせて、実務的な問題解決能力を備えたエージェントを作る方法をお伝えします。

この講義では、Spring AIJPAMySQLを使用して、実際のサービスが可能なレベルのプレミアム予約AIエージェントを開発します。単に質問に答えるチャットボットを超え、顧客のリクエストを理解し、データベースを照会して予約の可否を判断し、実際の予約を確定させ、予約内容を照会し、予約をキャンセルする能動的なAIエージェントを構築する方法を学ぶことができます。また、会話内容をデータベースに保存し、以前の会話の文脈を記憶するスマートなエージェントを実装します。

スプリングAI講義と一緒に見るとシナジーが爆発する『Do it! スプリングAI』の書籍が出版(2026-06-15)

🛒 主要書店のリンク

🏆 目標 (Goal)

  1. Effective Agent設計:上記のアーキテクチャ図のように、脳・記憶・ツールが分離された堅牢なシステムを構築します。

  2. Tool Callingマスター:AIが自ら判断してJavaメソッド(ビジネスロジック)を呼び出し、DBを操作するように構築します。

  3. ビジネスロジックの統合:単なる質疑応答ではなく、照会(R) - 生成(C) - 取消(D)が有機的に連結された完全なバックエンドシステムを構築します。

🎩 コンセプト (Concept)

"GourmetBot(ゴメボット)" - プレミアム・ファインダイニングのAIコンシェルジュ

  • Smart: 顧客の訪問履歴を記憶し、パーソナライズされたテーブルを提案します。

  • Safe: アレルギー情報を必須でチェックし、データの整合性を保証します。

  • Polite: 機械的ではない、優雅で格式のあるトーン&マナーを駆使します。


🔑 核心内容 (Core Content)

  1. Spring AIアーキテクチャの実装: ダイアグラムの各要素をコードで実装 (System Prompt, Repository, Tools)。

  2. 高度なプロンプトエンジニアリング: Slot Filling(聞き返し)、Time Awareness(日付計算)、Chain of Thought(段階的思考)技法の適用。

  3. データ整合性 & トランザクション: Upsert Pattern(自動会員登録)、Soft Delete(予約キャンセル状態管理)の実装。

  4. Toolの厳格性: Java Record(DTO)とJSON Schemaを活用した強力な入力データ検証。

(Season 1) AI Agent アーキテクチャ

https://docs.spring.io/spring-ai/reference/api/effective-agents.html(公式ドキュメント参照)

  1. 中央統制 (Spring AI & LLM): フレームワークがユーザーのリクエストを受け取り、LLM(GPT)に伝達します。この際、私たちが作成したシステムプロンプト(System Prompt)が注入され、エージェントの「判断基準(脳)」となります。

  2. 手と足 (Tools - Java Code): LLMは自らDBに接続することはできません。その代わり、判断結果に基づいて、私たちがJavaで実装したビジネスロジック(予約の作成、キャンセル、照会)を呼び出し(Tool Calling)ます。

  3. 記憶ストレージ (Memory - MySQL): 会話のコンテキスト(Chat Memory)と実際のビジネスデータ(顧客、テーブル、予約情報)を永続的に保存し、呼び出します。

  4. 参考:グレーで表示されたRetrieval(RAG)領域はSeason 2で扱う「知識検索」の部分で、Season 1では実装しません。


(Season 1) Tool Calling

https://docs.spring.io/spring-ai/reference/api/tools.html(公式ドキュメント参照)

  • ユーザーリクエスト (Chat Request): ユーザーがチャットボットに予約を依頼します。例えば、「明日、午後7時に4名で予約して」のようにリクエストすることができます。

  • ツールの定義 (Tool Definition): Spring AIは、予約の作成、予約の照会、予約のキャンセルといった機能を実行するJavaメソッドを、AIモデルが理解できるツールとして定義します。各ツールには、名前、説明、必要な入力情報(例:予約日、時間、人数)などが含まれます。

  • ツール呼び出し要求 (Dispatch Tool Call Requests): AIモデルはユーザーの予約リクエストを分析し、予約作成のためにbookTableツールを呼び出す必要があると判断します。AIモデルはSpring AIに対してbookTableツールを呼び出すよう要求を送信します。

  • ツールの実行 (Tool Execution): Spring AIはAIモデルのリクエストを受け取り、実際の予約生成機能を実行するJavaメソッド(bookTable)を実行します。この際、ユーザーが提供した予約情報(明日の午後7時、4名)を一緒に渡します。

  • 結果の返却 (Return Result): bookTableメソッドが実行され、データベースに予約情報が保存されると、予約の成否や予約番号などの結果をSpring AIに返します。

  • チャットボットの応答 (Chat Response): AIモデルはツールの実行結果に基づき、ユーザーに最終的な応答を提供します。例えば、「明日の午後7時に4名様のご予約が完了しました。予約番号は12345です。」のように応答することができます。

(Season 1) データベース ERD
  • customer テーブル: 顧客情報を保存するテーブルです。顧客ID、名前、電話番号、訪問回数、メモなどの情報を含みます。

  • restaurant_table テーブル: レストランのテーブル情報を保存するテーブルです。テーブルID、収容人数、テーブルタイプなどの情報を含みます。

  • reservation テーブル: 予約情報を保存するテーブルです。予約ID、予約時間、顧客ID、テーブルID、人数、アレルギー情報、予約ステータスなどの情報を含みます。customerテーブルおよびrestaurant_tableテーブルとリレーションシップを結んでいます。

  • spring_ai_chat_memory テーブル: チャットボットとの対話内容を保存するテーブルです。対話ID、対話内容、メッセージタイプ、タイムスタンプなどの情報を含みます。これにより、チャットボットは以前の対話内容を記憶し、文脈に沿った回答をすることができます。

ソフトウェアアーキテクチャ

'GourmetBot(美食家ボット)'というAIチャットボットサービスのソフトウェアアーキテクチャ(設計図)です。

ユーザーがウェブ/アプリ画面で質問をすると、バックエンドサーバーがそれを受け取り、OpenAI(ChatGPT)と連携して回答を返し、必要に応じてデータベースから情報を検索する構造です。

講義の核心方式:LLM+Tool Calling

本講義では、上の画像の2番 LLM + Tool Calling方式を使用してAIエージェントを開発します。

  • 単なるチャットボットを超えたエージェント: LLM(脳)がユーザーの意図を把握し、アプリケーションに定義されたツール(胴体)を直接使用して実際のタスクを実行します。

  • ビジネスロジックを直接実行: AIが予約の作成、照会、キャンセルといったJavaメソッド(ツール)を呼び出し、データベースと相互作用してビジネスロジックを処理します。

  • Spring AIの強力な機能を活用: Spring AIフレームワークを通じて、LLMとアプリケーションのツールを簡単に連携・管理します。
    https://www.youtube.com/watch?v=l38CPjOYsHk&t=2157s (画像参照)

この講義の特徴

📌 実務中心のプロジェクトベース学習: 理論の説明は最小限に抑え、実際に動作する予約システムを最初から最後まで実装する実習中心の講義です。

📌 Spring AIのコア機能を完璧にマスター: AIエージェント開発の核心である@Tool機能とプロンプトエンジニアリングを深く扱います。

📌 バックエンドとフロントエンドの連携サービス構築: バックエンドシステム(Spring Boot)とフロントエンドシステム(Vite+React)を連携させてサービスを構築します。

📌 堅牢なバックエンドシステムの構築: JPAとMySQLを使用して、実際のデータベースと連動する安定したバックエンドシステムを構築します。

📌 予約の確定、照会、キャンセル機能の実装: 実際の予約システムに必要な核心機能をAIエージェントを通じて実装します。

📌 会話コンテキスト記憶機能の実装: 会話内容をデータベースに保存し、AIエージェントが以前の会話を記憶して連続性のある対話ができるように実装します。

📌 拡張可能なアーキテクチャ設計: RAG(検索増強生成)など、今後の機能拡張を考慮した柔軟なアーキテクチャを設計する方法を学びます。(RAG機能はSeason 2で扱います。)

このような方におすすめです

バックエンド開発者: Spring AI技術を自身のサービスに取り入れたい方、実際に動作するAIエージェントを作ってみたい方

Springフレームワークのユーザー: Spring AIを活用して新しい機能を実装したい方

実務中心の学習を好む方:理論よりも実際のプロジェクトを通じて学びたい方

🌏 応用分野 (Applications)

この講義のアーキテクチャは、「予約」と「相談」が必要なすべてのドメインにそのまま適用可能です。

  • 🏥 病院診療予約ボット: 再診患者の識別、診療科の推薦。

  • 🏨 ホテルコンシェルジュ: 客室照会、ルームサービス注文。

  • 💇 ビューティー/ヘアサロン予約: デザイナー指定、施術時間の計算。

  • 🛒 CS相談ボット: 配送照会、注文変更・キャンセルの自動化。

受講後には

  • Spring AIを活用したAIエージェントの開発能力を習得できます。

  • バックエンド(Spring Boot)とフロントエンド(React)のシステム連携能力を習得できます。

  • JPAMySQLを使用したバックエンドシステム構築能力を身につけることができます。

  • 予約の確定、照会、キャンセル機能を含む、実際の予約システムの実装能力を身につけることができます。

  • 会話の文脈を記憶するためのデータベース設計および実装能力を身につけることができます。

  • プロンプトエンジニアリングの基礎および実習を経験することになります。

  • 実際の予約システムを完成させるプロジェクトを経験することになります。

フロントエンドの実装を学びます!

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

GourmetBot メイン画面

GourmetBot 予約、照会、キャンセル

バックエンドの実装を学びます!

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

会話内容の記憶

AIエージェントが以前の対話内容を記憶し、文脈に沿った回答ができるように、データベースに対話内容を保存し、読み込む機能を実装します。これにより、顧客に対してより自然でパーソナライズされた体験を提供することができます。

予約機能の実装

顧客の予約リクエストを自然言語で理解し、予約可能かどうかを確認した上で、実際に予約を生成する機能を実装します。AIが顧客と対話しながら必要な情報を収集し、最終的に予約確定メッセージを伝えるプロセスを学びます。

予約キャンセルの実装

お客様が予約のキャンセルをリクエストした際、AIが該当する予約を探してキャンセル処理を行う機能を実装します。予約キャンセル時に発生し得る様々な状況を考慮し、安定したシステムを構築する方法を学びます。

予約照会の実装

顧客が自身の予約内容を照会できるように、AIがデータベースから予約情報を検索して伝える機能を実装します。顧客に正確な予約情報を提供し、利便性を高める方法を学びます。

[Season 2] Spring AI 実践:エンタープライズ級マルチAIエージェントシステム開発予告

受講前のご注意事項

💻 開発環境 (Environment)
  • IDE: IntelliJ IDEA Community Edition.

  • 言語: Java 17 または 21。

  • Framework: Spring Boot 3.5.8 (Latest Stable).

  • Library: Spring AI 1.0.3 (または 1.1.0 Snapshot)。

  • Database: MySQL 8.x.

  • AIモデル: OpenAI (gpt-4o-mini または gpt-5-mini)。

📚 学習資料
  • 動画講義の最後にある30講で(バックエンド、フロントエンドのソースコードが)提供されます。

  • 講義資料はPDFファイルで提供されます。

  • ソースコードはGithubを通じて提供されます。

📚 事前学習 (Prerequisites)

  • Java: 基本的なJava文法の理解 (Java 17+ 推奨)。

  • Spring Boot: DI/IoC、JPA(Repository)、Controllerの基本使用法。

  • Database: 基本的なSQLの理解(SELECT、JOINの概念)。

✏ 質問 & お問い合わせ

もし学習を進める中で理解できない部分があれば、Q&A掲示板1:1オープンチャットを活用してすぐにお問い合わせください
👩‍🎓Spring AI 実践(1:1オープンチャット) : https://open.kakao.com/o/sXXxSI5h

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Spring AIの@Tool機能を使用して、実際のサービスに適用可能なAIエージェントを作りたいバックエンド開発者

  • JavaとSpring Boot環境でAI機能を統合し、データベースと相互作用するシステムを構築する必要がある開発者

  • AIモデルと既存のバックエンドシステムを効率的に連携させる方法を模索している実務開発者

  • バックエンドとフロントエンドのシステムを連携させてサービスを作りたい開発者

前提知識、
必要でしょうか?

  • Javaプログラミング言語に関する基礎知識が必要です。

  • Spring Bootフレームワークに関する基本的な理解があることが望ましいです。

  • データベースおよびSQLに関する基礎知識があると役立ちます。

こんにちは
bitcocomです。

インフラン認証

キャリア認証

8,819

受講生

675

受講レビュー

670

回答

4.9

講座評価

14

講座

こんにちは、パク・メイル講師です。
SW教育センターを運営しており、大学、官公庁、企業へのコンサルティングおよびSW委託教育を行っています。


📄 主な講義経歴ほか多数

- goorm 特性化高校 専攻キャンプ講義(Full Stack コース)
- ソフトウェアマイスター高等学校 産学協力教師
- 光州人工知能士官学校 講義
- Fast Campus バックエンド ブートキャンプ講義
- スマート人材開発院 教育部長および講義
- 韓国電力公社 In-House コーディング委託教育
- 漢陽大学 ERICA オンライン講義
- ビットソフトウェア教育センター運営(海外就職、国費教育)
- SW採用研修事業(未来創造科学部)
- 人工知能、情報技術開発など職業能力開発訓練教師
* 教育に関するお問い合わせおよび提携(カカオトークチャンネル)
* 進行中の講義:https://itscoding.kr

🎤 オンライン教育コンテンツ提供

Inflearn:Java, DB, MVC, Spring, Spring AI & Agent, IoT
Fast Campus:Java, Spring Boot

email : bitcocom@empas.com

もっと見る

カリキュラム

全体

30件 ∙ (7時間 37分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

12件

4.9

12件の受講レビュー

  • em2411014552님의 프로필 이미지
    em2411014552

    受講レビュー 9

    平均評価 4.9

    5

    30% 受講後に作成

    良いですね。詳細な説明

    • bitcocom
      知識共有者

      ありがとうございます。講義がお役に立てれば幸いです。最後まで頑張ってください~~

  • seukchungmoon8847님의 프로필 이미지
    seukchungmoon8847

    受講レビュー 40

    平均評価 5.0

    5

    30% 受講後に作成

    良い講義をありがとうございました。

    • bitcocom
      知識共有者

      ありがとうございます。^^ 講義がお役に立てれば幸いです。最後まで頑張ってください!

  • bigho982715님의 프로필 이미지
    bigho982715

    受講レビュー 24

    平均評価 5.0

    5

    100% 受講後に作成

    以前はチャットモデル固有のリクエスト、レスポンスオブジェクトのフィールド名を一つ一つマッピングするのが大変でしたが、こんなに簡単で素晴らしいSpring AIがあったんですね。おかげで本当にたくさん学びました。良質な講義ありがとうございます。

    • bitcocom
      知識共有者

      率直な受講レビューありがとうございます~~ Spring AIは継続的に発展している段階で、まだ活性化されていない部分がありますが、今回の講義がSpring AIを紹介し広める良いきっかけになることを願っています。 今後も多くのサービスを開発してみて、Spring AIを広めていただければと思います。 ありがとうございます^^

  • bokyoungp7692님의 프로필 이미지
    bokyoungp7692

    受講レビュー 8

    平均評価 4.9

    5

    100% 受講後に作成

    今まさに必要だったAgent制作の授業でした。ありがとうございます。

    • bitcocom
      知識共有者

      講義がAgent制作にお役に立てて何よりです。Spring AIでより多様なAgentを開発してみてくださいね~~ありがとうございます。

  • abcd123123님의 프로필 이미지
    abcd123123

    受講レビュー 330

    平均評価 5.0

    5

    16% 受講後に作成

    • bitcocom
      知識共有者

      初めてのレビューで5点をつけていただき、ありがとうございます。 最後まで完走して、良いインサイトを得ていただければと思います。ファイティングです~~

bitcocomの他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

同じ分野の他の講座を見てみましょう!

期間限定セール、あと4日日で終了

¥2,566

29%

¥3,665