A while back, I built the Vaadin Docs Assistant, a ChatGPT-based AI assistant that can answer technical questions about developing with Vaadin Flow or Hilla based on the latest available documentation. If you're curious about the concepts behind the assistant, I recommend my earlier blog post.
In this series, we'll deep-dive into the technical side of constructing and deploying an AI chatbot using Java as our backend language. While the internet is awash with tools and projects in Python or JavaScript, I wanted to demonstrate that Java can be used to integrate AI tools just as effectively.
The articles in this series are:
- Calling ChatGPT and OpenAI APIs in Spring Boot with Java, where we explore both simple and streaming responses.
- Using a Pinecone vector database with Spring Boot to identify relevant articles to include in the prompt.
- Prompt engineering and token counting for a ChatGPT bot in Java, which builds upon the previous articles.
- Building a ChatGPT-based AI application using Spring Boot, React, and Hilla that utilizes the services from the preceding articles.
- Finally, Deploying a Spring Boot app as a native GraalVM image with Docker.
Source Code for the Completed Application
Find the completed source code for the application on my GitHub.