> For the complete documentation index, see [llms.txt](https://developers.oxylabs.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.oxylabs.io/api-targets/pt-br/search-engines/google/ai-overviews.md).

# AI Overviews

Extraia AI Overviews do Google dos resultados de pesquisa com dados parseados para texto da resposta, listas com marcadores, painéis de origem e listas de informações.

O `google_search` e `google_ads` As fontes podem retornar AI Overviews dos resultados da Pesquisa Google em todas as regiões globais suportadas. `ai_overviews` O array de resultados suporta vários blocos de IA em uma única resposta, incluindo seções como “People also ask” e “Things to know.”

Para maximizar a chance de receber conteúdo do AI Overviews totalmente renderizado, você deve incluir os seguintes parâmetros:

| Parâmetro         | Valor                           |
| ----------------- | ------------------------------- |
| `source`          | `google_search` ou `google_ads` |
| `render`          | `html`                          |
| `user_agent_type` | `desktop` ou `mobile`           |

Usar esses parâmetros também permite receber a resposta geral e o conteúdo do AI Overviews com uma única solicitação.

{% hint style="danger" %}
O Google gera dinamicamente esse conteúdo ou carrega uma versão em cache, então as respostas geradas por IA podem variar ao longo do tempo, mesmo com parâmetros idênticos.
{% endhint %}

{% hint style="success" %}
Explorar[ **dicionário de dados**](#data-dictionary) para alguns dos recursos de SERP do AI Overviews.
{% endhint %}

## Disponibilidade regional do AI Overviews

O AI Overviews do Google está disponível na maioria dos países, com algumas exceções. Atualmente, os maiores países excluídos são:

* França
* Mônaco
* China
* Irã
* Sudão
* Síria
* Cuba
* Coreia do Norte

{% hint style="warning" %}
O recurso AI Overviews do Google está sendo lançado continuamente, com mais países incluídos ao longo do tempo.
{% endhint %}

## Exemplos de solicitação

Abaixo estão exemplos de código usando `google_search` a fonte Web Scraper API para capturar AI Overviews do Google.

{% tabs %}
{% tab title="cURL" %}

```shell
curl 'https://realtime.oxylabs.io/v1/queries' \\
--user 'USERNAME:PASSWORD' \\
-H 'Content-Type: application/json' \\
-d '{
        "source": "google_search",
        "query": "how to sell on amazon",
        "render": "html",
        "user_agent_type": "desktop",
        "parse": true
        
    }'
```

{% endtab %}

{% tab title="Python" %}

```python
import requests
from pprint import pprint

# Updated payload.
payload = {
    'source': 'google_search',
    'query': 'how to sell on amazon',
    'render': 'html',
    'user_agent_type': 'desktop',
}

# Get response.
response = requests.request(
    'POST',
    'https://realtime.oxylabs.io/v1/queries',
    auth=('user', 'pass1'),
    json=payload,
)

# Print prettified response to stdout.
pprint(response.json())
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$params = [
    'source' => 'google_search',
    'query' => 'how to sell on amazon',
    'render' => 'html',
    'user_agent_type' => 'desktop',
];

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://realtime.oxylabs.io/v1/queries");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_USERPWD, "user" . ":" . "pass1");

$headers = [];
$headers[] = "Content-Type: application/json";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
echo $result;

if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);
```

{% endtab %}

{% tab title="HTTP" %}

```http
https://realtime.oxylabs.io/v1/queries?source=google_search&query=Emporio%20Armani%20EA3192&render=html&user_agent_type=desktop&access_token=12345abcde
```

{% endtab %}

{% tab title="JSON" %}

```json
{
    "source": "google_search",
    "query": "how to sell on amazon",
    "render": "html",
    "user_agent_type": "desktop"
}
```

{% endtab %}
{% endtabs %}

Usamos o método de integração síncrona [**Realtime**](/products/pt-br/web-scraper-api/integration-methods/realtime.md) em nossos exemplos. Se você quiser usar [**Proxy Endpoint**](/products/pt-br/web-scraper-api/integration-methods/proxy-endpoint.md) ou a integração assíncrona [**Push-Pull**](/products/pt-br/web-scraper-api/integration-methods/push-pull.md) integração, consulte a [**seção de métodos de integração**](/products/pt-br/web-scraper-api/integration-methods.md) .

### Trabalhando com vários AI Overviews

Como AI Overviews agora é retornado como um array, você precisa iterar por eles:

{% tabs %}
{% tab title="JavaScript" %}

```javascript
// Processing all AI Overviews in a response
response.results.ai_overviews.forEach((aiOverview, index) => {
  console.log(`Processing AI Overview #${index + 1}`);
  // Process individual components
  if (aiOverview.answer_text) {
    // Handle answer text
  }
  if (aiOverview.bullet_list) {
    // Handle bullet lists
  }
  // And so on...
});
```

{% endtab %}

{% tab title="Python" %}

```python
# Processing all AI Overviews in a response
for index, ai_overview in enumerate(response['results']['ai_overviews']):
    print(f"Processing AI Overview #{index + 1}")
    # Process individual components
    if 'answer_text' in ai_overview:
        answer_texts = ai_overview['answer_text']
        for answer in answer_texts:
            # Process each answer text
            if 'fragments' in answer:
                for text_item in answer['fragments']:
                    print(f"Answer text: {fragment['text']}")
    
    if 'bullet_list' in ai_overview:
        bullet_lists = ai_overview['bullet_list']
        for bullet_list in bullet_lists:
            if 'list_title' in bullet_list:
                print(f"List title: {bullet_list['list_title']}")
            if 'points' in bullet_list:
                for point in bullet_list['points']:
                    point_text = point['text']
                    print(f"- {point_text}")
    # Continue processing other elements...
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
// Processing all AI Overviews in a response
if (isset($response['results']['ai_overviews']) && is_array($response['results']['ai_overviews'])) {
    foreach ($response['results']['ai_overviews'] as $index => $aiOverview) {
        $indexNumber = $index + 1;
        echo "Processing AI Overview #{$indexNumber}\n";
        
        // Process answer text
        if (isset($aiOverview['answer_text']) && is_array($aiOverview['answer_text'])) {
            foreach ($aiOverview['answer_text'] as $answer) {
                if (isset($answer['fragments']) && is_array($answer['fragments'])) {
                    foreach ($answer['fragments'] as $fragment) {
                        $textItem = $fragment['text'];
                        echo "Answer text: {$textItem}\n";
                    }
                }
            }
        }
        
        // Process bullet lists
        if (isset($aiOverview['bullet_list']) && is_array($aiOverview['bullet_list'])) {
            foreach ($aiOverview['bullet_list'] as $bulletList) {
                if (isset($bulletList['list_title'])) {
                    echo "List title: {$bulletList['list_title']}\n";
                }
                if (isset($bulletList['points']) && is_array($bulletList['points'])) {
                    foreach ($bulletList['points'] as $point) {
                        $pointText = $point['text'];
                        echo "- {$pointText}\n";
                    }
                }
            }
        }
        // Continue processing other elements...
    }
}
?>
```

{% endtab %}
{% endtabs %}

Na maioria dos casos, haverá apenas um AI Overview, mas seu código deve estar preparado para lidar com várias entradas.

## Parâmetros da solicitação

### Geral

Configuração básica e opções de personalização para extrair resultados da pesquisa na Web do Google com AI Overviews.

<table><thead><tr><th width="191">Parâmetro</th><th width="377.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><mark style="background-color:green;"><strong>source</strong></mark></td><td>Define o scraper. Use <code>google_search</code> ou <code>google_ads</code>.</td><td><code>google_search</code></td></tr><tr><td><mark style="background-color:green;"><strong>query</strong></mark></td><td>A palavra-chave ou frase a ser pesquisada.</td><td>-</td></tr><tr><td><code>render</code></td><td>Ativa a renderização de JavaScript quando definido como <code>html</code>. <a href="/products/pt-br/web-scraper-api/features/js-rendering-and-browser-control.md#javascript-rendering"><strong>Mais informações</strong></a><strong>.</strong></td><td>-</td></tr><tr><td><code>context</code>:<br><code>expand_aio</code></td><td>Defina como <code>true</code> para expandir os AI Overviews do Google (com renderização de JavaScript ativada).</td><td><code>false</code></td></tr><tr><td><code>parse</code></td><td>Retorna dados analisados quando definido como <code>true</code>.</td><td><code>false</code></td></tr><tr><td><code>callback_url</code></td><td>URL do seu endpoint de callback. <a href="/products/pt-br/web-scraper-api/integration-methods/push-pull.md"><strong>Mais informações</strong></a></td><td>-</td></tr><tr><td><code>user_agent_type</code></td><td>Tipo de dispositivo e navegador. Use <code>desktop</code> ou <code>mobile</code>.</td><td><code>desktop</code></td></tr></tbody></table>

\- parâmetro obrigatório

#### Operadores avançados de pesquisa do Google

Ao extrair, pode ser útil combinar operadores avançados de pesquisa do Google com sua consulta. Isso permite personalizar o escopo da pesquisa, garantindo que os resultados sejam mais relevantes e focados. Explore estes comandos especiais [**aqui**](https://ahrefs.com/blog/google-advanced-search-operators/). Veja a consulta de exemplo abaixo.

```json
{
    "source": "google_search",
    "query": "iphone 15 launch inurl:apple", 
    "render": "html",
    "user_agent_type": "desktop"
}
```

### Localização

Adapte os resultados de pesquisa para locais geográficos e idiomas específicos.

<table><thead><tr><th width="222">Parâmetro</th><th width="350.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><code>geo_location</code></td><td>A localização geográfica para a qual o resultado deve ser adaptado. Usar este parâmetro corretamente é extremamente importante para obter os dados corretos. Para mais informações, leia sobre nossas <code>geo_location</code> estruturas de parâmetros <a href="/products/pt-br/web-scraper-api/features/localization/serp-localization.md#google"><strong>aqui</strong></a><strong>.</strong></td><td>-</td></tr><tr><td><code>locale</code></td><td><code>valor do cabeçalho Accept-Language</code> que altera o idioma da interface web da sua página de pesquisa do Google. <a href="/products/pt-br/web-scraper-api/features/localization/domain-locale.md#google"><strong>Mais informações</strong></a>.</td><td>-</td></tr></tbody></table>

### Paginação

Controles para gerenciar a paginação e a recuperação dos resultados de pesquisa.

<table><thead><tr><th width="222">Parâmetro</th><th width="350.3333333333333">Descrição</th><th width="167">Valor padrão</th></tr></thead><tbody><tr><td><code>start_page</code></td><td>Número da página inicial.</td><td><code>1</code></td></tr><tr><td><code>pages</code></td><td>Número de páginas a recuperar.</td><td><code>1</code></td></tr><tr><td><code>limit</code></td><td>Número de resultados a recuperar em cada página.</td><td><code>10</code></td></tr><tr><td><code>context</code>:<code>limit_per_page</code></td><td>Extraia várias páginas usando o mesmo endereço IP e sessão (cookie definido). Ao especificar os números das páginas em um array JSON com a <code>page</code> chave e indicar o número de resultados orgânicos por página usando a <code>limit</code> chave, você pode minimizar a chance de ver resultados orgânicos sobrepostos entre as páginas (por exemplo, o último resultado orgânico na primeira página ser o mesmo que o primeiro resultado orgânico na segunda página). <a href="#request-sample"><strong>Veja o exemplo</strong></a><strong>.</strong></td><td>-</td></tr></tbody></table>

#### Suporte a rolagem contínua

A Web Scraper API oferece suporte total à rolagem contínua da Pesquisa Google. Ela detecta automaticamente layouts de rolagem contínua, carregando com eficiência os resultados orgânicos solicitados sem exigir parâmetros extras.

#### Limite por página

{% hint style="warning" %}
Devido a mudanças recentes no limite do Google, ajustamos o comportamento da Web Scraper API. O número máximo de resultados por página corresponderá à saída orgânica do Google, que normalmente é de 10 resultados.
{% endhint %}

Para usar este recurso, inclua um array JSON com objetos JSON contendo os seguintes dados:

<table><thead><tr><th width="142">Parâmetro</th><th width="446.3333333333333">Descrição</th><th>Exemplo</th></tr></thead><tbody><tr><td><code>page</code></td><td>O número da página que você gostaria de raspar. Qualquer valor inteiro maior que <code>0</code> funciona</td><td><code>1</code></td></tr><tr><td><code>limit</code></td><td>O número de resultados na página em questão. Qualquer valor inteiro entre <code>1</code> e <code>100</code> (inclusive) funciona.</td><td><code>90</code></td></tr></tbody></table>

#### Exemplo de solicitação

```json
{
    "source": "google_search",
    "query": "how to sell on amazon",
    "render": "html",
    "user_agent_type": "desktop",
    "parse": true,
    "context": [
        {
            "key": "limit_per_page",
            "value": [
                {"page": 1, "limit": 10},
                {"page": 2, "limit": 90}
                    ]
        }]
}
```

### Filtragem

Opções para filtrar e refinar os resultados de pesquisa com base em vários critérios. Aprenda a usar parâmetros de contexto [**aqui**](#context-parameters).

<table><thead><tr><th width="245">Parâmetro</th><th width="350.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><code>context</code>:<br><code>filter</code></td><td>Definir o valor deste parâmetro como <code>0</code> permite ver resultados que, de outra forma, seriam excluídos devido à semelhança com outros resultados.</td><td><code>1</code></td></tr><tr><td><code>context</code>:<br><code>safe_search</code></td><td>Pesquisa segura. Defina como <code>true</code> para ativá-la.</td><td><code>false</code></td></tr><tr><td><code>context</code>:<br><code>udm</code></td><td><code>udm</code> o parâmetro permite alternar entre diferentes abas de pesquisa, como imagens, lugares ou vídeos, para personalizar o tipo de resultados exibidos. Encontre os valores aceitos <a href="https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzrXw45naRpCZ0Ku9AjY1%2Fuploads%2FeoShpvYuZlb4hGpCIXNG%2Fudm_values%20(eu%2Bus).json?alt=media&#x26;token=a6b77fab-b170-478c-b06f-b8fbf7ab64c7"><strong>aqui</strong></a>.</td><td>-</td></tr><tr><td><code>context</code>:<br><code>tbm</code></td><td>A ser correspondido ou <code>tbm</code> parâmetro. Os valores aceitos são: <code>app</code>, <code>blg</code>, <code>bks</code>, <code>dsc</code>, <code>isch</code>, <code>nws</code>, <code>pts</code>, <code>plcs</code>, <code>rcp</code>, <code>lcl</code></td><td>-</td></tr><tr><td><code>context</code>:<br><code>tbs</code></td><td>Este parâmetro é como um contêiner para parâmetros mais obscuros do Google, como limitar/classificar resultados por data, bem como outros filtros, alguns dos quais dependem do <code>tbm</code> parâmetro (por exemplo, <code>tbs=app_os:1</code> está disponível apenas com <code>tbm</code> valor <code>app</code>). Mais informações <a href="https://stenevang.wordpress.com/2013/02/22/google-advanced-power-search-url-request-parameters/"><strong>aqui</strong></a>.</td><td>-</td></tr></tbody></table>

{% hint style="warning" %}
`udm` e `tbm` parâmetros de contexto não podem ser usados juntos em uma única solicitação de raspagem; selecione apenas um. Usar ambos simultaneamente pode levar a conflitos ou comportamento inesperado.
{% endhint %}

### Outros

Configurações e controles avançados adicionais para requisitos especializados.

<table><thead><tr><th width="222">Parâmetro</th><th width="350.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><code>context</code>:<br><code>fpstate</code></td><td>Definir o <code>fpstate</code> valor como <code>aig</code> fará o Google carregar mais aplicativos. Este parâmetro só é útil se usado em conjunto com o <code>render</code> parâmetro.</td><td>-</td></tr><tr><td><code>context</code>:<br><code>nfpr</code></td><td><code>true</code> desativará a autocorreção ortográfica</td><td><code>false</code></td></tr></tbody></table>

### Parâmetros de contexto

Todos os parâmetros de contexto devem ser adicionados ao `context` array como objetos com pares de `key` e `valor` por exemplo:

```json
...
"context": [
    {
        "key": "filter",
        "value": "0"
    }
]
...
```

## Saída estruturada

### Dicionário de dados

Todas as chaves disponíveis no recurso SERP AI Overviews estão definidas na tabela abaixo:

<table><thead><tr><th width="249">Chave (results.ai_overviews)</th><th width="383">Descrição</th><th>Tipo</th></tr></thead><tbody><tr><td><code>answer_text</code></td><td>Informações gerais sobre o termo de consulta da Pesquisa Google.</td><td>vetor</td></tr><tr><td><code>bullet_list</code></td><td>Indica informações sobre itens renderizados em uma lista com marcadores no recurso SERP AI Overviews.</td><td>vetor</td></tr><tr><td><code>source_panel</code></td><td>Uma lista de fontes usadas para gerar o resultado do AI Overviews no recurso SERP do Google.</td><td>objeto</td></tr><tr><td><code>info_list</code></td><td>Uma lista de informações usadas com mais frequência para representar etapas de um processo relevante para a consulta de pesquisa.</td><td>vetor</td></tr><tr><td><code>pos_overall</code></td><td>Uma indicação da posição do resultado do recurso SERP AI Overviews entre todos os resultados disponíveis da SERP do Google.</td><td>inteiro</td></tr></tbody></table>

### Geral

No exemplo a seguir, a consulta "Emporio Armani EA3192" foi usada.

```json
{
  "ai_overviews": [
    {
      "answer_text": [
        {
          "fragments": [
            {
              "text": "Emporio Armani is a luxury brand known for timeless designs.",
              "references": [
                {
                  "source": "http://italist.com ",
                  "url": "https://www.italist.com/magazine/what-is-emporio-armani/ "
                }
              ]
            }
          ],
          "pos": 1
        }
      ],
      "bullet_list": [
        {
          "list_title": "Pros",
          "points": [
            {"text": "Comfortable"},
            {"text": "Minimal branding"}
          ],
          "pos": 1
        }
      ],
      "source_panel": {
        "items": [
          {
            "url": "https://www.italist.com/...",
            "source": "http://italist.com ",
            "title": "O que é Emporio Armani...",
            "pos": 1
          }
        ]
      },
      "pos_overall": 1
    }
  ]
}
```

#### Texto da resposta

<pre class="language-json"><code class="lang-json"><strong>...
</strong><strong>"answer_text": [
</strong>  {
    "fragments": [
      {
        "text": "Emporio Armani is a luxury brand known for timeless designs.",
        "references": [
          {
            "source": "http://italist.com",
            "url": "https://www.italist.com/magazine/what-is-emporio-armani/"
          }
        ]
      }
    ],
    "pos": 1
  }
]
...
</code></pre>

<table><thead><tr><th width="273">Chave (results.ai_overviews.answer_text)</th><th width="368">Descrição</th><th>Tipo</th></tr></thead><tbody><tr><td><code>fragmentos</code></td><td>Uma resposta curta para a consulta de Pesquisa do Google.</td><td>vetor</td></tr><tr><td><code>fragments.text</code></td><td>O conteúdo textual da resposta do fragmento.</td><td>cadeia de caracteres</td></tr><tr><td><code>fragments.references</code></td><td>Uma lista de fontes referenciadas pelo fragmento.</td><td>vetor</td></tr><tr><td><code>fragments.references.source</code></td><td>O nome da fonte referenciada.</td><td>cadeia de caracteres</td></tr><tr><td><code>fragments.references.url</code></td><td>O URL da fonte referenciada.</td><td>cadeia de caracteres</td></tr><tr><td><code>pos</code></td><td>Um indicador que denota a posição de um determinado item entre todos os resultados de resposta do AI Overviews.</td><td>inteiro</td></tr></tbody></table>

#### **Lista com marcadores**

```json
...
"bullet_list": [
  {
    "list_title": "Pros",
    "points": [
      {"text": "Comfortable"},
      {"text": "Minimal branding"}
    ],
    "pos": 1
  }
]
...
```

<table><thead><tr><th width="268">Chave (results.ai_overviews.bullet_list)</th><th width="364">Descrição</th><th>Tipo</th></tr></thead><tbody><tr><td><code>list_title</code></td><td>O título da lista com marcadores.</td><td>cadeia de caracteres</td></tr><tr><td><code>points</code></td><td>Os itens exibidos na lista com marcadores. Todos os itens são separados por vírgulas.</td><td>vetor</td></tr><tr><td><code>points.text</code></td><td>O conteúdo textual do ponto com marcador.</td><td>cadeia de caracteres</td></tr><tr><td><code>points.references</code></td><td>Uma lista de fontes referenciadas pelo ponto com marcador (opcional).</td><td>vetor</td></tr><tr><td><code>pos</code></td><td>Um indicador que denota a posição de um determinado item entre todos os resultados da lista com marcadores do AI Overviews.</td><td>inteiro</td></tr></tbody></table>

#### Painel de fontes

```json
...
"source_panel": {
  "items": [
    {
      "url": "https://www.italist.com/...",
      "source": "http://italist.com",
      "title": "O que é Emporio Armani...",
      "pos": 1
    }
  ]
}
...
```

<table><thead><tr><th width="274">Chave (results.ai_overviews.source_panel)</th><th width="353">Descrição</th><th>Tipo</th></tr></thead><tbody><tr><td><code>items</code></td><td>Uma lista de fontes usadas para gerar o resultado do AI Overviews no recurso SERP do Google.</td><td>objeto</td></tr><tr><td><code>items.url</code></td><td>O URL do site.</td><td>cadeia de caracteres</td></tr><tr><td><code>items.source</code></td><td>O nome do site.</td><td>cadeia de caracteres</td></tr><tr><td><code>items.title</code></td><td>O título do artigo.</td><td>cadeia de caracteres</td></tr><tr><td><code>items.pos</code></td><td>Um indicador que denota a posição de um determinado item entre todos os resultados do painel de fontes do AI Overviews.</td><td>inteiro</td></tr></tbody></table>

#### Lista de informações

<table><thead><tr><th width="276">Chave (results.ai_overviews.info_list)</th><th width="353">Descrição</th><th>Tipo</th></tr></thead><tbody><tr><td><code>list_title</code></td><td>O título da lista.</td><td>cadeia de caracteres</td></tr><tr><td><code>list_items</code></td><td>Contém uma lista de itens com seus respectivos detalhes.</td><td>vetor</td></tr><tr><td><code>list_items.title</code></td><td>O título da seção dentro da lista.</td><td>cadeia de caracteres</td></tr><tr><td><code>list_items.content</code></td><td>Uma breve descrição da seção.</td><td>vetor</td></tr><tr><td><code>list_item.pos</code></td><td>Um indicador que denota a posição de um determinado item entre todos os resultados da lista de informações do AI Overviews.</td><td>inteiro</td></tr></tbody></table>

### Instruções

No exemplo a seguir, foi usada a consulta "docker exec commands explained".

<figure><img src="https://3537372600-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBaJCXoqO1zdFnaMnCKrg%2Fuploads%2Fgit-blob-648a33922f3380889e3086bf204735af9703ff25%2Fdocker_exec_command_explained.png?alt=media" alt=""><figcaption></figcaption></figure>

```json
...
  "ai_overviews": [
    {
      "answer_text": [
        {
          "fragments": [
            "O docker execExecEm computação, exec é uma funcionalidade de um sistema operacional que executa um arquivo executável no contexto de um processo já existente, substituindo o executável anterior...",
            "É uma ferramenta poderosa que pode ser usada para diversas tarefas, como depurar um container, executar um script ou instalar software."
          ],
          "pos": 1
        },
        {
          "fragments": [
            "A sintaxe do comando docker exec é a seguinte:"
          ],
          "pos": 2
        },
        ...
        }
      ]
    }
  ],
...
```

#### Texto da resposta

```json
"answer_text": [
  {
    "fragments": [
      "O docker exec...",
      "É uma ferramenta poderosa que pode ser usada para diversas tarefas, como depurar um container, executar um script ou instalar software."
    ],
    "pos": 1
  }
]
```

<table><thead><tr><th width="260">Chave (results.ai_overviews.answer_text)</th><th width="385">Descrição</th><th width="89">Tipo</th></tr></thead><tbody><tr><td><code>fragmentos</code></td><td>Fragmento de resposta da consulta de Pesquisa do Google em texto simples.</td><td>array de cadeias de caracteres</td></tr><tr><td><code>pos</code></td><td>Um indicador que denota a posição do item na resposta da visão geral.</td><td>inteiro</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developers.oxylabs.io/api-targets/pt-br/search-engines/google/ai-overviews.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
