Synthetic_Biology / genesis /utils /text_to_speech.py
mgbam's picture
Rename utils/text_to_speech.py to genesis/utils/text_to_speech.py
c3a7164 verified
raw
history blame contribute delete
694 Bytes
# genesis/utils/text_to_speech.py
import os
import requests
ELEVEN_API_KEY = os.getenv("ELEVEN_LABS_API_KEY")
def elevenlabs_tts(text, voice_id="Bella", output_file="output.mp3"):
"""Convert text to speech using ElevenLabs."""
url = f"https://api.elevenlabs.io/v1/text-to-speech/{voice_id}"
headers = {
"xi-api-key": ELEVEN_API_KEY,
"Content-Type": "application/json"
}
payload = {"text": text, "voice_settings": {"stability": 0.75, "similarity_boost": 0.75}}
response = requests.post(url, json=payload, headers=headers)
response.raise_for_status()
with open(output_file, "wb") as f:
f.write(response.content)
return output_file