Dieses Projekt bietet eine lokale OpenAI-kompatible Text-zu-Sprach-API (TTS) unter Verwendung von edge-tts . Es emuliert den OpenAI TTS -Endpunkt ( /v1/audio/speech ) und ermöglicht den Benutzern, wie die OpenAI -API Sprache aus Text mit verschiedenen Sprachoptionen und Wiedergabegeschwindigkeiten zu generieren.
edge-tts verwendet den Online-Text-zu-Sprach-Service von Microsoft Edge, sodass er vollständig kostenlos ist.
Sehen Sie dieses Projekt auf Docker Hub an
/v1/audio/speech mit ähnlicher Anforderungsstruktur und -verhalten.edge-tts Äquivalenten.requirements.txt .git clone https://github.com/travisvn/openai-edge-tts.git
cd openai-edge-tts.env -Datei im Stammverzeichnis mit den folgenden Variablen: API_KEY=your_api_key_here
PORT=5050
DEFAULT_VOICE=en-US-AndrewNeural
DEFAULT_RESPONSE_FORMAT=mp3
DEFAULT_SPEED=1.2
DEFAULT_LANGUAGE=en-US
REQUIRE_API_KEY=True
Oder kopieren Sie den Standard .env.example
cp .env.example .envdocker compose up --build(Hinweis: Docker-Compose ist nicht dasselbe wie Docker Compose)
Führen Sie mit -d aus, um Docker komponieren im "Abnahmemodus" auszuführen, was bedeutet, dass es im Hintergrund ausgeführt wird und Ihr Terminal freigibt.
docker compose up -dAlternativ direkt mit Docker laufen :
docker build -t openai-edge-tts .
docker run -p 5050:5050 --env-file .env openai-edge-tts Um den Container im Hintergrund auszuführen, fügen Sie nach dem Befehl docker run -d :
docker run -d -p 5050:5050 --env-file .env openai-edge-ttshttp://localhost:5050 zugegriffen. Wenn Sie dieses Projekt lieber direkt mit Python ausführen, befolgen Sie diese Schritte, um eine virtuelle Umgebung einzurichten, Abhängigkeiten zu installieren und den Server zu starten.
git clone https://github.com/travisvn/openai-edge-tts.git
cd openai-edge-ttsErstellen und aktivieren Sie eine virtuelle Umgebung, um Abhängigkeiten zu isolieren:
# For macOS/Linux
python3 -m venv venv
source venv/bin/activate
# For Windows
python -m venv venv
venv S cripts a ctivate Verwenden Sie pip , um die in requirements.txt aufgeführten Paketen zu installieren.TXT:
pip install -r requirements.txt Erstellen Sie eine .env -Datei im Stammverzeichnis und setzen Sie die folgenden Variablen:
API_KEY=your_api_key_here
PORT=5050
DEFAULT_VOICE=en-US-AndrewNeural
DEFAULT_RESPONSE_FORMAT=mp3
DEFAULT_SPEED=1.2
DEFAULT_LANGUAGE=en-US
REQUIRE_API_KEY=True
Starten Sie den Server nach der Konfiguration mit:
python app/server.py Der Server wird unter http://localhost:5050 ausgeführt.
Sie können jetzt mit der API unter http://localhost:5050/v1/audio/speech und anderen verfügbaren Endpunkten interagieren. Anforderungsbeispiele finden Sie im Abschnitt Verwendungsabschnitt.
/v1/audio/speechGeneriert Audio aus dem Eingabtext. Verfügbare Parameter:
Erforderlicher Parameter:
Optionale Parameter:
"tts-1" ).edge-tts Voice (Standard: "en-US-AndrewNeural" ).mp3 , opus , aac , flac , wav , pcm (Standard: mp3 ).1.2 . Beispielanforderung mit curl und Speichern der Ausgabe in einer MP3 -Datei:
curl -X POST http://localhost:5050/v1/audio/speech
-H " Content-Type: application/json "
-H " Authorization: Bearer your_api_key_here "
-d ' {
"input": "Hello, I am your AI assistant! Just let me know how I can help bring your ideas to life.",
"voice": "echo",
"response_format": "mp3",
"speed": 1.2
} '
--output speech.mp3Oder um mit den OpenAI -API -Endpunktparametern übereinzustimmen:
curl -X POST http://localhost:5050/v1/audio/speech
-H " Content-Type: application/json "
-H " Authorization: Bearer your_api_key_here "
-d ' {
"model": "tts-1",
"input": "Hello, I am your AI assistant! Just let me know how I can help bring your ideas to life.",
"voice": "alloy"
} '
--output speech.mp3Und ein Beispiel für eine andere Sprache als Englisch:
curl -X POST http://localhost:5050/v1/audio/speech
-H " Content-Type: application/json "
-H " Authorization: Bearer your_api_key_here "
-d ' {
"model": "tts-1",
"input": "じゃあ、行く。電車の時間、調べておくよ。",
"voice": "ja-JP-KeitaNeural"
} '
--output speech.mp3edge-tts -Stimmen für eine bestimmte Sprache /ein bestimmtes Gebietsschema auf.edge-tts Stimmen mit Sprachunterstützungsinformationen auf.Beiträge sind willkommen! Bitte geben Sie das Repository aus und erstellen Sie eine Pull -Anfrage für Verbesserungen.
Dieses Projekt ist gemäß der GNU General Public Lizenz v3.0 (GPL-3.0) lizenziert, und der akzeptable Anwendungsfall soll persönlich verwendet werden. Für Unternehmen oder nicht personenbezogene Nutzung von openai-edge-tts kontaktieren Sie mich unter [email protected]
Tipp
Setzen Sie localhost auf Ihre lokale IP (Ex. 192.168.0.1 ), wenn Sie Probleme haben
Es kann sein, dass beim Zugriff auf diesen Endpunkt auf einem anderen Server / Computer oder wenn der Anruf von einer localhost Quelle (z 192.168.0.1
Öffnen Sie das Administratorfeld und gehen Sie zu Einstellungen -> Audio
Im Folgenden finden Sie einen Screenshot der richtigen Konfiguration für die Verwendung dieses Projekts, um den OpenAI -Endpunkt zu ersetzen
Notiz
Sehen Sie sich die offiziellen Dokumente für die Open Webui -Integration mit Openai Edge TTS an
In Version 1.6.8 fügte alles, was die Unterstützung für "generische OpenAI TTS -Anbieter" hinzugefügt hat. Dies bedeutet, dass wir dieses Projekt als TTS -Anbieter in allem nutzen können
Öffnen Sie die Einstellungen und gehen Sie zu Voice & Speech (unter AI -Anbietern)
Im Folgenden finden Sie einen Screenshot der richtigen Konfiguration für die Verwendung dieses Projekts, um den OpenAI -Endpunkt zu ersetzen
your_api_key_here muss nie ersetzt werden - kein "echter" API -Schlüssel ist erforderlich. Verwenden Sie die String, die Sie möchten.docker run -d -p 5050:5050 -e API_KEY=your_api_key_here -e PORT=5050 travisvn/openai-edge-tts:latestSpielen Sie Sprachmuster und sehen Sie alle verfügbaren Edge TTS -Stimmen