Enhancing ChatGPT with Prompt Engineering and Token Counting in Java

This article is part three of the Building an AI chatbot in Java series, where we're building a custom AI chatbot application using Hilla, Spring Boot, React, OpenAI (ChatGPT), and Pinecone. The chatbot is designed to answer Vaadin Flow and Hilla development questions using up-to-date documentation ...

Integrating Pinecone Vector Database into a Spring Boot Application

Dive into the process of integrating the Pinecone Vector database with a Spring Boot application using Java in this second installment of the Building an AI chatbot in Java series. Prerequisites The article assumes you have a Spring Boot application. The example project is a Spring Boot application ...

Calling ChatGPT and OpenAI APIs in Spring Boot with Java

This article will guide you on integrating OpenAI APIs, such as ChatGPT, in your Spring Boot application. We will cover moderation, embedding, and chat completion requests. It is a part of our Building an AI chatbot in Java series. Prerequisites This tutorial assumes you already have a Spring Boot ...

Building and Deploying an AI Chatbot with Java: A Comprehensive Guide

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 ...
Resolving blocking dialogs with Vaadin

Tackling blocking dialogs in web applications with Vaadin

A blocking dialog is a dialog that blocks the code execution until an answer is obtained from the user. They can be a major hindrance to a seamless user experience in web applications. Imagine being engrossed in a task, only to be interrupted by a modal dialog that demands attention and halts your ...

Push Notifications: A real-world example with electricity prices

Web Push Notifications, also known as the Web Push API, are a service provided by browser vendors that enable web apps to display operating system notifications to end users, even when the browser window or installed app is closed. While this feature has been available for desktop browsers and ...

Adding speech recognition to Vaadin apps

Our previous blog post added wake word detection for a Vaadin application using Picovoice. That is a robust in-browser approach to creating always-listening apps. You might want to use that for full speech recognition, but the draft standard web speech API also provides a way to voice-enable ...
Always-Listening Voice Commands for Vaadin web applications

Always-Listening Voice Commands for Vaadin web applications

Make your Vaadin web application more user-friendly and accessible with always-listening voice commands! With this quick 15-minute tutorial, you can integrate voice commands like "Alexa," "Hey Siri," and "Computer" into your application using the Picovoice Porcupine Wake Word Engine. Create a ...
Building a ChatGPT assistant for your documentation

How to build a ChatGPT assistant for your documentation

ChatGPT can be a helpful tool for development and learning. But only if it knows about the technology you're using. The problem with ChatGPT and many other Large Language Models (LLMs) is that they are only trained on data up to a certain date. Tools like Bing, Bard, and ChatGPT plugins allow ...