A hands-on training course for learning Spring AI through progressive lab exercises.
This repository contains starter code for a comprehensive Spring AI training course. Students build functionality incrementally through guided TODO exercises.
mainbranch: Starter code with TODO-guided exercisessolutionsbranch: Complete implementations for referencelabs.md: Step-by-step lab instructions and exercisesslides.md: Comprehensive Slidev presentation for training sessions
- Java 17+
- Environment Variables:
export OPENAI_API_KEY=your_openai_api_key export ANTHROPIC_API_KEY=your_anthropic_api_key # Optional
# Clone the repository (main branch contains starter code)
git clone https://github.com/kousen/Spring_AI_Training_Course.git
cd Spring_AI_Training_Course
# Build the project
./gradlew build
# Run basic tests (many will be empty until you implement them)
./gradlew test
# View complete solutions (when needed)
git checkout solutionsFollow the exercises in labs.md to build Spring AI applications from scratch:
- Basic Chat Interactions - Simple AI conversations
- Streaming Responses - Real-time AI responses
- Structured Data Extraction - AI-powered data parsing
- Prompt Templates - Reusable AI prompts
- Chat Memory - Conversation context
- Vision Capabilities - Image analysis
- Image Generation - AI-created images
- AI Tools - Function calling
- Audio Processing - Speech-to-text and text-to-speech
- AI Response Evaluation - Quality assurance for AI systems (advanced)
- Retrieval-Augmented Generation (RAG) - AI with knowledge base
- Production RAG - Redis vector store optimization
- Start with TODOs: Each test class contains guided TODO comments
- Build incrementally: Complete one lab before moving to the next
- Reference solutions: Check the
solutionsbranch when needed - Hands-on learning: Learn by implementing, not copying
- Lab Instructions: See labs.md for step-by-step exercises
- Presentation Slides: Use slides.md with Slidev for training sessions
- Complete Examples: Switch to
solutionsbranch for working implementations - Issues: Report problems via GitHub issues
# Install Slidev globally
npm install -g @slidev/cli
# Start the presentation
slidev slides.md
# Export to PDF
slidev export slides.mdNote: Pre-exported versions are available as slides-export.pdf and slides-export.pptx