Update 2026-06-08 12:46:20

This commit is contained in:
kassam 2026-06-08 12:46:24 +04:00
parent c2ca8eea72
commit e3aa48660d
2 changed files with 11 additions and 2 deletions

View File

@ -42,6 +42,15 @@ The `websockets` package is needed because the Gemini Live TTS used by
Typed Replay opens a WebSocket to Google. Everything else (records list,
records delete-all, login, logs) works without it.
> **Gemini API key — required, none ships with the repo.** The `api_key`
> in `config/core_config.json` (`gemini_defaults`) is intentionally empty
> (`""`). Typed Replay / Gemini TTS won't work until you supply one:
> - paste it in the dashboard → **Voice & Audio → Gemini API Key** (hot-swap, no restart), **or**
> - `export SANAD_GEMINI_API_KEY=AIza...` before `python3 main.py`, **or**
> - set `gemini_defaults.api_key` in `config/core_config.json`.
>
> Get a key at <https://aistudio.google.com/apikey>.
> The other heavy deps (`pyaudio`, `transformers`, `torch`) are listed in
> `requirements.txt` but are **not required** for the lite dashboard.
> They were leftovers from the parent Sanad project and may still be
@ -144,7 +153,7 @@ speakers. Machine A stays silent.
|---|---|---|---|
| `SANAD_DASHBOARD_HOST` | IP or hostname | wlan0's IP | Override the bind address. Use `127.0.0.1` for localhost-only. |
| `SANAD_DASHBOARD_INTERFACE` | iface name | `wlan0` | Pick which interface's IP to auto-bind to. |
| `SANAD_GEMINI_API_KEY` | string | reads from `data/motions/config.json` | Override the Gemini API key. |
| `SANAD_GEMINI_API_KEY` | string | `""` (empty) | Gemini API key. No key ships in the repo — set this, paste one in the dashboard (**Voice & Audio → Gemini API Key**), or fill `gemini_defaults.api_key` in `config/core_config.json`. |
## What was stripped vs Sanad (full)

View File

@ -34,7 +34,7 @@
"gemini_defaults": {
"_comment": "Baseline Gemini API config — SINGLE SOURCE OF TRUTH. All voice modules read from here.",
"api_key": "AIzaSyDt9Xi83MDZuuPpfwfHyMD92X7ZKdGkqf8",
"api_key": "",
"model_live": "gemini-2.5-flash-native-audio-preview-12-2025",
"model_ws_uri": "wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1alpha.GenerativeService.BidiGenerateContent",
"voice_name": "Charon",