File size: 736 Bytes
5d9ee9d 8347505 5d9ee9d 7cdafef 5d9ee9d f25b0af 5d9ee9d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
from typing import Any, Optional
from smolagents.tools import Tool
from gradio_client import Client
class BroadfieldWebsearch(Tool):
client = Client("broadfield-dev/browser")
name = "broadfield_web_search"
description = "Searches the web with common web search engines."
inputs = {'query': {'type': 'any', 'description': 'The query terms to use for the web search.'}}
output_type = "any"
def forward(self, query: Any) -> Any:
result = result = self.client.predict(
action="Search",
query=query,
browser_name="firefox",
search_engine_name="Ecosia",
api_name="/web_browse"
)
return result['markdown_content']
def __init__(self, *args, **kwargs):
self.is_initialized = False
|