dawid-lorek commited on
Commit
af1c8c3
·
verified ·
1 Parent(s): 352e3b3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -4
app.py CHANGED
@@ -11,9 +11,8 @@ from langchain.agents import initialize_agent, AgentType, Tool
11
  from langchain_community.tools import DuckDuckGoSearchRun
12
  from langchain_experimental.tools.python.tool import PythonREPLTool
13
  from langchain_community.tools.youtube.search import YouTubeSearchTool
14
- from langchain_community.tools.youtube.transcript import YouTubeTranscriptTool
15
  from langchain_community.tools.wikipedia.tool import WikipediaQueryRun
16
- from langchain_experimental.agents.agent_toolkits import create_python_agent
17
  from langchain.tools import tool
18
  from langchain.chat_models import ChatOpenAI
19
 
@@ -32,9 +31,15 @@ llm = ChatOpenAI(model="gpt-4o", temperature=0)
32
  duckduckgo = DuckDuckGoSearchRun()
33
  wikipedia = WikipediaQueryRun(api_wrapper=None)
34
  youtube_search = YouTubeSearchTool()
35
- youtube_transcript = YouTubeTranscriptTool()
36
  python_tool = PythonREPLTool()
37
 
 
 
 
 
 
 
 
38
  @tool
39
  def reverse_sentence_logic(sentence: str) -> str:
40
  """Handle reversed or encoded sentences like '.rewsna eht sa...'."""
@@ -109,7 +114,7 @@ tools: List[Tool] = [
109
  duckduckgo,
110
  wikipedia,
111
  youtube_search,
112
- youtube_transcript,
113
  python_tool,
114
  reverse_sentence_logic,
115
  extract_vegetables,
 
11
  from langchain_community.tools import DuckDuckGoSearchRun
12
  from langchain_experimental.tools.python.tool import PythonREPLTool
13
  from langchain_community.tools.youtube.search import YouTubeSearchTool
 
14
  from langchain_community.tools.wikipedia.tool import WikipediaQueryRun
15
+ from langchain.document_loaders import YoutubeLoader
16
  from langchain.tools import tool
17
  from langchain.chat_models import ChatOpenAI
18
 
 
31
  duckduckgo = DuckDuckGoSearchRun()
32
  wikipedia = WikipediaQueryRun(api_wrapper=None)
33
  youtube_search = YouTubeSearchTool()
 
34
  python_tool = PythonREPLTool()
35
 
36
+ @tool
37
+ def get_yt_transcript(url: str) -> str:
38
+ """Transcribe a YouTube video from its URL."""
39
+ loader = YoutubeLoader.from_youtube_url(url, add_video_info=False)
40
+ docs = loader.load()
41
+ return " ".join(doc.page_content for doc in docs)
42
+
43
  @tool
44
  def reverse_sentence_logic(sentence: str) -> str:
45
  """Handle reversed or encoded sentences like '.rewsna eht sa...'."""
 
114
  duckduckgo,
115
  wikipedia,
116
  youtube_search,
117
+ Tool(name="youtube_transcript", func=get_yt_transcript, description="Transcribe YouTube video from URL"),
118
  python_tool,
119
  reverse_sentence_logic,
120
  extract_vegetables,