Dabei handelt es sich um einen FastAPI-basierten Server, der als Schnittstelle zwischen Ihrer Anwendung und cloudbasierten KI-Diensten fungiert. Es konzentriert sich auf drei Hauptaufgaben:
Derzeit wird für diese Dienste die API von OpenAI verwendet, sie ist jedoch so konzipiert, dass wir in Zukunft weitere Anbieter hinzufügen können.
Transkription (Speech-to-Text)
Text-to-Speech
Speech-to-Speech
.
├── cloud_providers/
│ ├── base.py
│ └── openai_api_handler.py
├── server/
│ ├── main.py
│ ├── routers/
│ │ ├── transcribe.py
│ │ ├── tts.py
│ │ └── speech_to_speech.py
│ └── utils/
│ └── logger.py
|
└── requirements.txt
└── README.md
Klonen Sie das Repository
Erstellen Sie eine virtuelle Umgebung:
python -m venv venv
source venv/bin/activate
Abhängigkeiten installieren:
pip install -r requirements
Umgebungsvariablen einrichten:
export OPENAI_API_KEY=your_openai_api_key
Um den Server zu starten, navigieren Sie zum Projektverzeichnis und führen Sie Folgendes aus:
python server/main.py
Dadurch wird der FastAPI-Server gestartet, normalerweise unter http://localhost:8000
.
API docs
Die Anwendung verwendet rotierende Dateihandler für die Protokollierung mit separaten Protokolldateien für verschiedene Komponenten:
logs/main.log
: Hauptanwendungsprotokollelogs/transcription.log
: Transkriptionsspezifische Protokollelogs/tts.log
: Text-to-Speech-Protokollelogs/speech_to_speech.log
: Speech-to-Speech-Protokolle Die Anwendung umfasst eine Fehlerbehandlung für verschiedene Szenarien, einschließlich API-Fehler und WebSocket-Verbindungsabbrüche. Fehler werden protokolliert und entsprechende HTTP-Ausnahmen werden ausgelöst.
Das Projekt ist auf Erweiterbarkeit ausgelegt. Die abstrakte Basisklasse CloudProviderBase
in base.py
ermöglicht die einfache Integration zusätzlicher Cloud-Anbieter über OpenAI hinaus.
Beiträge sind willkommen! Bitte senden Sie gerne einen Pull Request.
[Geben Sie hier Ihre Lizenz an]