OUR

Courses

The course „Spring AI: Integration of AI Components in Self-Developed Software“ offers a comprehensive insight into the implementation of AI-powered functions with the Retrieval-Augmented-Generation patterns using the latest Java Spring library. Through a blend of theoretical explanations and practical exercises, you will learn to develop and customize advanced AI components, such as a chat assistant.

We will learn how the Retrieval-Augmented Generation pattern works for AI text generation. This will introduce fundamental concepts such as models, embeddings, and vector-based databases. We will delve into the use of prompting techniques and the interplay between retrieval and generation. The pattern employs a two-stage approach: first, relevant text fragments are retrieved from a vector-based database, and then a response is formulated using generation models. Emphasis is placed on both query efficiency and generation quality.

The user interface is being developed using Angular as an example to learn best practices for handling streamed AI responses.

Our trainers design the course to be interactive and practice-oriented. Participants have the opportunity to customize content and contribute specific company examples to achieve maximum benefit for their own software development.

  • Spring AI is a new addition to the Spring framework that allows us to work with AI chat models in enterprise applications.
  • Introduction to the theoretical background of AI models: fundamental concepts and principles behind the development of AI chat assistants are presented. This includes an overview of various AI techniques such as machine learning, natural language processing, and neural networks.
  • Fundamentals of Spring AI: Introduction to the abstract concepts that serve as the basis for the development of AI applications.
  • Core Abstractions: This section explains the core abstractions of Spring AI, which enable various implementations and allow for easy component replacement with minimal code changes. It covers the ChatClient/StreamingChatClient interfaces and their implementations for OpenAI, Azure OpenAI, Ollama, VertexAI, Huggingface, Bedrock/Llama2, Bedrock/Anthropic, Bedrock/Titan, and Bedrock/Cohere, as well as abstractions such as EmbeddingClient and ImageClient and their model implementations.
  • Higher-level functionalities: Introducing Spring AI's higher-level functionalities to address common use cases such as "Questions and answers about your documentation" or "Chatting with your documentation".
  • Integration with Spring ecosystem projects: Explanation of how Spring AI can be integrated with other projects in the Spring ecosystem, such as Spring Integration, Spring Batch, Spring Data, Spring Cloud GCP, Spring Cloud, etc.
  • Setup simplification: Using Spring Boot Starters to simplify the setup of essential dependencies and classes, and introducing sample applications to explore the project's features.
  • Using Spring CLI: Introduction to the new Spring CLI project, which allows you to get started quickly by using the command "spring boot new ai" for new projects or "spring boot add ai" to add AI capabilities to an existing application.

Target group

  • Software developers and architects

Learning methods

The course is delivered through a combination of lectures, practical exercises, discussions, and demos. Participants also have access to online resources, including the official Spring AI documentation, to deepen their understanding and complete additional exercises.

Diploma

Upon successful completion of the course, participants will receive a certificate of participation in the "Introduction to Artificial Intelligence with Spring AI".