> ## Documentation Index
> Fetch the complete documentation index at: https://phidatainc-agui.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Parallel

> Use Parallel tools with Agno agents.

Enable Agno agents with web search and extraction infrastructure from Parallel that prioritizes token efficiency and multi-hop reasoning.

## Search

Natural-language web search that returns LLM-optimized excerpts. Use when the model needs current facts, specific entities, or web data to ground a response.

```python theme={null}
from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.tools.parallel import ParallelTools

agent = Agent(
    model=OpenAIResponses(id="gpt-5.4"),
    tools=[ParallelTools(
        max_results=10,
        include_domains=["techcrunch.com", "wired.com"],
    )],
    markdown=True,
)

agent.print_response("What are the latest developments in AI agents?", stream=True)
```

## Task

Deep research that takes a plain-language input and returns comprehensive, cited results. Use for multi-hop research that needs minutes (not seconds) and synthesis across many sources.

```python theme={null}
from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.tools.parallel import ParallelTools

enrichment_tools = ParallelTools(
    enable_search=False,
    enable_extract=False,
    enable_task=True,
    default_processor="base",
    default_output_schema={
        "type": "json",
        "json_schema": {
            "type": "object",
            "properties": {
                "company_name": {"type": "string"},
                "headquarters": {"type": "string"},
                "total_funding": {"type": "string"},
                "key_investors": {"type": "array", "items": {"type": "string"}},
            },
            "required": ["company_name"],
        },
    },
)

agent = Agent(
    model=OpenAIResponses(id="gpt-5.4"),
    tools=[enrichment_tools],
    markdown=True,
    instructions="Use create_task() to research, then get_task_result() to retrieve.",
)

agent.print_response("Research Anthropic and return structured company data", stream=True)
```

## Monitor

Continuously track the web for changes relevant to a natural-language query, on a schedule you control. Use for news tracking, regulatory watchlists, or competitor monitoring.

```python theme={null}
from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.tools.parallel import ParallelTools

monitor_tools = ParallelTools(
    enable_search=False,
    enable_extract=False,
    enable_monitor=True,
    default_monitor_frequency="1d",
)

agent = Agent(
    model=OpenAIResponses(id="gpt-5.4"),
    tools=[monitor_tools],
    markdown=True,
)

# Create monitors
agent.print_response("Create a monitor to track OpenAI product launches", stream=True)

# Later: check for events
agent.print_response("List my monitors and fetch recent events", stream=True)
```

## Run the Examples

<Steps>
  <Step title="Clone and set up">
    ```bash theme={null}
    git clone https://github.com/agno-agi/agno.git
    cd agno
    ```
  </Step>

  <Step title="Create virtual environment">
    ```bash theme={null}
    ./scripts/demo_setup.sh
    source .venvs/demo/bin/activate
    ```
  </Step>

  <Step title="Export your API key">
    ```bash theme={null}
    export PARALLEL_API_KEY=***
    ```

    <Tip>
      The API key is optional. Keyless access is rate-limited; setting a key raises the ceiling.
    </Tip>
  </Step>

  <Step title="Run an example">
    ```bash theme={null}
    # Search
    python cookbook/91_tools/parallel/news_search.py

    # Task (deep research)
    python cookbook/91_tools/parallel/company_enrichment.py

    # Monitor (continuous tracking)
    python cookbook/91_tools/parallel/competitor_tracker.py
    ```
  </Step>
</Steps>

For more examples, see the [Parallel cookbook](https://github.com/agno-agi/agno/tree/main/cookbook/91_tools/parallel).
