{"data":{"slug":"cinnamon-kotaemon","name":"kotaemon","tagline":"An open-source RAG-based tool for chatting with your documents.","github_url":"https://github.com/Cinnamon/kotaemon","owner":"Cinnamon","repo":"kotaemon","owner_avatar_url":"https://avatars.githubusercontent.com/u/3265185?v=4","primary_language":"Python","stars":25701,"forks":2141,"topics":["chatbot","llms","open-source","rag"],"archived":false,"github_pushed_at":"2026-07-14T16:53:59+00:00","maintenance_label":"Steady","stars_delta_30d":138,"url":"https://www.graphcanon.com/tools/cinnamon-kotaemon","markdown_url":"https://www.graphcanon.com/tools/cinnamon-kotaemon.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/cinnamon-kotaemon","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=cinnamon-kotaemon","description":"An open-source RAG-based tool for chatting with your documents.","homepage_url":"https://cinnamon.github.io/kotaemon/","license":"Apache-2.0","open_issues":241,"watchers":129,"ai_summary":"Cinnamon/kotaemon is an open-source Retrieval-Augmented Generation (RAG)-based chatbot application designed to facilitate interaction with documents through a chat interface, using Python as the primary language and supporting Dockerized deployment in both `lite` and `full` versions for different file type support.","readme_excerpt":"## Installation\n\n> If you are not a developer and just want to use the app, please check out our easy-to-follow [User Guide](https://cinnamon.github.io/kotaemon/). Download the `.zip` file from the [latest release](https://github.com/Cinnamon/kotaemon/releases/latest) to get all the newest features and bug fixes.\n\n---\n\n### System requirements\n\n1. [Python](https://www.python.org/downloads/) >= 3.10\n2. [Docker](https://www.docker.com/): optional, if you [install with Docker](#with-docker-recommended)\n3. [Unstructured](https://docs.unstructured.io/open-source/installation/full-installation#full-installation) if you want to process files other than `.pdf`, `.html`, `.mhtml`, and `.xlsx` documents. Installation steps differ depending on your operating system. Please visit the link and follow the specific instructions provided there.\n\n---\n\n### With Docker (recommended)\n\n1. We support both `lite` & `full` version of Docker images. With `full` version, the extra packages of `unstructured` will be installed, which can support additional file types (`.doc`, `.docx`, ...) but the cost is larger docker image size. For most users, the `lite` image should work well in most cases.\n\n   - To use the `full` version.\n\n     ```shell\n     docker run \\\n     -e GRADIO_SERVER_NAME=0.0.0.0 \\\n     -e GRADIO_SERVER_PORT=7860 \\\n     -v ./ktem_app_data:/app/ktem_app_data \\\n     -p 7860:7860 -it --rm \\\n     ghcr.io/cinnamon/kotaemon:main-full\n     ```\n\n   - To use the `full` version with bundled **Ollama** for _local / private RAG_.\n\n     ```shell\n     # change image name to\n     docker run <...> ghcr.io/cinnamon/kotaemon:main-ollama\n     ```\n\n   - To use the `lite` version.\n\n   ```shell\n    # change image name to\n    docker run <...> ghcr.io/cinnamon/kotaemon:main-lite\n   ```\n\n2. We currently support and test two platforms: `linux/amd64` and `linux/arm64` (for newer Mac). You can specify the platform by passing `--platform` in the `docker run` command. For example:\n\n   ```shell\n   # To run docker with platform linux/arm64\n   docker run \\\n   -e GRADIO_SERVER_NAME=0.0.0.0 \\\n   -e GRADIO_SERVER_PORT=7860 \\\n   -v ./ktem_app_data:/app/ktem_app_data \\\n   -p 7860:7860 -it --rm \\\n   --platform linux/arm64 \\\n   ghcr.io/cinnamon/kotaemon:main-lite\n   ```\n\n3. Once everything is set up correctly, you can go to `http://localhost:7860/` to access the WebUI.\n\n4. We use [GHCR](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry) to store docker images, all images can be found [here.](https://github.com/Cinnamon/kotaemon/pkgs/container/kotaemon)\n\n---\n\n### Without Docker\n\n1. Clone the repository:\n\n   ```shell\n   git clone https://github.com/Cinnamon/kotaemon\n   cd kotaemon\n   ```\n\n2. Setup the environment:\n\n- **Option 1: Using [uv](https://docs.astral.sh/uv/getting-started/installation/) (recommended)**\n\n  ```shell\n  uv sync --python 3.10\n  source .venv/bin/activate\n  ```\n\n- **Option 2: Using conda**\n\n  ```shell\n  conda create -n kotaemon python=3.10\n  conda activate kotaemon\n\n  pip install -e \"libs/kotaemon[all]\"\n  pip install -e \"libs/ktem\"\n  ```\n\n3. Create a `.env` file in the root of this project. Use `.env.example` as a template.\n\n   The `.env` file is there to serve use cases where users want to pre-config the models before starting up the app (e.g. deploy the app on HF hub). The file will only be used to populate the db once upon the first run, it will no longer be used in consequent runs.\n\n4. (Optional) To enable in-browser `PDF_JS` viewer, download [PDF_JS_DIST](https://github.com/mozilla/pdf.js/releases/download/v4.0.379/pdfjs-4.0.379-dist.zip) then extract it to `libs/ktem/ktem/assets/prebuilt`.\n\n   <img src=\"https://raw.githubusercontent.com/Cinnamon/kotaemon/main/docs/images/pdf-viewer-setup.png\" alt=\"pdf-setup\" width=\"300\">\n\n5. Start the web server:\n\n   ```shell\n   python app.py\n   ```\n\n   - The app will be automatically launched in your browser.\n   - Default username and password are both `admin`. Y","github_created_at":"2024-03-25T08:16:42+00:00","created_at":"2026-07-07T17:36:23.503671+00:00","updated_at":"2026-08-18T06:01:44.319667+00:00","categories":[{"slug":"data-retrieval","name":"Data & Retrieval","url":"https://www.graphcanon.com/categories/data-retrieval","markdown_url":"https://www.graphcanon.com/categories/data-retrieval.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/data-retrieval"},{"slug":"developer-tools","name":"Developer Tools","url":"https://www.graphcanon.com/categories/developer-tools","markdown_url":"https://www.graphcanon.com/categories/developer-tools.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/developer-tools"}],"tags":[{"slug":"chatbot","name":"chatbot"},{"slug":"llms","name":"llms"},{"slug":"open-source","name":"open-source"},{"slug":"rag","name":"rag"}],"trust":{"provenance":{"is_fork":false,"github_id":777111718,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-08-18T06:01:43.497Z","maintenance":{"label":"Steady","score":60,"methodology":"github_public_v1","releases_90d":1,"days_since_push":34,"last_release_at":"2026-05-31T04:45:39Z","stars_delta_30d":138,"open_issues_delta_30d":4},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-11T11:07:22.270Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-08-18T06:01:43.951Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-08-18T06:01:43.951Z","managed_saas":false},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-08-18T06:01:43.951Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-08-18T06:01:43.951Z"},"license_spdx":{"value":"Apache-2.0","source":"github.license","observed_at":"2026-08-18T06:01:43.951Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":null,"constraints":null,"when_to_use":["When you need to customize the file types you can process beyond PDFs, HTML, MHTML, and XLSX by opting for the `full` Docker version which includes additional packages from 'unstructured'.","For scenarios requiring Dockerized deployment and support for two computing platforms (`linux/amd64`, `linux/arm64`), potentially leveraging Ollama for local/private RAG configurations."],"when_not_to_use":["If you only need to process a limited set of file types (PDF, HTML, MHTML, XLSX) and prefer the smaller Docker image size, as the `lite` version lacks additional package dependencies.","In environments with strict constraints on external dependencies where installing Docker or Python packages is not feasible."],"source":"enrich:decision_facts","observed_at":"2026-07-11T13:39:41.894Z"},"constraint_facets":null,"decision_summary":[{"label":"Adopt for","value":"Cinnamon's kotaemon is an open-source Retrieval-Augmented Generation-based chat tool that facilitates document interaction through a user-friendly chat interface."}]}}