A personal notes base on a CPU-only machine#
You keep notes in Markdown — a journal, meeting notes, how-tos you wrote for yourself. You give them a knowledge base of their own on a small machine with no GPU (a mini PC, a home server, a Windows PC under WSL), add notes from your laptop and from your phone, and search them by what they mean, not only by the words you remember.
The base has no drive: it is filled only by what you add to it, and keeps it on its own machine. That is the simplest setup for notes that live on your devices. If your notes already sit in a folder on the machine (an Obsidian vault, a Git checkout), make that folder a drive instead, as in Your company handbook, and the base follows every change.
What you need:
- A machine of the workspace with no GPU, or whose GPU you keep for other
work, with a data location and, free, 5 CPU cores and about 6 GB of
memory (Footprint). Below it is
mini-01. - Your notes as Markdown (
.md), text or PDF files, here in a folderjournal/on your laptop. astrasigned in on the laptop (Install the CLI), the app on your phone (The app), and the editor role.
1. Serve the two models on the machine's CPUs#
The CPU defaults: BGE-M3 for embeddings (multilingual, 1024
dimensions) and BGE Reranker v2 M3, both 438 MB at Q4_K_M. Each
replica reserves 2 CPU cores and uses the machine's idle cores beyond them.
- Eos → Models → Library, Category: embedding, open
BGE-M3, choose
Q4_K_Mand press Deploy. Name:bge-m3. Runs on: CPUs only. Clear Scale to zero when idle. Press Deploy. - Category: Rerankers, BGE Reranker v2 M3,
Q4_K_M, deployed the same way asbge-reranker.
$ for c in bge-m3:567m bge-reranker-v2-m3:568m; do
curl -fsS -X POST "$ASTRALYX_API/eos/catalog-models" -H "Authorization: Bearer $ASTRALYX_TOKEN" \
-H 'content-type: application/json' -d "{\"catalog\": \"$c\"}" > /dev/null
done
$ curl -fsS -X POST "$ASTRALYX_API/eos/deployments" -H "Authorization: Bearer $ASTRALYX_TOKEN" -H 'content-type: application/json' \
-d '{"metadata": {"name": "bge-m3"}, "spec": {"model": "bge-m3-567m-q4-k-m", "accelerator": "cpu", "replicas": {"min": 1, "max": 1}}}' > /dev/null
$ curl -fsS -X POST "$ASTRALYX_API/eos/deployments" -H "Authorization: Bearer $ASTRALYX_TOKEN" -H 'content-type: application/json' \
-d '{"metadata": {"name": "bge-reranker"}, "spec": {"model": "bge-reranker-v2-m3-568m-q4-k-m", "accelerator": "cpu", "replicas": {"min": 1, "max": 1}}}' > /dev/null
On a machine with fewer than 5 free cores, give each deployment 1 core
(CPU cores per replica in the deployment's form, cpu_cores in its
spec): they still use every idle core.
2. Create a base with no drive#
astra metis create needs a drive; a base filled only by what you add is
made in the console or the API.
- Metis → Knowledge bases → New knowledge base. Keep Documents.
- Name:
notes. Leave Drives it reads empty. - Embedding model:
bge-m3. Reranker:bge-reranker. - To keep it on this machine, open Advanced and write
mini-01in Only on these machines. - Press Make it.
$ curl -fsS -X POST "$ASTRALYX_API/metis/knowledge-bases" -H "Authorization: Bearer $ASTRALYX_TOKEN" -H 'content-type: application/json' \
-d '{"metadata": {"name": "notes"},
"spec": {"sources": [],
"embedding": {"deployment": "bge-m3"},
"reranker": {"deployment": "bge-reranker"},
"placement": {"machines": ["mini-01"]}}}' > /dev/null
The base starts on mini-01 and becomes Ready with nothing in it:
0 documents, 0 chunks. A search answers nothing is indexed until you
add something.
3. Add your notes from the laptop#
$ astra metis add notes ./journal
journal/2026-10-01.md: 100% of 2 KB
./journal/2026-10-01.md: added as notes/journal/2026-10-01.md
journal/2026-10-05.md: 100% of 3 KB
./journal/2026-10-05.md: added as notes/journal/2026-10-05.md
indexing: 2 of 2 read
A folder keeps its name and subfolders (notes/journal/…); hidden files
and kinds a base does not read are skipped and named. astra waits until
the base has read them — a few seconds for notes. A file of the same path
is refused (FILE_EXISTS): add it again with --replace after you change
it.
$ astra metis files notes
journal/2026-10-01.md 2 KB indexed
journal/2026-10-05.md 3 KB indexed
2 files, 5 KB (cited as metis-notes)
4. Add notes from your phone#
- In the app, open the base: More, then Metis' Knowledge
bases, then
notes. - On Documents, under Added to this base, tap Choose files and pick Markdown, text or PDF files. An optional folder goes in into folder.
- Each file shows its progress, then indexed with its chunks.
In the app's Assistant, attach a file to a message (Attach → A
PDF or a text file). On its chip, tap the bookmark — Keep in a
knowledge base — choose notes and tap Keep in notes. The file
is added to the base and still goes with your message.
On an answer worth keeping, tap Save to a knowledge base, choose
notes, keep This message or choose A summary of the
conversation, written by the model (then Write the summary),
check the title and tap Save to notes. The note is
notes/saved/<date>-<title>.md, with its date and where it came from
(Save to a base from a conversation).
Whatever the way, the file goes from your phone to the base's machine, where it is written; it is not kept anywhere on the way.
5. Search your notes#
Metis → Search, tick notes, ask what did I decide about the
backup disk? Results cite notes/journal/2026-10-05.md with the
headings above the passage and its line.
Each result's citation has source metis-notes (the base's own drive)
and document notes/<path>. Searching by meaning finds a note that says
the external drive when you asked about the backup disk; searching by
words finds an exact name or number. A search uses both
(How search works).
Footprint and cost#
| What | Default | Notes |
|---|---|---|
| BGE-M3 | 2 CPU cores reserved, 438 MB of weights | Uses idle cores beyond its 2 |
| BGE Reranker v2 M3 | 2 CPU cores reserved, 438 MB of weights | Optional: without it, results come in the fused order |
| The base | 1 CPU core, 2 GiB of memory | About 5 KB of memory per chunk; a year of daily notes is far below what 2 GiB holds |
| Your notes | On the base's drive metis-notes, on mini-01's data location |
Deleted with the base |
Everything runs on the CPUs: no GPU is needed for indexing or searching. Indexing many files at once is the slowest part on a small machine; adding a few notes is quick. The cores and memory are metered like any work of the workspace; Metis adds no price of its own.
Your notes live with the base
Notes you add are kept on the base's own drive, not on a drive of yours. Deleting the base deletes them. Keep your originals on your laptop, or make a folder of the machine a drive and let the base read it (Delete a knowledge base).
Clean up#
astra metis delete notes (or Delete on its page) deletes the base,
its index and every note added to it. Delete the two deployments if
nothing else uses them.