science-storyteller / tests /test_elevenlabs.py
tuhulab's picture
Add Eleven Labs text-to-speech test and update Semantic Scholar notebook
2900dae
import os
import dotenv
dotenv.load_dotenv()
ELEVENLABS_API_KEY = os.getenv("ELEVENLABS_API_KEY")
print(f"Eleven Labs API Key: {ELEVENLABS_API_KEY[0:5]}...")
from elevenlabs.client import ElevenLabs
from elevenlabs.play import play
text = """
星际物体银河轨迹研究总结
研究问题
本研究针对一个引人入胜的天文谜题:过去十年里发现的三个星际物体(`Oumuamua、Borisov和ATLAS)来自哪里?这些物体来自我们太阳系之外,穿过银河系。科学家们想通过追踪它们在银河系中的运动轨迹,推断出它们的起源和年龄。
研究方法
研究人员采用了一种精密的计算方法。他们对每个物体进行了10,000次轨道模拟,以考虑测量数据中的不确定性。关键创新在于结合贝叶斯统计框架——一种处理概率的数学方法——与银河系恒星形成速率数据。通过分析这些物体在银河系中垂直方向的最大偏离距离,结合考虑不同年代恒星的运动特性差异,他们能够推断出这些物体的起源年代。
主要发现
研究结果显示出清晰的模式:`Oumuamua来自非常年轻的恒星系统(约10亿年),Borisov来自中等年龄的恒星(约38亿年),而ATLAS来自非常古老的银河系厚盘结构(约96亿年)。这一发现意义重大,因为它表明通过测量星际物体的银河轨道特征,科学家们可以推断这些神秘访客的起源时间和源头恒星的年龄——为理解宇宙中物质如何在星系间传播提供了新的洞见。
"""
client = ElevenLabs(
api_key=ELEVENLABS_API_KEY
)
audio = client.text_to_speech.convert(
text=text,
#voice_id="JBFqnCBsd6RMkjVDRZzb",
voice_id="9lHjugDhwqoxA5MhX0az",
model_id="eleven_multilingual_v2",
output_format="mp3_44100_128",
)
# play(audio)
with open("test_elevenlabs_output_zh.mp3", "wb") as f:
for chunk in audio:
f.write(chunk)