From 4bd0df4e5a45e75853b22a16142567998ceb3d12 Mon Sep 17 00:00:00 2001 From: h Date: Wed, 2 Jul 2025 10:02:33 +0300 Subject: [PATCH] feat(solaris): add init to agent --- src/bot/modules/solaris/agents/__init__.py | 1 + src/bot/modules/solaris/agents/tts.py | 13 ++++++------- 2 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 src/bot/modules/solaris/agents/__init__.py diff --git a/src/bot/modules/solaris/agents/__init__.py b/src/bot/modules/solaris/agents/__init__.py new file mode 100644 index 0000000..2ae2839 --- /dev/null +++ b/src/bot/modules/solaris/agents/__init__.py @@ -0,0 +1 @@ +pass diff --git a/src/bot/modules/solaris/agents/tts.py b/src/bot/modules/solaris/agents/tts.py index 9f7195c..62c5bd2 100644 --- a/src/bot/modules/solaris/agents/tts.py +++ b/src/bot/modules/solaris/agents/tts.py @@ -1,29 +1,28 @@ import io + from google import genai from google.genai import types from pydub import AudioSegment + from ..content_configs import TTS_CONTENT_CONFIG + class TTSAgent: def __init__(self, api_key: str) -> None: - # код повторяется некрасиво self.client = genai.Client(api_key=api_key).aio + async def generate(self, text: str): response = await self.client.models.generate_content( model="gemini-2.5-flash-preview-tts", contents=text, - config=TTS_CONTENT_CONFIG + config=TTS_CONTENT_CONFIG, ) data = response.candidates[0].content.parts[0].inline_data.data pcm_io = io.BytesIO(data) audio = AudioSegment( - pcm_io.read(), - sample_width=2, - frame_rate=24000, - channels=1 + pcm_io.read(), sample_width=2, frame_rate=24000, channels=1 ) ogg_io = io.BytesIO() audio.export(ogg_io, format="ogg", codec="libopus") ogg_bytes = ogg_io.getvalue() return ogg_bytes -