AI-152
Developing Generative AI Applications with Spring Training
Learn how to construct intelligent applications leveraging cutting-edge AI models and the Spring AI framework.
The Spring AI course delves into integrating renowned AI models from industry leaders like OpenAI and Amazon, customizing model behavior, crafting chat applications with natural language processing and generation, generating captivating visuals, implementing semantic search, and utilizing sophisticated techniques such as Retrieval-Augmented Generation (RAG) and SQL generation.
Course Details
Duration
2 days
Prerequisites
All learners must be familiar with Java and Spring Boot.
Skills Gained
- Seamlessly integrate Spring AI into your Spring Boot projects
- Establish connections between Spring AI and a variety of foundational models
- Employ the ChatModel and ChatClient classes to interact with different AI models
- Efficiently manage state for chat-based foundational models
- Shape the output of foundational models to produce Java objects or code
- Master various prompt engineering techniques
- Utilize embeddings stored in vector stores to perform semantic search
- Employ Advisors to implement Retrieval-Augmented Generation (RAG)
- Generate images directly from your Spring Boot application
- Empower your applications to autonomously generate SQL code for complex database queries
- Implement and manage local functions within your AI-powered Spring Boot applications
Course Outline
- Introduction to Spring AI
- Overview of supported models and modalities
- Key abstractions in Spring AI
- Starter dependencies and their configurations
- Essential properties and credential management
- Basic usage patterns for integrating Spring AI into applications
- Quick Start with Spring AI, ChatClient and OpenAI
- In-Depth Coverage of Chat Models
- Detailed exploration of Chat Models from Amazon Bedrock, OpenAI, Azure, and Ollama
- Dependency management and model enablement
- Autoconfiguration and key properties for each provider
- Understanding Chat Properties
- In-depth explanation of properties like TopK, TopP, Temperature
- Frequency & Presence Penalties and their impact on outputs
- Logit Bias, Max Tokens, Stop Sequences, and Response Formats
- ChatClient Features
- Configuring retry behavior and overriding default property settings
- Roles and system messages within ChatClient
- Advisors, ChatMemoryAdvisor, and managing conversational context
- Entity recognition and handling streaming responses
- Image Generation
- Fundamentals of image generation and its differences from chat models
- Key properties for controlling image generation output
- Local Functions
- The role and benefits of client-side functions
- Implementation strategies and limitations of local functions within Spring AI
- Prompt Engineering
- Techniques including One-shot, Few-shot, and Chain of Thought
- Concepts of Retrieval-Augmented Generation (RAG) and the ReACT flow
- Embeddings and Semantic Search
- Understanding embeddings and their application in semantic search
- Implementation of semantic search with TransformersEmbeddingModel
- Embeddings and Vector Stores
- Types of Vector Stores and their integration with embeddings
- Workflow of semantic search using vector stores
- Building and querying a simple vector store
- Retrieval-Augmented Generation (RAG)
- Comprehensive understanding of the RAG flow
- Utilizing QuestionAnswerAdvisor to enhance query responses
- The Do-It-Yourself RAG Approach
- Constructing multi-step flows for advanced RAG implementations
- Implementing RAG workflows without relying on embeddings
- SQL Generation
- Building multi-step flows to generate SQL queries dynamically
- Integrating AI-driven SQL generation into applications
- Conclusion
- Recap of key concepts and techniques
- Q&A and course completion