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:
60
start-gemini-dev.sh
Normal file
60
start-gemini-dev.sh
Normal file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Definiere den Namen für das Docker-Image und den Container
|
||||
IMAGE_NAME="gemini-dev-env"
|
||||
CONTAINER_NAME="gemini-dev-session"
|
||||
|
||||
# Sicherstellen, dass der Config-Ordner existiert
|
||||
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 '$CONTAIN_NAME' und temporäre Container auf, falls vorhanden..."
|
||||
docker rm -f "$CONTAINER_NAME" > /dev/null 2>&1
|
||||
docker rm -f "${CONTAINER_NAME}-temp" > /dev/null 2>&1
|
||||
|
||||
echo "Starte eine neue, interaktive Gemini-Session..."
|
||||
|
||||
# Erstelle eine temporäre Datei, um die Ausgabe der dev_session zu speichern
|
||||
TEMP_OUTPUT_FILE=$(mktemp)
|
||||
|
||||
# Führe dev_session.py interaktiv aus (-it). Die Ausgabe wird via `tee`
|
||||
# gleichzeitig im Terminal angezeigt UND in die temporäre Datei geschrieben.
|
||||
docker run -it --rm \
|
||||
-v "$(pwd):/app" \
|
||||
-v "$(pwd)/.gemini-config:/root/.config" \
|
||||
-w /app \
|
||||
--name "${CONTAINER_NAME}-temp" \
|
||||
"$IMAGE_NAME" \
|
||||
python3 dev_session.py 2>&1 | tee "$TEMP_OUTPUT_FILE"
|
||||
|
||||
# Extrahiere den CLI-Kontext aus der temporären Datei
|
||||
CLI_CONTEXT=$(sed -n '/---GEMINI_CLI_CONTEXT_START---/,/---GEMINI_CLI_CONTEXT_END---/{//!p}' "$TEMP_OUTPUT_FILE")
|
||||
|
||||
# Lösche die temporäre Datei
|
||||
rm "$TEMP_OUTPUT_FILE"
|
||||
|
||||
# Die Ausgabe wurde bereits angezeigt, wir können direkt die CLI starten.
|
||||
echo "--- Initialisiere Gemini CLI mit dem ausgewählten Kontext... ---"
|
||||
|
||||
# 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 --prompt-interactive "$CLI_CONTEXT"
|
||||
|
||||
# Nach Beendigung der Session (z.B. durch Strg+C) wird aufgeräumt
|
||||
echo "Session beendet."
|
||||
Reference in New Issue
Block a user