Skip to content

dcarriel-efor/smolibot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smolibot

Smolibot is a minimalist local AI chatbot powered by lightweight language models.
It can read documents, analyze images with OCR, and interact in multiple modes — all without needing an internet connection.
Your data stays entirely local.

say Hi! to Smolibot and enjoy


✨ Features

  • 🧠 Tiny LLMs: Uses small language models like TinyLLaMA or SmolLm2 for fast, low-resource conversations.
  • 📄 Document Context: Upload a PDF and chat with its content.
  • 🖼️ Image Context (Description + OCR): Describe images with Moondream and Extract text from images using local OCR (EasyOCR).
  • 🎭 Chat Modes: Choose from modes like Friendly, Expert, Playful, or Sarcastic for different conversation styles.
  • 💾 Session History: Recent chats persist across tabs (but reset with each session).
  • 🔐 Local & Private: Runs fully offline in Docker, no cloud or external APIs.

📦 Installation

Prerequisites

  • Docker & Docker Compose
  • Python 3.9+
  • Modern browser (for frontend)
git clone https://github.com/jeanmilpied/smolibot.git  
cd smolibot  
docker-compose up --build

Once running, open your browser to http://localhost:3000


🛠️ Usage

Chat

  • Type your question in the input box.
  • Choose a mode and model from the header.
  • View and switch between recent conversations on the sidebar.

Upload Document

  • Click the upload icon.
  • Only PDF files are supported.
  • Smolibot will use document content as context in future prompts.

Upload Image

  • Switch to image mode.
  • Upload image file.
  • Click "Add image in the chat" to run Image Description and OCR using EasyOCR.

🧰 Tech Stack

  • Frontend: React + TailwindCSS
  • Backend: FastAPI
  • Image description VLM: Moondream
  • OCR: EasyOCR (local)
  • LLM: TinyLLaMA, SmolLm2 via Ollama
  • Containerized: Docker & Docker Compose

🤝 Contributing

Contributions are welcome! Feel free to submit a PR or open an issue.

About

a local chatbot API dockerized for CPU deployment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 68.4%
  • Python 23.4%
  • Dockerfile 6.3%
  • HTML 1.6%
  • CSS 0.3%