fix(transcription): [2f388f42] finalize and fix AI insights feature

This commit resolves all outstanding issues with the AI Insights feature.

- Corrects the transcript formatting logic in  to properly handle the database JSON structure, ensuring the AI receives the correct context.
- Fixes the Gemini API client by using the correct model name ('gemini-2.0-flash') and the proper client initialization.
- Updates  to securely pass the API key as an environment variable to the container.
- Cleans up the codebase by removing temporary debugging endpoints.
- Adds  script for programmatic updates.
- Updates documentation with troubleshooting insights from the implementation process.
This commit is contained in:
2026-01-26 08:53:13 +00:00
parent 771b06c1bc
commit 9019a801ed
39 changed files with 2254 additions and 80 deletions

View File

@@ -1,53 +1,17 @@
#!/bin/bash
#!/bin/sh
# Definiere den Namen für das Docker-Image und den Container
IMAGE_NAME="gemini-dev-env"
CONTAINER_NAME="gemini-session"
# Sicherstellen, dass der Config-Ordner existiert
# Sicherstellen, dass der Config-Ordner existiert, damit Docker ihn als Ordner und nicht als Datei mountet
mkdir -p .gemini-config
# Prüfen, ob das Docker-Image existiert
if ! docker image inspect "$IMAGE_NAME" &> /dev/null;
then
echo "Docker-Image '$IMAGE_NAME' nicht gefunden. Baue es jetzt aus 'gemini.Dockerfile'..."
docker build -t "$IMAGE_NAME" -f gemini.Dockerfile .
if [ $? -ne 0 ]; then
echo "FEHLER: Docker-Image konnte nicht gebaut werden."
exit 1
fi
fi
echo "Räume alte '$CONTAINER_NAME' auf, falls vorhanden..."
docker rm -f "$CONTAINER_NAME" > /dev/null 2>&1
echo "Räume alte 'gemini-session' auf, falls vorhanden..."
sudo docker rm -f gemini-session > /dev/null 2>&1
echo "Starte eine neue, interaktive Gemini-Session..."
# Führe dev_session.py im Hintergrund aus und fange die Ausgabe ab
# Der Kontext für die Gemini CLI wird von dev_session.py in speziellen Markierungen ausgegeben
DEV_SESSION_OUTPUT=$(docker run -i --rm \
# --env-file .env lädt deine Variablen automatisch
# -v .../.gemini-config:/root/.config sorgt dafür, dass deine Settings (Modellwahl) gespeichert bleiben
sudo docker run -it --rm \
--env-file .env \
-v "$(pwd):/app" \
-v "$(pwd)/.gemini-config:/root/.config" \
-w /app \
--name "${CONTAINER_NAME}-temp" \
"$IMAGE_NAME" \
python3 dev_session.py 2>&1)
# Extrahiere den CLI-Kontext aus der Ausgabe
CLI_CONTEXT=$(echo "$DEV_SESSION_OUTPUT" | sed -n '/---GEMINI_CLI_CONTEXT_START---/,/---GEMINI_CLI_CONTEXT_END---/{//!p}')
# Gib die Ausgaben von dev_session.py (außer dem Kontext) vor dem Start der CLI aus
echo "$DEV_SESSION_OUTPUT" | sed '/---GEMINI_CLI_CONTEXT_START---/,/---GEMINI_CLI_CONTEXT_END---/d'
# Starte die Gemini CLI mit dem extrahierten Kontext
# Die --initial-prompt Option sorgt dafür, dass der Kontext als erste Eingabe dient
docker run -it --rm \
-v "$(pwd):/app" \
-v "$(pwd)/.gemini-config:/root/.config" \
-w /app \
--name "$CONTAINER_NAME" \
"$IMAGE_NAME" \
gemini --initial-prompt "$CLI_CONTEXT"
# Nach Beendigung der Session (z.B. durch Strg+C) wird aufgeräumt
echo "Session beendet."
--name gemini-session \
gemini-dev-env