Offline Chatbot
Description
A desktop application that provides a clean interface for interacting with Ollama's AI models locally. Chat with AI models without needing internet connectivity after initial setup. Check out my blog post here for more information and a quick setup guide.
Features
- Fully offline AI chat capabilities
- Multiple AI model support through Ollama
- Including DeepSeek-R1 and Llama3.3
- Support for basic text files, CSVs, and JSON
- Support for images compatible with select models
- LLaVa and Llama 3.2 for example
- Clean, modern interface with dark/light mode and real-time responses
Technologies Used
React and TypeScript are used for building the interface, and I use a NodeJS and Express backend to communicate between the frontend and backend. Ollama models are also required to commincate with the chatbot, which can be downloaded here.
Development Process & Motivation
I learned about Ollama and was amazed you could run AI models locally on your own hardware, before this I only knew of ChatGPT really. By running models locally you are able to interact with AI offline and without subscription costs. I also imagined a hypothetical scenario where you are stranded on an island, and an offline AI would be able to give you advice, and even analyze the surroundings with vision capabilities.
Challenges & Solutions
The biggest challenge for me was implementing the vision capabilities with models like LLaVa, since the image data needs to be base64-encoded.
Future Plans & Improvements
- Text-to-speech and speech-to-text are some helpful additions I could make, however the best speech-to-text by Google relies on an internet access which I want to avoid to make this truly offline.
- Multiple conversations with persistent data is another feature I'd like to add in the future.
- I plan to continue developing this with an emphasis on offline use, privacy, and affordability.
Live Demo
Contact Me
Let's bring your web project to life
Thank you for taking the time to visit my website! If you're looking for a skilled and innovative developer to work with, don't hesitate to reach out. Whether you have a job opportunity or a freelance project in mind, let's connect and see how we can work together.
You can send me a message below or email me at mrmendoza171@gmail.com