> ## Documentation Index
> Fetch the complete documentation index at: https://docs.moorcheh.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Moorcheh Edge

> On-device vector search with moorcheh-edge and Docker.

## What is Moorcheh Edge?

Moorcheh Edge runs **locally on your machine** for fast vector upload and similarity search. The client sends float embedding vectors; the server binarizes them and searches on-device without cloud calls.

| | |
| - | - |
| **PyPI package** | `moorcheh-edge` |
| **CLI** | `moorcheh-edge` |
| **Python import** | `from moorcheh_edge import MoorchehEdge` |
| **Server image** | `moorcheh/moorcheh-edge:latest` (Docker Hub) |
| **Default API** | `http://localhost:8080` |
| **Data on disk** | `~/.moorcheh-edge/data` |

<Note>
  Edge has **no API keys**. Start the server with `moorcheh-edge up`, then call the API on localhost.
</Note>

## Store modes

One **flat store** per container - no namespaces.

| Mode | Who embeds | Dimension | Set on |
| - | - | - | - |
| **text** | Python client (BGE-small-en-v1.5) | **384** | First upload |
| **vector** | Your app (precomputed) | **128–1536** (allowlist) | First upload |

You cannot mix text and vector modes in the same store. Use `moorcheh-edge clear-store` to reset.

## What you can do

* Upload text documents (client embeds locally) or precomputed vectors
* Search with a **text query** (CLI/SDK embed locally) or a **float query vector**
* **Answer questions (RAG)** - search + local LLM via Ollama (`qwen2.5:0.5b-instruct`); stream tokens with **`POST /answer/stream`**
* **Voice on edge hardware (Linux)** - STT/TTS and **`moorcheh-edge voice serve`** for kiosk mic/speaker (see [Voice CLI](/cli/voice/introduction))
* Delete items by id or wipe the entire store
* **Export catalog text** - `GET /export` returns all chunk text (no vectors) for sync to another app
* Check store health and quota via `/health`

## Prerequisites

* **Python 3.10+**
* **Docker** (Desktop or Engine)

No Ollama required for **search**. For **`answer` / RAG**, run `moorcheh-edge up --with-llm` on Linux - it installs Ollama and pulls **`qwen2.5:0.5b-instruct`** (\~400 MB). Text embedding uses FastEmbed (**BAAI/bge-small-en-v1.5**, 384 dimensions) bundled with the Python package.

When search returns no matching passages, `/answer` and `/answer/stream` return a fixed *I don't have enough information to answer that question.* without calling the LLM.

## Install and run

```bash theme={null}
pip install moorcheh-edge
moorcheh-edge up
moorcheh-edge status
```

See [Quickstart](/quickstart) for upload, search, and answer.

## Documentation

| Section | Use when |
| - | - |
| [Quickstart](/quickstart) | First run end-to-end |
| [Arduino UNO Q](/guides/arduino-uno-q) | Run on Arduino UNO Q |
| [Limits](/limits) | Store cap, dimensions, and modes |
| [API reference](/api-references/health) | HTTP integration |
| [Python client](/python-client/introduction) | Apps with `MoorchehEdge` |
| [CLI](/cli/introduction) | Local ops with `moorcheh-edge` |

## Data persistence

Items are stored under:

```
~/.moorcheh-edge/data/
  moorcheh_edge_store.json
```

`moorcheh-edge down` stops the container but **does not delete** this folder.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.