chat-ollama  by sugarforever

Open-source chatbot for LLM-based conversations

created 1 year ago
3,198 stars

Top 15.4% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

ChatOllama is an open-source chatbot application designed for users who want to interact with various Large Language Models (LLMs) and manage knowledge bases. It offers a rich chat interface supporting text and image inputs, and aims to simplify LLM integration and data management for both developers and end-users.

How It Works

ChatOllama acts as a unified interface for multiple LLM providers, including OpenAI, Anthropic, Gemini, and locally served models via Ollama. It supports two primary interaction modes: free chat with LLMs and knowledge base-augmented chat. For knowledge base functionality, it integrates with vector databases like Chroma and Milvus, allowing users to upload documents and query them using LLMs. The application is built with Nuxt 3 and utilizes Prisma for database management.

Quick Start & Requirements

  • Installation: docker compose up for Docker deployment, or pnpm install and pnpm dev for local development.
  • Prerequisites: Ollama server running (default http://localhost:11434), and a vector database (Chroma default, Milvus supported). Chroma can be run via Docker: docker pull chromadb/chroma and docker run -d -p 8000:8000 chromadb/chroma.
  • Knowledge Base Embedding: Requires an embedding model, recommended: nomic-embed-text (via Ollama CLI or Docker) or OpenAI embedding models (requires API key).
  • Resources: Docker setup is recommended for ease of use. Local development requires Node.js and PNPM.
  • Docs: https://docs.trychroma.com/getting-started

Highlighted Details

  • Supports a wide array of LLM providers including OpenAI, Anthropic, Gemini, Groq, and Ollama.
  • Features knowledge base management with support for Chroma and Milvus vector databases.
  • Offers a rich chat interface with text and image input capabilities.
  • Includes management for LLM API keys and Ollama models.

Maintenance & Community

  • Active development is indicated, with a note that features, interfaces, and schemas may change.
  • Community support is available via Discord, with channels for general discussion, technical discussions, and customer support.

Licensing & Compatibility

  • The README does not explicitly state a license.

Limitations & Caveats

  • The project is under active development, implying potential for breaking changes in features, interfaces, and database schemas. Users are advised to run pnpm install and pnpm prisma-migrate after every git pull.
Health Check
Last commit

1 day ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
80 stars in the last 90 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems).

LangBot by langbot-app

0.9%
13k
IM bot platform for the LLM era
created 2 years ago
updated 6 days ago
Feedback? Help us improve.