# Voice-Agent Mac-Worker Stateless FastAPI-Service auf dem Mac. Macht die schwere Arbeit: Whisper-Transkription und Ollama-Zusammenfassung. Wird vom LXC-Frontend per HTTP angesprochen. ## Setup (Apple Silicon) ```bash cd mac-worker python3.11 -m venv .venv source .venv/bin/activate pip install --upgrade pip pip install -r requirements.txt cp .env.example .env # Bei Bedarf .env anpassen ``` ## Ollama vorbereiten ```bash # Ollama installieren, falls noch nicht geschehen brew install ollama # Modell ziehen ollama pull llama3.1:8b # Ollama netzwerkweit erreichbar machen (LaunchAgent) launchctl setenv OLLAMA_HOST "0.0.0.0:11434" brew services restart ollama ``` ## Whisper-Engine wählen | `WHISPER_ENGINE` | Wann nutzen | |---|---| | `mlx` | Apple Silicon — schnellste Option | | `faster` | Intel-Mac / Linux / CUDA | | `mock` | Testbetrieb ohne echtes Modell | ## Worker starten ```bash uvicorn app.main:app --host 0.0.0.0 --port 8080 ``` Health-Check vom LXC: ```bash curl http://:8080/health ``` ## API-Endpunkte | Methode | Pfad | Zweck | |---|---|---| | GET | `/health` | Status + Ollama-Reachability | | POST | `/api/transcribe` | multipart: `audio`, `language` → Transkript-JSON | | POST | `/api/summarize` | JSON: `transcript`, `title` → Summary-JSON | | POST | `/api/protocol` | JSON: `transcript`, `summary`, `title` → Protokoll-JSON | | POST | `/api/export/docx` | JSON: Protokoll → DOCX-Binary | ## Firewall am Mac ```bash # Eingehende Verbindungen auf Port 8080 erlauben (System-Settings > Network > Firewall) # oder via pf — siehe Apple-Doku. ``` Der Worker hat **keine Authentifizierung** — Betrieb nur im internen Netz.