aklein1995 commited on
Commit
b556735
·
verified ·
1 Parent(s): 9a8c112

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +23 -6
app.py CHANGED
@@ -9,15 +9,32 @@ from Gradio_UI import GradioUI
9
 
10
  # Below is an example of a tool that does nothing. Amaze us with your creativity !
11
  @tool
12
- def my_cutom_tool(arg1:str, arg2:int)-> str: #it's import to specify the return type
13
- #Keep this format for the description / args / args description but feel free to modify the tool
14
- """A tool that does nothing yet
15
  Args:
16
- arg1: the first argument
17
- arg2: the second argument
 
 
 
18
  """
19
- return "What magic will you build ?"
 
 
 
 
 
20
 
 
 
 
 
 
 
 
 
 
21
  @tool
22
  def get_current_time_in_timezone(timezone: str) -> str:
23
  """A tool that fetches the current local time in a specified timezone.
 
9
 
10
  # Below is an example of a tool that does nothing. Amaze us with your creativity !
11
  @tool
12
+ def my_custom_tool(query: str, max_results: int = 3) -> str:
13
+ """A tool that performs a DuckDuckGo search.
14
+
15
  Args:
16
+ query: The search query.
17
+ max_results: The maximum number of search results to return.
18
+
19
+ Returns:
20
+ A formatted string with search results.
21
  """
22
+ # Initialize DuckDuckGo Search Tool
23
+ search_tool = DuckDuckGoSearchTool()
24
+ try:
25
+ results = search_tool.run(query=query, max_results=max_results)
26
+ if not results:
27
+ return f"No results found for: {query}"
28
 
29
+ # Format results as a string
30
+ formatted_results = "\n".join(
31
+ [f"{i+1}. {res['title']} - {res['link']}" for i, res in enumerate(results)]
32
+ )
33
+ return f"Search results for '{query}':\n{formatted_results}"
34
+
35
+ except Exception as e:
36
+ return f"Error performing search: {str(e)}"
37
+
38
  @tool
39
  def get_current_time_in_timezone(timezone: str) -> str:
40
  """A tool that fetches the current local time in a specified timezone.