Spaces:
Running
Running
from duckduckgo_search import DDGS | |
class WebSearchTool: | |
def __init__(self, debug=False): | |
self.debug = debug | |
def search_duckduckgo(self, query, max_results=3): | |
results = [] | |
try: | |
with DDGS() as ddgs: | |
for r in ddgs.text(query, max_results=max_results): | |
results.append(f"Title: {r.get('title', 'No title')}\nSource: {r.get('href', 'No source')}\n{r['body']}") | |
if results: | |
return "\n\n".join(results) | |
else: | |
return "No relevant information found." | |
except Exception as e: | |
return f"Search error: {str(e)}" | |
def search(self, query, max_results=3): | |
"""Interface method that matches the expected API in agent.py""" | |
if self.debug: | |
print(f"Searching for: {query}") | |
return self.search_duckduckgo(query, max_results) |