> ## Documentation Index
> Fetch the complete documentation index at: https://docs.brightdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 查询扇出和网络搜索控制

> 使用 web_search 输入来控制 LLM 爬虫是否运行网络搜索，并读取 web_search_triggered 以了解搜索是否真的发生了。

Query fan-out 是 Bright Data LLM Scrapers 用来控制和报告运行期间外部网络搜索活动的机制。使用 `web_search` 输入来决定是否允许网络搜索，并读取 `web_search_triggered` 输出字段以了解是否实际发生了网络搜索。

<Note>
  `web_search` 是一个**权限**。`web_search_triggered` 是**实际行为**。它们不相同 — 设置 `web_search: true` 模型仍然可能决定不搜索；设置 `web_search: false` 时，`web_search_triggered` 将始终返回 `false`。
</Note>

## 可用性

| LLM Scraper                                        | Query fan-out 支持 |
| :------------------------------------------------- | :--------------- |
| [ChatGPT](/products/scrapers/chatgpt/introduction) | 可用               |
| Grok                                               | 可用               |

Gemini 目前不公开 `web_search` 控制。网络搜索的决定是由 Gemini 内部做出的，无法从 scraper 输入强制或禁用。

## 输入：`web_search`

| 字段           | 类型      | 必需 | 默认     | 含义             |
| :----------- | :------ | :- | :----- | :------------- |
| `web_search` | boolean | 否  | `true` | 控制运行期间是否允许网络搜索 |

**值**

* `true` 或省略：允许网络搜索。Scraper 在 LLM UI 中启用网络搜索按钮，模型可能选择使用它。
* `false`：网络搜索被禁用。Scraper 不启用网络搜索按钮，模型不会触发搜索。

## 输出：`web_search_triggered`

| 字段                     | 类型      | 总是返回 | 含义                                       |
| :--------------------- | :------ | :--- | :--------------------------------------- |
| `web_search`           | boolean | 否    | 回显输入值（如果省略则默认为 `true`）。不表示是否实际发生了搜索。     |
| `web_search_triggered` | boolean | 是    | 仅当模型在运行期间实际触发了网络搜索时为 `true`；否则为 `false`。 |

当您需要确认模型的答案是否基于实时网络结果时，使用 `web_search_triggered`。

## 示例：禁用网络搜索

下面的请求传递 `web_search: false` 来强制离线答案。

```bash theme={null}
curl -X POST "https://api.brightdata.com/datasets/v3/scrape?dataset_id=gd_m7aof0k82r803d5bjm&notify=false&include_errors=true" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": [
      {
        "url": "https://chatgpt.com/",
        "prompt": "Top hotels in New York",
        "country": "",
        "web_search": false,
        "additional_prompt": ""
      }
    ]
  }'
```

**预期结果**

* 响应包含 `web_search: false`。
* 响应包含 `web_search_triggered: false`，因为不允许搜索。

## 解释结果

### 当 `web_search_triggered` 为 `true` 时

包含 `web_search_triggered: true` 的响应意味着模型在运行期间实际运行了外部网络搜索。如果响应还包含提示派生的结构化字段（例如 `is_map: true` 及填充的地图有效负载，或 `citations`），这些字段是从实时搜索结果生成的。

### 为什么即使发生了搜索，`map` 仍可能为 `null`

即使 `web_search_triggered: true`，`map` 或 `citations` 等字段仍然可能为空或 `null`。原因是：

* `web_search_triggered` 仅告诉您网络搜索是否**运行**。
* `map`、`shopping_visible` 和 `citations` 等字段反映模型**选择输出**的内容，这取决于提示和模型的最终答案格式。

不要使用输出字段（如 `map`）作为网络搜索发生的证明。使用 `web_search_triggered` 来实现这一目的。

## 总结

* 在输入上设置 `web_search` 来控制是否**允许**网络搜索。
* 在输出上读取 `web_search_triggered` 以了解网络搜索是否**实际发生**。
* 不要依赖提示派生的输出字段（`map`、`citations`、`shopping_visible`）作为网络搜索运行的信号。这些字段取决于提示和模型的响应格式，而不是搜索活动。

## 另请参见

* [ChatGPT Scraper API 简介](/products/scrapers/chatgpt/introduction)
* [发送您的第一个 ChatGPT 搜索请求](/products/scrapers/chatgpt/send-first-request)
* [ChatGPT Search by prompt API 参考](/api-reference/scrapers/ai-search-apis/chatgpt-search-by-prompt)
* [AI Scrapers 概述](/products/scrapers/scrapers-library/ai-scrapers)
