Fix linters, update notebook

This commit is contained in:
mateusz.wosinski 2023-09-06 10:22:42 +02:00
parent 882a588264
commit 7b7bea5424
4 changed files with 10 additions and 7 deletions

View File

@ -108,7 +108,7 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"tts.stream(text_to_speak)" "tts.stream_speech(text_to_speak)"
] ]
}, },
{ {

View File

@ -286,8 +286,8 @@ def _get_dataforseo_api_search_json(**kwargs: Any) -> BaseTool:
return DataForSeoAPISearchResults(api_wrapper=DataForSeoAPIWrapper(**kwargs)) return DataForSeoAPISearchResults(api_wrapper=DataForSeoAPIWrapper(**kwargs))
def _get_eleven_labs_text2speech() -> BaseTool: def _get_eleven_labs_text2speech(**kwargs: Any) -> BaseTool:
return ElevenLabsText2SpeechTool() return ElevenLabsText2SpeechTool(**kwargs)
_EXTRA_LLM_TOOLS: Dict[ _EXTRA_LLM_TOOLS: Dict[

View File

@ -2,4 +2,4 @@
from langchain.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool from langchain.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool
__all__ = [ElevenLabsText2SpeechTool] __all__ = ["ElevenLabsText2SpeechTool"]

View File

@ -1,6 +1,7 @@
import tempfile 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.pydantic_v1 import root_validator
from langchain.tools.base import BaseTool from langchain.tools.base import BaseTool
from langchain.tools.eleven_labs.models import ElevenLabsModel from langchain.tools.eleven_labs.models import ElevenLabsModel
@ -45,7 +46,9 @@ class ElevenLabsText2SpeechTool(BaseTool):
f.write(speech) f.write(speech)
return f.name return f.name
def _run(self, query: str) -> str: def _run(
self, query: str, run_manager: Optional[CallbackManagerForToolRun] = None
) -> str:
"""Use the tool.""" """Use the tool."""
try: try:
speech_file = self._text2speech(query) speech_file = self._text2speech(query)
@ -60,7 +63,7 @@ class ElevenLabsText2SpeechTool(BaseTool):
elevenlabs.play(speech) 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. """Stream the text as speech as it is generated.
Play the text in your speakers.""" Play the text in your speakers."""
speech_stream = elevenlabs.generate(text=query, model=self.model, stream=True) speech_stream = elevenlabs.generate(text=query, model=self.model, stream=True)