Documentation

Dependencies

Personal edition needs Ollama for chat and embeddings. Docling-serve is optional until you enable PDF/Office import. Vector search uses sqlite-vec inside A1KnowHow — no separate vector database.

Overview

DependencyRequired?Role
OllamaYes (with default config)Local LLM + embeddings
Docling-serveNo by defaultExtract text from PDF, Word, etc.
sqlite-vecBuilt-inVectors in pb_data/data.db

Shipped config.yaml sets importer.provider: none and chunking.provider: local, so notes and markdown work without Docling. Set importer.provider: docling and importer.url when you add Docling.

Ollama

Installation

macOS

brew install ollama

Linux

curl -fsSL https://ollama.com/install.sh | sh

Windows

Download from https://ollama.com/download

Starting Ollama

ollama serve

Required models (Personal defaults)

Pull the models referenced in the install kit config.yaml:

ollama pull lfm2.5:latest
ollama pull embeddinggemma-2:270m
ModelRole
lfm2.5:latestChat, agents, and chat title generation
embeddinggemma-2:270mEmbeddings (≈768 dims; matches vector.dimensions)

Decision models (optional)

Workflow decision steps use Ollama’s /v1/systemone API and need Ollama 0.35 or later. Pull a Tev1 model when you use that step kind:

ollama pull tev1:0.8b
# or
ollama pull tev1:4b

See Tev1 on Ollama and Workflow authoring. Tev1 runs with about 2,000 tokens of context and does not truncate long input — pass a short excerpt, or summarise first in the workflow.

LLM Models

You can change models in `config.yaml`. Prefer chat models that support tools. By default the same chat model generates titles.

Configuration

  • Default port: 11434
  • URL: llm.url: "http://localhost:11434" in config.yaml

Verification

curl http://localhost:11434/api/tags
ollama list

You should see lfm2.5 and embeddinggemma.

Docling-serve (optional)

Needed only when you set importer.provider: docling for PDF/Office uploads. If Docling is configured but unreachable, serve fails at startup.

Installation

Using Docker

docker run -p 5001:5001 -e DOCLING_SERVE_ENABLE_UI=1 quay.io/docling-project/docling-serve

Manual installation

  1. Install Python 3.12+
  2. pip install "docling-serve[ui]"
  3. docling-serve --port 5001 (set importer.url to match)

See Docling-serve.

Configuration

importer:
  provider: docling
  url: "http://localhost:5001"

Docker Compose sample uses port 8000 — then use http://docling:8000 (from another container) or http://localhost:8000 from the host.

Verification

curl http://localhost:5001/

Vector search (sqlite-vec)

No install step. Keep:

vector:
  type: sqlite-vec
  dimensions: 768

dimensions must match the embedding model.

Service URLs summary

ServiceTypical URL
Ollamahttp://localhost:11434
Docling-servehttp://localhost:5001 (optional)
sqlite-vec(none — in pb_data/data.db)

Next steps

  1. Finish Getting Started (./setup.sh then ./run.sh)
  2. Tune Configuration
  3. Optionally run Ollama/Docling via Docker

Troubleshooting

Docling-serve

  • Python 3.12+ recommended
  • importer.url must match the listen port
  • Only start Docling before ./run.sh if importer.provider is docling

Ollama

  • ollama list to confirm models
  • Re-pull if needed: ollama pull <model-name>
  • Check free disk space for model files