Proyek ini menyediakan API Text-to-Speech (TTS) lokal yang kompatibel dengan Openai menggunakan edge-tts . Ini meniru titik akhir OpenAI TTS ( /v1/audio/speech ), memungkinkan pengguna untuk menghasilkan pidato dari teks dengan berbagai opsi suara dan kecepatan pemutaran, seperti API OpenAI.
edge-tts menggunakan layanan teks-ke-speech online Microsoft Edge, sehingga sepenuhnya gratis.
Lihat proyek ini di Docker Hub
/v1/audio/speech dengan struktur permintaan dan perilaku yang serupa.edge-tts .requirements.txt .git clone https://github.com/travisvn/openai-edge-tts.git
cd openai-edge-tts.env di direktori root dengan variabel berikut: 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
Atau, salin .env.example default dengan yang berikut:
cp .env.example .envdocker compose up --build(Catatan: Kompose Docker tidak sama dengan Docker Compose)
Jalankan dengan -d untuk menjalankan Docker Compose di "Detached Mode", artinya akan berjalan di latar belakang dan membebaskan terminal Anda.
docker compose up -dAtau, jalankan langsung dengan Docker :
docker build -t openai-edge-tts .
docker run -p 5050:5050 --env-file .env openai-edge-tts Untuk menjalankan wadah di latar belakang, tambahkan -d setelah perintah docker run :
docker run -d -p 5050:5050 --env-file .env openai-edge-ttshttp://localhost:5050 . Jika Anda lebih suka menjalankan proyek ini secara langsung dengan Python, ikuti langkah -langkah ini untuk mengatur lingkungan virtual, menginstal dependensi, dan memulai server.
git clone https://github.com/travisvn/openai-edge-tts.git
cd openai-edge-ttsBuat dan aktifkan lingkungan virtual untuk mengisolasi dependensi:
# For macOS/Linux
python3 -m venv venv
source venv/bin/activate
# For Windows
python -m venv venv
venv S cripts a ctivate Gunakan pip untuk menginstal paket yang diperlukan yang tercantum dalam requirements.txt :
pip install -r requirements.txt Buat file .env di direktori root dan atur variabel berikut:
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
Setelah dikonfigurasi, mulailah server dengan:
python app/server.py Server akan mulai berjalan di http://localhost:5050 .
Anda sekarang dapat berinteraksi dengan API di http://localhost:5050/v1/audio/speech dan titik akhir yang tersedia lainnya. Lihat bagian penggunaan untuk contoh permintaan.
/v1/audio/speechMenghasilkan audio dari teks input. Parameter yang tersedia:
Parameter yang diperlukan:
Parameter opsional:
"tts-1" ).edge-tts yang valid (default: "en-US-AndrewNeural" ).mp3 , opus , aac , flac , wav , pcm (Default: mp3 ).1.2 . Contoh Permintaan dengan curl dan Simpan Output ke File MP3:
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.mp3Atau, sejalan dengan parameter titik akhir API OpenAI:
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.mp3Dan contoh bahasa selain bahasa Inggris:
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 untuk bahasa /lokal yang diberikan.edge-tts , dengan informasi dukungan bahasa.Kontribusi dipersilakan! Harap bayar repositori dan buat permintaan tarik untuk perbaikan apa pun.
Proyek ini dilisensikan berdasarkan GNU Umum Lisensi Publik v3.0 (GPL-3.0), dan kasus penggunaan yang dapat diterima dimaksudkan untuk digunakan pribadi. Untuk perusahaan atau penggunaan non-pribadi openai-edge-tts , hubungi saya di [email protected]
Tip
Tukar localhost ke IP lokal Anda (Kel. 192.168.0.1 ) Jika Anda memiliki masalah
Mungkin saja, ketika mengakses titik akhir ini pada server / komputer yang berbeda atau ketika panggilan dilakukan dari sumber lain (seperti WebUI terbuka), Anda perlu mengubah URL dari localhost ke IP lokal Anda (sesuatu seperti 192.168.0.1 atau serupa)
Buka Panel Admin dan Pergi ke Pengaturan -> Audio
Di bawah ini, Anda dapat melihat tangkapan layar dari konfigurasi yang benar untuk menggunakan proyek ini untuk mengganti titik akhir openai
Catatan
Lihat dokumen resmi untuk integrasi WebUI terbuka dengan Openai Edge TTS
Dalam versi 1.6.8, apa pun yang ditambahkan dukungan untuk "penyedia tts openai generik" - yang berarti kita dapat menggunakan proyek ini sebagai penyedia TTS dalam apa pun
Buka Pengaturan dan Pergi ke Voice & Speech (di bawah Penyedia AI)
Di bawah ini, Anda dapat melihat tangkapan layar dari konfigurasi yang benar untuk menggunakan proyek ini untuk mengganti titik akhir openai
your_api_key_here tidak perlu diganti - tidak diperlukan kunci API "nyata". Gunakan string mana pun yang Anda inginkan.docker run -d -p 5050:5050 -e API_KEY=your_api_key_here -e PORT=5050 travisvn/openai-edge-tts:latestMainkan sampel suara dan lihat semua suara TTS tepi yang tersedia