Samples showing how to build Java applications powered by Generative AI and Large Language Models (LLMs) using Spring AI.
- Java 23
- Podman/Docker
-
๐ค Chatbot Chatbot using LLMs via Ollama.
-
โ Question Answering Question answering with documents (RAG) using LLMs via Ollama and PGVector.
-
๐ Semantic Search Semantic search using LLMs via Ollama and PGVector.
-
๐ Structured Data Extraction
Structured data extraction using LLMs via Ollama. -
๐ท๏ธ Text Classification Text classification using LLMs via Ollama.
Chat completion with LLMs via different model providers:
Vector transformation (embeddings) with LLMs via different model providers:
Image generation with LLMs via different model providers:
Speech generation with LLMs via different model providers:
Speech transcription with LLMs via different model providers:
Coming soon
Prompting using simple text:
Prompting using structured messages and roles:
Prompting using templates:
Converting LLM output to structured JSON and Java objects:
Including various media in prompts with LLMs:
Function calling with LLMs via different model providers:
Coming soon
Reading and vectorizing documents with LLMs via Ollama:
Document transformation with LLMs via Ollama:
- Metadata
Enrich documents with keywords and summary metadata for enhanced retrieval. - Splitters
Divide documents into chunks to fit the LLM context window.
Coming soon
Question answering with documents using different RAG flows (with Ollama and PGVector):
LLM Observability for different model providers:
Vector Store Observability for different vector stores:
Coming soon
Coming soon
- Introducing Spring AI by Christian Tzolov and Mark Pollack (Spring I/O 2024)
- Spring AI Is All You Need by Christian Tzolov (GOTO Amsterdam 2024)
- Concerto for Java and AI - Building Production-Ready LLM Applications by Thomas Vitale (GOTO Copenhagen 2024)
- Building Intelligent Applications With Spring AI by Dan Vega (JetBrains Live Stream)
- Spring AI Series by Dan Vega
- Spring AI Series by Craig Walls
- Spring AI Series by Josh Long