GoogleSearch enables an Agent to perform web crawling and scraping tasks.

Prerequisites

The following examples requires the googlesearch and pycountry libraries.

pip install -U googlesearch-python pycountry

Example

The following agent will search Google for the latest news about “Mistral AI”:

cookbook/tools/googlesearch_tools.py
from phi.agent import Agent
from phi.tools.googlesearch import GoogleSearch

agent = Agent(
    tools=[GoogleSearch()],
    description="You are a news agent that helps users find the latest news.",
    instructions=[
        "Given a topic by the user, respond with 4 latest news items about that topic.",
        "Search for 10 news items and select the top 4 unique items.",
        "Search in English and in French.",
    ],
    show_tool_calls=True,
    debug_mode=True,
)
agent.print_response("Mistral AI", markdown=True)

Toolkit Params

ParameterTypeDefaultDescription
fixed_max_resultsintNoneOptional fixed maximum number of results to return.
fixed_languagestrNoneOptional fixed language for the requests.
headersAnyNoneOptional headers to include in the requests.
proxystrNoneOptional proxy to be used for the requests.
timeoutintNoneOptional timeout for the requests, in seconds.

Toolkit Functions

FunctionDescription
google_searchSearches Google for a specified query. Parameters include query for the search term, max_results for the maximum number of results (default is 5), and language for the language of the search results (default is “en”). Returns the search results as a JSON formatted string.