Files
jetson-ai-ollama/README.md
Tarik Moussa 6c84f831b0
Some checks failed
gates / quality (push) Has been cancelled
docs: archive — superseded by ansible-eulernest
This planning repo was never built; the Jetson AI/Ollama host was implemented in
the ansible-eulernest sibling repo, which now holds both code and docs (the
single source of truth). The Projekt-Vertrag and ADR-0002 rationale have been
ported there. Prepend a deprecation/archive banner pointing readers to it; the
original planning content is kept below as historical record.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-13 16:10:04 +02:00

68 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ⚠️ ARCHIVIERT — abgelöst durch `ansible-eulernest`
> **Dieses Repo war die _Planungsphase_ für den Jetson-AI/Ollama-Host und wurde nie
> gebaut.** Die Implementierung ist direkt im Schwester-Repo **`ansible-eulernest`**
> entstanden — dort liegen jetzt Code **und** Doku (Single Source of Truth):
>
> - **Implementierung:** `group_vars/jetson/vars.yml`,
> `roles/{jetson_bootstrap,ollama,ollama_exporter}`, `jetson.yml`
> - **Doku:** README §„Jetson AI / Ollama" + `docs/jetson-quickstart.md`
> - **Repo:** <https://git.eulernest.eu/user2595/ansible-eulernest>
>
> Der „Projekt-Vertrag" (Profile, Pfade, Daemon-Env, `num_ctx`) und die
> Designentscheidung aus [`docs/adr/0002-ollama-native.md`](docs/adr/0002-ollama-native.md)
> wurden dorthin portiert. Die reale Box läuft inzwischen auf JetPack 7.2 mit einem
> vierten Profil (`coder`, für den ci-ai-Bot) — Details nur noch in `ansible-eulernest`.
>
> Dieses Repo ist **veraltet, read-only archiviert** und wird nicht mehr gepflegt.
> Der Inhalt unten ist der historische Planungsstand (agent-swarm-Bootstrap, Stand 2026-06).
---
# Jetson AI / Ollama (MLOps)
Lokal laufendes **Single-User-AI-System** auf einem **Jetson Orin Nano Super (8 GB)**:
Ollama-Daemon serviert drei Modell-Profile (OpenAI-kompatibel), ein schlanker
Exporter-Sidecar exponiert `/metrics`. Modellwechsel passiert **nativ über den
Modellnamen** — kein eigener Swapper, kein Gateway (siehe `docs/adr/0002-ollama-native.md`).
- **Profile:** `qwen-light` (Daily-Driver) · `gemma` (Creative/Chat, multimodal) ·
`qwen-heavy` (harte Reasoning-Fälle). `OLLAMA_MAX_LOADED_MODELS=1` hält genau ein
Modell resident → drei Profile sind quasi gratis.
- **Optimierung:** `q8_0`-KV-Cache + Flash Attention, `num_ctx` je Profil explizit.
- **Daten:** DVC ist Modell-Source-of-Truth; Ollamas Blob-Store nur Laufzeit-Cache.
> **Scope:** Dieses Repo deckt **nur den Jetson** ab. nginx (TLS + OAuth) und
> Prometheus/Grafana laufen off-box. Ollama hat keine eigene Auth → nur ans LAN
> binden, Firewall auf den Proxy. Voller Vertrag: [`CONVENTIONS.md`](CONVENTIONS.md).
---
## Arbeitsmodell (agent-swarm)
Dieses Repo wurde aus dem **agent-swarm-Template** gebootstrapt: ein Leader/Worker-
Agentensystem, dessen Stand komplett auf Disk lebt — kalt lesbar ohne Vorkontext.
Methodik: [`docs/methodology.md`](docs/methodology.md) · Herkunft:
[`docs/about-template.md`](docs/about-template.md).
| Wo | Datei |
|---|---|
| Stand & nächster Schritt | [`STATE.md`](STATE.md) |
| Plan / Board / Ready-Set (DAG) | [`ROADMAP.md`](ROADMAP.md) |
| Gemeinsamer Vertrag | [`CONVENTIONS.md`](CONVENTIONS.md) |
| Kalt-Review-Einstieg | [`REVIEW.md`](REVIEW.md) |
| Dispatch-fertige Worker-Prompts | [`session-prompts/`](session-prompts/) |
## Sofort bauen
Die Planung ist fertig (W1W6 im Board). So baust du es:
1. **W1 zuerst** — frische Session öffnen, Modell **Sonnet**, Inhalt von
[`session-prompts/W1.md`](session-prompts/W1.md) einfügen → legt das Grundgerüst an.
2. **Review-Gate** (Opus, kalt) → mergen → W1 im Board auf `✅`.
3. **W2W5 parallel** — je eigene Session (`session-prompts/W2.md``W5.md`),
disjunkte Datei-Ownership, laufen unabhängig.
4. **W6 zuletzt** — Docs, integriert die Realität der anderen Pakete.
Jeder Worker-Prompt ist self-contained (Modell, Branch, Dateien, Akzeptanzkriterien,
Abschluss-Gates). Die Gates (`scripts/gate-*.sh`) sind aktiv und prüfen Ownership,
Hygiene und Doku-Drift bei jedem Schritt.