> 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/llms-e-ia.md).

# LLMs e IA

Os scrapers LLM da Oxylabs permitem que você envie prompts para as principais plataformas de IA e receba respostas estruturadas e parseadas. Alvos suportados:

* [ChatGPT](/api-targets/pt-br/llms-e-ia/chatgpt.md) – fonte: `chatgpt`
* [Gemini](/api-targets/pt-br/llms-e-ia/gemini.md) – fonte: `gemini`
* [Perplexity](/api-targets/pt-br/llms-e-ia/perplexity.md) – fonte: `perplexity`

{% hint style="success" %}
Todos os scrapers dedicados de LLM & IA oferecem suporte **instruções personalizadas do navegador**. [**Saiba mais**](/products/pt-br/web-scraper-api/features/js-rendering-and-browser-control.md#browser-instructions)**.**
{% endhint %}

### Método de integração

As fontes de LLM & IA usam o [**Push-Pull**](/products/pt-br/web-scraper-api/integration-methods/push-pull.md) método de integração. Em vez de manter a conexão aberta até a resposta ficar pronta, você envia um job e coleta o resultado quando ele termina:

1. **Envie o job:** envie seu prompt para o endpoint Push-Pull. Você recebe imediatamente um ID de job, não o resultado.
2. **Espere ele terminar:** ou deixe que o notifiquemos com `callback_url` (recomendado), ou [verifique o status do job](/products/pt-br/web-scraper-api/integration-methods/push-pull.md#check-job-status) você mesmo.
3. **Recupere o resultado:** quando o status estiver `done`, busque a resposta parseada.

{% hint style="info" %}
**Realtime e Proxy Endpoint não estão disponíveis** para `chatgpt`, `gemini`, e `perplexity` fontes. Esses alvos levam mais tempo para serem concluídos do que uma conexão síncrona permite, então Push-Pull é o único método suportado.
{% endhint %}

## Exemplo de requisição

Todos os alvos de LLM usam, em grande parte, os mesmos parâmetros de requisição, com a principal diferença no comprimento máximo do prompt.

Envie o payload para o endpoint Push-Pull – veja as páginas individuais de cada alvo para exemplos completos de código.

```json
{
  "source": "chatgpt",
  "prompt": "best supplements for better sleep",
  "parse": true,
  "geo_location": "United States",
  "callback_url": "https://your-server.com/oxylabs-callback"
}
```

<table><thead><tr><th width="195.5">Parâmetro</th><th width="452.5">Descrição</th><th width="117">Tipo</th></tr></thead><tbody><tr><td><mark style="background-color:green;"><strong><code>source</code></strong></mark></td><td>O alvo de LLM a ser extraído. Valores permitidos: <code>chatgpt</code>, <code>perplexity</code>, <code>gemini</code>.</td><td>cadeia de caracteres</td></tr><tr><td><mark style="background-color:green;"><strong><code>prompt</code></strong></mark></td><td>Consulta ou prompt a ser enviado. Comprimento máximo: 4.000 caracteres para <code>chatgpt</code>; 8.000 caracteres para <code>perplexity</code> e <code>gemini</code>.</td><td>cadeia de caracteres</td></tr><tr><td><code>callback_url</code></td><td><strong>Recomendado.</strong> URL onde entregamos uma notificação quando o job é concluído, para que você não precise verificar o status manualmente. <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/f8ca26d94a776244a1a6f4d756ea5f2840b96d85"><strong>Mais informações</strong></a>.</td><td>cadeia de caracteres</td></tr><tr><td><code>parse</code></td><td>Defina como <code>true</code> para receber uma resposta JSON estruturada.</td><td>booleano</td></tr><tr><td><code>geo_location</code></td><td>Localização geográfica de onde a requisição será roteada (por exemplo, <code>"United States"</code>).</td><td>cadeia de caracteres</td></tr><tr><td><code>browser_instructions</code></td><td>Execute instruções personalizadas opcionais do navegador ao renderizar JavaScript. <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/3233bca1879be403b915f4b370f405d36a5941e9#browser-instructions"><strong>Mais informações</strong></a>.</td><td>objeto</td></tr></tbody></table>

&#x20;    \- parâmetro obrigatório

{% hint style="success" %}
**Observação:** A renderização de JavaScript está habilitada por padrão para todos os alvos de LLM. Não inclua `render` no payload da sua requisição.
{% endhint %}

## Resposta

Todos os alvos de LLM retornam a mesma estrutura de dados de nível superior. (veja as páginas individuais de cada alvo para a referência completa dos campos da resposta).

### Enviando o job

A submissão retorna os detalhes do job, incluindo o ID que você usará para coletar o resultado. Ela **não** contém os dados extraídos.

<table><thead><tr><th width="196">Campo</th><th width="452">Descrição</th><th width="114">Tipo</th></tr></thead><tbody><tr><td><code>job.id</code></td><td>Identificador exclusivo para o job de scraping. Use isto para recuperar o resultado.</td><td>cadeia de caracteres</td></tr><tr><td><code>job.status</code></td><td>Status atual do job: <code>pendente</code> enquanto ele é executado, <code>done</code> quando o resultado estiver pronto, <code>com falha</code> se falhou (recupere o resultado somente quando o status estiver <code>done</code>)</td><td>cadeia de caracteres</td></tr><tr><td><code>job.source</code></td><td>Enviado <code>source</code> valor.</td><td>cadeia de caracteres</td></tr><tr><td><code>job.parse</code></td><td>Enviado <code>parse</code> valor.</td><td>booleano</td></tr><tr><td><code>job.prompt</code></td><td>Prompt original na requisição.</td><td>cadeia de caracteres</td></tr><tr><td><code>job.geo_location</code></td><td>Geolocalização usada para a requisição.</td><td>cadeia de caracteres</td></tr><tr><td><code>job.created_at</code></td><td>Carimbo de data/hora de criação do job (UTC, <code>YYYY-MM-DD HH:MM:SS</code>).</td><td>cadeia de caracteres</td></tr><tr><td><code>job.updated_at</code></td><td>Carimbo de data/hora da atualização do job.</td><td>cadeia de caracteres</td></tr></tbody></table>

### Recuperando resultados

Quando o status do job estiver `done`, recupere o resultado usando o `job.id` que você recebeu. O conteúdo parseado específico de cada alvo é encontrado dentro de `results[].content` (veja as páginas individuais de cada alvo para a referência completa dos campos).

<table><thead><tr><th width="196">Campo</th><th width="452">Descrição</th><th width="114">Tipo</th></tr></thead><tbody><tr><td><code>results[].job_id</code></td><td>ID do job associado ao resultado.</td><td>cadeia de caracteres</td></tr><tr><td><code>results[].status_code</code></td><td>Código de status HTTP da coleta da página.</td><td>inteiro</td></tr><tr><td><code>results[].url</code></td><td>Página do alvo de LLM.</td><td>cadeia de caracteres</td></tr><tr><td><code>results[].content</code></td><td>Dados da resposta do LLM. Os campos variam por alvo.</td><td>objeto</td></tr></tbody></table>

### Dados de resposta por alvo

A tabela abaixo mostra quais campos de dados estão disponíveis para cada alvo de LLM.&#x20;

|                                                                              | [**ChatGPT**](/api-targets/pt-br/llms-e-ia/chatgpt.md) | [**Gemini**](/api-targets/pt-br/llms-e-ia/gemini.md) | [**Perplexity**](/api-targets/pt-br/llms-e-ia/perplexity.md) |
| ---------------------------------------------------------------------------- | :----------------------------------------------------: | :--------------------------------------------------: | :----------------------------------------------------------: |
| Entrada do prompt                                                            |                            ✓                           |                           ✓                          |                               ✓                              |
| Saída parseada (JSON)                                                        |                            ✓                           |                           ✓                          |                               ✓                              |
| Resposta em texto simples                                                    |                            ✓                           |                           ✓                          |                               –                              |
| Saída Markdown                                                               |                            ✓                           |                           ✓                          |                               ✓                              |
| Árvore JSON do Markdown                                                      |                            ✓                           |                           –                          |                               ✓                              |
| <mark style="background-color:yellow;">Busca / consultas relacionadas</mark> |                            ✓                           |                           –                          |                               ✓                              |
| <mark style="background-color:yellow;">Citações / fontes</mark>              |                            ✓                           |                           ✓                          |                               ✓                              |
| <mark style="background-color:yellow;">Resultados de compras</mark>          |                            ✓                           |                           –                          |                               ✓                              |
| <mark style="background-color:yellow;">Anúncios</mark>                       |                            ✓                           |                           –                          |                               –                              |
| Geolocalização                                                               |                            ✓                           |                           ✓                          |                               ✓                              |
| Modelo de LLM usado                                                          |                            ✓                           |                           ✓                          |                               ✓                              |

&#x20;    – condicional, retornado somente quando o conteúdo estiver na resposta do LLM.


---

# 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/llms-e-ia.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.
