From 7b7bea5424e331b971199d0cbd9132bef745aee0 Mon Sep 17 00:00:00 2001 From: "mateusz.wosinski" Date: Wed, 6 Sep 2023 10:22:42 +0200 Subject: [PATCH] Fix linters, update notebook --- docs/extras/integrations/tools/eleven_labs_tts.ipynb | 2 +- libs/langchain/langchain/agents/load_tools.py | 4 ++-- libs/langchain/langchain/tools/eleven_labs/__init__.py | 2 +- .../langchain/langchain/tools/eleven_labs/text2speech.py | 9 ++++++--- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/docs/extras/integrations/tools/eleven_labs_tts.ipynb b/docs/extras/integrations/tools/eleven_labs_tts.ipynb index 7178bf8704..093679c8d1 100644 --- a/docs/extras/integrations/tools/eleven_labs_tts.ipynb +++ b/docs/extras/integrations/tools/eleven_labs_tts.ipynb @@ -108,7 +108,7 @@ "metadata": {}, "outputs": [], "source": [ - "tts.stream(text_to_speak)" + "tts.stream_speech(text_to_speak)" ] }, { diff --git a/libs/langchain/langchain/agents/load_tools.py b/libs/langchain/langchain/agents/load_tools.py index 714abf0f3b..28a3b48350 100644 --- a/libs/langchain/langchain/agents/load_tools.py +++ b/libs/langchain/langchain/agents/load_tools.py @@ -286,8 +286,8 @@ def _get_dataforseo_api_search_json(**kwargs: Any) -> BaseTool: return DataForSeoAPISearchResults(api_wrapper=DataForSeoAPIWrapper(**kwargs)) -def _get_eleven_labs_text2speech() -> BaseTool: - return ElevenLabsText2SpeechTool() +def _get_eleven_labs_text2speech(**kwargs: Any) -> BaseTool: + return ElevenLabsText2SpeechTool(**kwargs) _EXTRA_LLM_TOOLS: Dict[ diff --git a/libs/langchain/langchain/tools/eleven_labs/__init__.py b/libs/langchain/langchain/tools/eleven_labs/__init__.py index 077acb1e4e..86ccba0804 100644 --- a/libs/langchain/langchain/tools/eleven_labs/__init__.py +++ b/libs/langchain/langchain/tools/eleven_labs/__init__.py @@ -2,4 +2,4 @@ from langchain.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool -__all__ = [ElevenLabsText2SpeechTool] +__all__ = ["ElevenLabsText2SpeechTool"] diff --git a/libs/langchain/langchain/tools/eleven_labs/text2speech.py b/libs/langchain/langchain/tools/eleven_labs/text2speech.py index 5c6edb00b9..16deff41f4 100644 --- a/libs/langchain/langchain/tools/eleven_labs/text2speech.py +++ b/libs/langchain/langchain/tools/eleven_labs/text2speech.py @@ -1,6 +1,7 @@ import tempfile -from typing import Dict, Union +from typing import Dict, Optional, Union +from langchain.callbacks.manager import CallbackManagerForToolRun from langchain.pydantic_v1 import root_validator from langchain.tools.base import BaseTool from langchain.tools.eleven_labs.models import ElevenLabsModel @@ -45,7 +46,9 @@ class ElevenLabsText2SpeechTool(BaseTool): f.write(speech) return f.name - def _run(self, query: str) -> str: + def _run( + self, query: str, run_manager: Optional[CallbackManagerForToolRun] = None + ) -> str: """Use the tool.""" try: speech_file = self._text2speech(query) @@ -60,7 +63,7 @@ class ElevenLabsText2SpeechTool(BaseTool): elevenlabs.play(speech) - def stream(self, query: str) -> None: + def stream_speech(self, query: str) -> None: """Stream the text as speech as it is generated. Play the text in your speakers.""" speech_stream = elevenlabs.generate(text=query, model=self.model, stream=True)