-
Notifications
You must be signed in to change notification settings - Fork 1
sprachassistent_integration
Version: 1.0
Datum: Dezember 2025
Status: Implementierungsanleitung
Dieses Dokument bietet Schritt-für-Schritt-Anleitungen zur Integration tatsächlicher Whisper.cpp- und Piper TTS-Modelle mit dem ThemisDB Sprachassistenten.
- CMake 3.20 oder höher
- C++20 kompatibler Compiler (GCC 10+, Clang 12+, MSVC 2019+)
- Git zum Klonen der Repositories
- ONNX Runtime für Piper TTS (optional, kann gebündelt werden)
- CUDA Toolkit 11.x oder 12.x (NVIDIA GPUs)
- cuBLAS (kommt mit CUDA)
cd /pfad/zu/ThemisDB
mkdir -p external
cd external
git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cppNur CPU:
mkdir build && cd build
cmake ..
cmake --build . --config ReleaseMit GPU (CUDA):
mkdir build && cd build
cmake .. -DWHISPER_CUBLAS=ON
cmake --build . --config Releasecd /pfad/zu/ThemisDB/external/whisper.cpp
# Base-Modell herunterladen (empfohlen für den Start)
bash ./models/download-ggml-model.sh base
# Oder andere Modelle:
# bash ./models/download-ggml-model.sh tiny # Schnellstes, am wenigsten genau
# bash ./models/download-ggml-model.sh small # Gute Balance
# bash ./models/download-ggml-model.sh medium # Bessere Genauigkeit
# bash ./models/download-ggml-model.sh large-v3 # Beste Genauigkeitcd /pfad/zu/ThemisDB/external
git clone https://github.com/rhasspy/piper.git
cd piperAbhängigkeiten installieren:
Ubuntu/Debian:
sudo apt-get install libespeak-ng-dev libonnxruntime-devmacOS:
brew install espeak-ng onnxruntimePiper bauen:
cd src/cpp
mkdir build && cd build
cmake ..
cmake --build . --config Releasecd /pfad/zu/ThemisDB
mkdir -p models/voices
# Deutsche Stimme herunterladen (Thorsten - Männlich)
wget https://huggingface.co/rhasspy/piper-voices/resolve/main/de/de_DE/thorsten/medium/de_DE-thorsten-medium.onnx \
-O models/voices/de_DE-thorsten-medium.onnx
wget https://huggingface.co/rhasspy/piper-voices/resolve/main/de/de_DE/thorsten/medium/de_DE-thorsten-medium.onnx.json \
-O models/voices/de_DE-thorsten-medium.onnx.json
# Englische Stimme (Amy - US Weiblich)
wget https://huggingface.co/rhasspy/piper-voices/resolve/main/en/en_US/amy/medium/en_US-amy-medium.onnx \
-O models/voices/en_US-amy-medium.onnx
wget https://huggingface.co/rhasspy/piper-voices/resolve/main/en/en_US/amy/medium/en_US-amy-medium.onnx.json \
-O models/voices/en_US-amy-medium.onnx.jsonWeitere Stimmen verfügbar unter: https://huggingface.co/rhasspy/piper-voices/tree/main
cd /pfad/zu/ThemisDB
mkdir -p build && cd build
cmake .. \
-DTHEMIS_ENABLE_VOICE_ASSISTANT=ON \
-DTHEMIS_ENABLE_WHISPER=ON \
-DTHEMIS_ENABLE_PIPER_TTS=ON \
-DTHEMIS_ENABLE_LLM=ON \
-DWHISPER_ROOT=/pfad/zu/ThemisDB/external/whisper.cpp \
-DPIPER_ROOT=/pfad/zu/ThemisDB/external/piper/src/cpp \
-DCMAKE_BUILD_TYPE=Releasecmake --build . --config Release -j$(nproc)config/processors/stt.yaml bearbeiten:
processor:
model:
# Zeigen Sie auf Ihr heruntergeladenes Whisper-Modell
path: "./models/ggml-base.bin"
size: "base"
auto_download: falseconfig/processors/tts.yaml bearbeiten:
processor:
model:
# Zeigen Sie auf Ihre heruntergeladene Piper-Stimme
path: "./models/voices/de_DE-thorsten-medium.onnx"
engine: "piper"
auto_download: falseconfig/voice_assistant.yaml bearbeiten:
voice_assistant:
enabled: true
stt:
model_path: "./models/ggml-base.bin"
model_size: "base"
language: "auto"
tts:
model_path: "./models/voices/de_DE-thorsten-medium.onnx"
voice: "de_DE-thorsten-medium"
llm:
model_path: "./models/llama-2-7b-chat.gguf"
n_ctx: 4096cd /pfad/zu/ThemisDB/build
./themis_server --config ../config/themis.yaml --enable-voice-assistant# Python-Beispiel verwenden
cd /pfad/zu/ThemisDB
python examples/voice_assistant_example.pyOder curl verwenden:
# Test-Audio vorbereiten
base64 test_audio.wav > audio_base64.txt
# Transkriptions-API aufrufen
curl -X POST http://localhost:8080/api/v1/voice/transcribe \
-H "Authorization: Bearer IHR_TOKEN" \
-H "Content-Type: application/json" \
-d "{\"audio_base64\": \"$(cat audio_base64.txt)\", \"language\": \"de\"}"curl -X POST http://localhost:8080/api/v1/voice/synthesize \
-H "Authorization: Bearer IHR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"text": "Hallo, hier ist der ThemisDB Sprachassistent", "voice": "default", "return_base64": true}' \
| jq -r '.audio_base64' | base64 -d > ausgabe.wav
# Generierte Audio abspielen
aplay ausgabe.wav # Linux
afplay ausgabe.wav # macOSLösung:
- Überprüfen Sie, ob die Modelldatei am konfigurierten Pfad existiert
- Dateiberechtigungen prüfen
- Sicherstellen, dass CMake die Whisper.cpp-Bibliothek während des Builds gefunden hat
- Server-Logs auf detaillierte Fehlermeldungen überprüfen
Lösung:
- ONNX-Modell und .json-Konfigurationsdateien überprüfen
- Sicherstellen, dass ONNX Runtime installiert ist
- ONNX-Modell-Kompatibilität prüfen (sollte Piper-Format sein)
- Ausreichend verfügbaren Speicher überprüfen
Für NVIDIA GPUs mit CUDA-Unterstützung bauen:
cmake .. \
-DTHEMIS_ENABLE_VOICE_ASSISTANT=ON \
-DTHEMIS_ENABLE_WHISPER=ON \
-DTHEMIS_ENABLE_CUDA=ON \
-DWHISPER_CUBLAS=ONKonfiguration aktualisieren:
stt:
performance:
use_gpu: true
gpu_device_id: 0| Modell | Geschwindigkeit | Genauigkeit | RAM | Anwendungsfall |
|---|---|---|---|---|
| tiny | 4x RT | Gut | 1GB | Echtzeit, geringe Ressourcen |
| base | 1x RT | Besser | 1GB | Ausgewogen (empfohlen) |
| small | 0.5x RT | Hoch | 2GB | Hohe Genauigkeit erforderlich |
| medium | 0.3x RT | Sehr hoch | 5GB | Maximale Genauigkeit |
| large | 0.2x RT | Beste | 10GB | Forschung/Archivierung |
RT = Echtzeit (1x RT = 1 Minute Audio = 1 Minute Verarbeitung)
- Modelle heruntergeladen und konfiguriert
- Build erfolgreich mit aktiviertem Sprachassistent abgeschlossen
- Konfigurationsdateien mit korrekten Pfaden aktualisiert
- API-Authentifizierung konfiguriert
- Speicherpfade für Aufzeichnungen konfiguriert
- Revisionskontrolle in ThemisDB aktiviert
- Transkription mit Beispiel-Audio getestet
- Synthese mit Beispieltext getestet
- Komplette Anrufaufzeichnungs-Pipeline getestet
- Lasttests abgeschlossen
- Monitoring konfiguriert
- Backup-Strategie vorhanden
Für Probleme oder Fragen:
- Dokumentation: Sprachassistent Anleitung
- Whisper.cpp: https://github.com/ggerganov/whisper.cpp
- Piper TTS: https://github.com/rhasspy/piper
- ThemisDB: GitHub Issues
Integration verwendet MIT-lizenzierte Bibliotheken:
- Whisper.cpp: MIT-Lizenz
- Piper TTS: MIT-Lizenz
- ONNX Runtime: MIT-Lizenz
Siehe Lizenzdokumentation für Details.
ThemisDB v1.3.4 | GitHub | Documentation | Discussions | License
Last synced: January 02, 2026 | Commit: 6add659
Version: 1.3.0 | Stand: Dezember 2025
- Übersicht
- Home
- Dokumentations-Index
- Quick Reference
- Sachstandsbericht 2025
- Features
- Roadmap
- Ecosystem Overview
- Strategische Übersicht
- Geo/Relational Storage
- RocksDB Storage
- MVCC Design
- Transaktionen
- Time-Series
- Memory Tuning
- Chain of Thought Storage
- Query Engine & AQL
- AQL Syntax
- Explain & Profile
- Rekursive Pfadabfragen
- Temporale Graphen
- Zeitbereichs-Abfragen
- Semantischer Cache
- Hybrid Queries (Phase 1.5)
- AQL Hybrid Queries
- Hybrid Queries README
- Hybrid Query Benchmarks
- Subquery Quick Reference
- Subquery Implementation
- Content Pipeline
- Architektur-Details
- Ingestion
- JSON Ingestion Spec
- Enterprise Ingestion Interface
- Geo-Processor Design
- Image-Processor Design
- Hybrid Search Design
- Fulltext API
- Hybrid Fusion API
- Stemming
- Performance Tuning
- Migration Guide
- Future Work
- Pagination Benchmarks
- Enterprise README
- Scalability Features
- HTTP Client Pool
- Build Guide
- Implementation Status
- Final Report
- Integration Analysis
- Enterprise Strategy
- Verschlüsselungsstrategie
- Verschlüsselungsdeployment
- Spaltenverschlüsselung
- Encryption Next Steps
- Multi-Party Encryption
- Key Rotation Strategy
- Security Encryption Gap Analysis
- Audit Logging
- Audit & Retention
- Compliance Audit
- Compliance
- Extended Compliance Features
- Governance-Strategie
- Compliance-Integration
- Governance Usage
- Security/Compliance Review
- Threat Model
- Security Hardening Guide
- Security Audit Checklist
- Security Audit Report
- Security Implementation
- Development README
- Code Quality Pipeline
- Developers Guide
- Cost Models
- Todo Liste
- Tool Todo
- Core Feature Todo
- Priorities
- Implementation Status
- Roadmap
- Future Work
- Next Steps Analysis
- AQL LET Implementation
- Development Audit
- Sprint Summary (2025-11-17)
- WAL Archiving
- Search Gap Analysis
- Source Documentation Plan
- Changefeed README
- Changefeed CMake Patch
- Changefeed OpenAPI
- Changefeed OpenAPI Auth
- Changefeed SSE Examples
- Changefeed Test Harness
- Changefeed Tests
- Dokumentations-Inventar
- Documentation Summary
- Documentation TODO
- Documentation Gap Analysis
- Documentation Consolidation
- Documentation Final Status
- Documentation Phase 3
- Documentation Cleanup Validation
- API
- Authentication
- Cache
- CDC
- Content
- Geo
- Governance
- Index
- LLM
- Query
- Security
- Server
- Storage
- Time Series
- Transaction
- Utils
Vollständige Dokumentation: https://makr-code.github.io/ThemisDB/