Skip to content

This hands-on workshop will guide you in building Java applications enhanced with AI capabilities by leveraging Generative AI and Large Language Models (LLMs), using Spring Boot and Spring AI.

License

Notifications You must be signed in to change notification settings

ThomasVitale/java-ai-workshop

Repository files navigation

AI Applications with Java and LLMs

This hands-on workshop will guide you in building Java applications enhanced with AI capabilities by leveraging Generative AI and Large Language Models (LLMs). Using Spring Boot and Spring AI, the workshop will cover a range of techniques and patterns to implement use cases, such as conversational chats, question answering with documents, structured data extraction, semantic search, agents, and more. Examples will include integrations with Ollama, Mistral AI, OpenAI, Anthropic, Groq, and Hugging Face.

Agenda

  • Introduction to Generative AI and Large Language Models (LLMs).
  • Architectures of LLM applications, the role of Java and AI frameworks (Spring AI, LangChain4j).
  • Integrating applications with chat models, prompt design, and structured outputs.
  • Integrating applications with embedding models, ETL pipelines for reading, transforming, and loading documents into vector stores.
  • Implementing the Retrieval Augmented Generation (RAG) pattern, semantic search, and vector stores.
  • Integrating applications with other models (image, speech, moderation).
  • Evaluation, observability, and automated tests for LLM-powered applications.
  • Developer experience with Testcontainers and Ollama.

Pre-requisites

  • Familiarity with Java and core Spring Boot.
  • Laptop with a Java IDE and Docker Desktop/Podman Desktop installed.
  • A GitHub personal account.

About

This hands-on workshop will guide you in building Java applications enhanced with AI capabilities by leveraging Generative AI and Large Language Models (LLMs), using Spring Boot and Spring AI.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages