Spaces:
Sleeping
Sleeping
add search tool
Browse files
app.py
CHANGED
@@ -9,14 +9,34 @@ 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
|
13 |
#Keep this format for the description / args / args description but feel free to modify the tool
|
14 |
-
"""A tool that
|
15 |
Args:
|
16 |
-
|
17 |
-
|
18 |
"""
|
19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
|
21 |
@tool
|
22 |
def get_current_time_in_timezone(timezone: str) -> str:
|
|
|
9 |
|
10 |
# Below is an example of a tool that does nothing. Amaze us with your creativity !
|
11 |
@tool
|
12 |
+
def get_search_results(query:str, num_results: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 search in internet throught DuckDuckGoSearch engine
|
15 |
Args:
|
16 |
+
query: query what to search
|
17 |
+
num_results: how many results to ouput
|
18 |
"""
|
19 |
+
|
20 |
+
search_tool = DuckDuckGoSearchTool(num_results=num_results)
|
21 |
+
|
22 |
+
try:
|
23 |
+
results = search_tool.run(query, time_period="m")
|
24 |
+
if len(results == 0):
|
25 |
+
return "Sorry, I can't find anything?"
|
26 |
+
else:
|
27 |
+
first_part_of_answer = f"On your query: {(query)} The top {num_results} are:\n"
|
28 |
+
last_part_of_answer = ""
|
29 |
+
|
30 |
+
for r in results:
|
31 |
+
last_part_of_answer += f"Title: {r['title']}\nSnippet: {r['snippet']}\nURL: {r['url']}\n")
|
32 |
+
|
33 |
+
return first_part_of_answer+last_part_of_answer
|
34 |
+
|
35 |
+
except Exception as e:
|
36 |
+
print(f"An error occurred: {e}")
|
37 |
+
|
38 |
+
|
39 |
+
print(results)
|
40 |
|
41 |
@tool
|
42 |
def get_current_time_in_timezone(timezone: str) -> str:
|