
AI Chat Assistant
A locally hosted AI chat application built with Quarkus, Ollama, and LangChain4j, providing real-time interaction with local language models.
Project Overview
AI Chat Assistant is a locally hosted web application that allows users to interact with Large Language Models running directly on their own machine.
The application is built with Quarkus, Ollama, and LangChain4j, combining a Java-based backend with a modern web interface for real-time AI conversations. By using Ollama as the local model-serving platform, the application keeps AI processing on the user’s machine rather than relying on a remote AI service.

Technical Challenges
One of the main challenges was creating responsive communication between the browser-based chat interface and a locally hosted language model.
The application uses WebSockets to support real-time communication, allowing messages and AI responses to be exchanged without repeatedly establishing standard HTTP requests. REST API endpoints are also provided as a fallback for programmatic interaction with the application.
Another important part of the project was integrating a local LLM workflow. The application connects to Ollama, which runs the selected language model locally, while LangChain4j provides the integration layer for working with the AI model from the Java backend.
The application also manages individual chat sessions, allowing users to start new conversations and maintain separate interactions.
Project Gallery

Key Highlights
The project focuses on combining local AI inference with a responsive Java backend and web-based chat experience:
- Local AI processing through Ollama
- LangChain4j integration for interacting with language models
- Quarkus-based Java backend
- Real-time communication using WebSockets
- REST APIs available as a fallback
- Chat session management
- Responsive web interface with typing animations
- Tailwind CSS-based UI
- Configurable Ollama server URL and model selection
AI Chat AssistantA locally hosted AI chat application focused on real-time interaction with language models while keeping processing on the user’s machine.

The project demonstrates how a Java and Quarkus backend can be integrated with locally hosted Large Language Models to build a practical AI application without depending on a remote model-hosting service. The application currently uses Java 21, Maven, Ollama, and a locally available language model such as Llama 2.