> For the complete documentation index, see [llms.txt](https://docs.airops.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.airops.com/docs/pt/acoes/workflow-concepts/workflow-steps/ai-steps/llm.md).

# Prompt LLM

A etapa LLM do AirOps: faça prompt a modelos da OpenAI, Anthropic e Google (ou às suas próprias chaves) com engenharia de prompts, saídas estruturadas e acesso a ferramentas MCP.

Modelos de Linguagem de Grande Escala (LLMs) são uma categoria de modelos de machine learning que geram texto semelhante ao humano. São treinados com grandes quantidades de dados e são capazes de compreender e gerar respostas com base nas entradas fornecidas, bem como potenciar experiências conversacionais

No AirOps, a etapa de LLM permite-lhe pedir instruções a modelos da OpenAI, Anthropic e Google (ou usar as suas próprias chaves de modelo), com controlo sobre engenharia de prompts, temperatura, saídas estruturadas e acesso a ferramentas MCP.

Criámos a AirOps para facilitar a construção de soluções poderosas com estes modelos, à medida que desempenham um papel cada vez maior nas operações empresariais.

## Configurar uma etapa de LLM

Ao configurar uma etapa de LLM, há vários parâmetros para ajustar de forma a adequá-la da melhor forma ao seu caso de uso. Aqui daremos uma breve visão geral de cada parâmetro.

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-769cd7b7b2246b627d43233170648b0f110b94b6%2FCleanShot%202025-03-07%20at%2009.58.05%402x.png?alt=media" alt=""><figcaption></figcaption></figure>

### Selecionar um modelo de IA

A seleção de um modelo depende da janela de contexto, da complexidade da tarefa, do custo e da velocidade. Em geral, os modelos mais capazes oferecem resultados de maior qualidade, a um custo mais elevado e com velocidade inferior.

Para orientação sobre qual modelo selecionar, consulte a nossa página de documentação sobre [Escolher um Modelo](/docs/pt/acoes/workflow-concepts/workflow-steps/ai-steps/llm/choosing-a-model.md).

{% hint style="info" %}
Também pode optar por trazer o seu próprio modelo afinado, ligando-o através da nossa [Fornecedores de API](/docs/pt/o-seu-espaco-de-trabalho/team.md#api-providers) página.
{% endhint %}

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-9389bee776e5484ea99387dafe8b061acdf30d06%2FCleanShot%202025-03-07%20at%2009.58.37%402x.png?alt=media" alt=""><figcaption></figcaption></figure>

### Conectores MCP

Os conectores MCP dão ao LLM acesso a ferramentas externas alojadas em [Protocolo de Contexto do Modelo](https://modelcontextprotocol.io/) servidores. Quando os conectores são selecionados, o modelo pode chamar essas ferramentas durante a execução para obter dados, desencadear ações ou interagir com serviços de terceiros.

#### Modelos Suportados

Os conectores MCP estão disponíveis com os seguintes modelos:

| Fornecedor | Modelos Suportados                                                                                                                     |
| ---------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| OpenAI     | gpt-4o, gpt-4o-mini, gpt-4.1, gpt-4.1-mini, gpt-5, gpt-5.1, gpt-5.2, gpt-5-mini, gpt-5-nano, o3, o3-pro, o4-mini e versões posteriores |
| Anthropic  | Claude Sonnet 4, Claude Opus 4, Claude Haiku 4.5 e versões posteriores                                                                 |

{% hint style="warning" %}
O menu pendente de Conectores MCP só aparece na etapa de LLM quando é selecionado um modelo compatível. Se não vir a opção, mude para um dos modelos suportados listados acima.
{% endhint %}

#### Selecionar Conectores

Quando é selecionado um modelo suportado, um **Conectores MCP** menu pendente aparece na configuração da etapa. Selecione um ou mais conectores para disponibilizar as respetivas ferramentas ao modelo.

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-8d98864ed40af7799993a2bb81e1ccbeff6b33fb%2Fmcp-connectors-llm-step-dropdown.png?alt=media" alt=""><figcaption><p>Menu pendente de Conectores MCP na etapa de LLM</p></figcaption></figure>

#### Como Funciona em Tempo de Execução

1. A AirOps passa os conectores selecionados como ferramentas disponíveis para a API do LLM.
2. O LLM decide se chama alguma ferramenta com base no prompt e no contexto da conversa.
3. Quando o LLM chama uma ferramenta, a AirOps encaminha o pedido para o servidor MCP externo correspondente.
4. O servidor MCP processa o pedido e devolve uma resposta.
5. A resposta regressa ao LLM, que a incorpora na resposta final.

O LLM pode chamar várias ferramentas numa única execução de etapa e pode optar por não chamar nenhuma ferramenta se estas não forem relevantes para o prompt.

#### Ver Chamadas de Ferramentas MCP nos traces

Quando uma etapa de LLM utiliza Conectores MCP, o trace da etapa regista cada chamada de ferramenta com as respetivas entradas e saídas. Isto facilita a depuração e a compreensão de como o modelo interagiu com ferramentas externas.

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-d2d3eec6c20ae4a626e709196b426296065c3d09%2Fmcp-connectors-step-trace.png?alt=media" alt=""><figcaption><p>Trace da etapa mostrando as entradas e saídas da chamada da ferramenta MCP</p></figcaption></figure>

{% hint style="info" %}
Para adicionar ou gerir Conectores MCP para o seu espaço de trabalho, vá para **Definições > Conectores MCP**. Consulte o [guia de configuração dos Conectores MCP](/docs/pt/programadores/mcp-connectors.md) para mais detalhes.
{% endhint %}

### Temperatura

A temperatura determina o grau de variabilidade na resposta da IA:

* Para maior variabilidade e respostas mais "criativas", escolha uma temperatura mais alta.
* Para menor variabilidade e respostas mais determinísticas, escolha uma temperatura mais baixa.

### Comprimento máximo (opcional)

Limita o número máximo de tokens de saída. Se for deixado em branco, não serão aplicados limites.

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-905bf5e2c3cf2ad6998ab83a3dbefc020e495cdc%2FCleanShot%202025-03-07%20at%2009.59.16%402x.png?alt=media" alt=""><figcaption></figcaption></figure>

### Streaming

O streaming permite-lhe ver a saída gerada token a token, semelhante à experiência do ChatGPT. O texto será transmitido em fluxo no painel de Teste do Workflow Studio ou quando executar o seu Workflow na AirOps.

**Motivos para usar Streaming:**

* **Testar prompts rapidamente:** Se quiser testar prompts rapidamente, pode ver a sua saída ser gerada em tempo real e validar o seu prompt mais depressa, em vez de esperar que a resposta completa termine.
* **Disponibilizar uma API com streaming:** Se transmitir texto em tempo real proporcionar uma melhor experiência de utilizador ao seu utilizador final, deverá considerar o streaming como uma opção. Por outro lado, se estiver a gerar grandes quantidades de texto, talvez o streaming não seja a opção ideal para o seu utilizador final.
* **SDK de Frontend da AirOps:** O nosso SDK permite-lhe transmitir as saídas do Workflow diretamente para a sua experiência de utilizador

### Formato de Saída

Para modelos OpenAI, pode escolher entre "Text" (predefinição) e "JSON".

Se escolher JSON, a etapa de LLM devolverá sempre a sua saída num formato JSON válido. Deve especificar no seu prompt o formato de saída JSON que pretende que o LLM siga. Por exemplo, se quiser que o JSON inclua chaves como "title" e "content", deve especificá-lo no prompt.

### Saídas Estruturadas

Para modelos OpenAI, ao especificar um formato de saída JSON, também pode usar a opção "Define Column Outputs" para especificar o formato que o JSON irá seguir. Esta é uma especificação mais formal do que simplesmente escrever no prompt como pretende que o formato de saída seja. Mas também é mais limitada. Neste momento, só pode usar Saídas Estruturadas para um JSON simples, com chaves de nível superior e sem arrays.

### Resultados Consistentes

Ao ativar "Request Consistent Results", será pedido ao modelo que faça o melhor esforço para obter resultados de saída consistentes quando recebe a mesma entrada várias vezes.

Isto pode ser útil para fins de teste, uma vez que manter a consistência nos resultados é frequentemente um requisito enquanto testa o workflow mais amplo.

A funcionalidade "Request Consistent Results" está disponível apenas para modelos OpenAI.

### Crie o prompt para o seu modelo

Depois de concluir a seleção do seu modelo e escolher os parâmetros desejados, o próximo grande passo é fornecer-lhe um prompt. Os prompts devem ser o mais completos e descritivos possível, e recomendamos consultar as nossas páginas de documentação sobre a melhor forma de "[Fazer prompt com GPT](/docs/pt/acoes/workflow-concepts/workflow-steps/ai-steps/llm/prompt-with-gpt.md)" e "[Fazer prompt com Claude](https://github.com/airopshq/airops-docs/blob/main/building-workflows/workflow-steps/ai-steps/llm/broken-reference/README.md)."

Também o incentivamos a consultar o nosso conjunto de Templates existentes. Quase todos incluem uma etapa de LLM e podem ajudar a dar alguma inspiração e orientações sobre como o seu prompt poderá parecer, por exemplo,

#### Prompt do Utilizador

O campo "User Prompt" fornece ao modelo entradas de exemplo ou uma conversa para obter a saída desejada, por exemplo,

```
Utilizador: 
Por favor, escreva um poema emocionante dirigido a alunos do jardim de infância com o seguinte:
Título do poema: O Primeiro Dia de Escola
Tópicos: recreio, aula de Artes, hora do lanche
```

#### Prompt do Assistente

O prompt do assistente ajuda o modelo a "aprender" o formato de saída desejado. Isto é especialmente útil para gerar arrays, JSON ou HTML sem texto extra de "chat" (*"Claro! Isto é um array..."*), por exemplo,

```
Sistema: Deve produzir um array de 5 strings com substantivos que sejam objetos de cozinha.

Utilizador: Dê-me uma saída de 5 utensílios

Assistente: ["spoon", "fork", "knife", "spatula", "chopsticks"]

Utilizador: Agora, dê-me um array de 5 {{my_input}}
```

{% hint style="info" %}
No AirOps, pode incluir vários pares Utilizador/Assistente para fornecer ao LLM exemplos de como responder.
{% endhint %}

## Como continuar se a etapa de LLM falhar

Por predefinição, a etapa de LLM terminará o workflow se falhar. No entanto, para continuar o workflow caso a etapa falhe, basta clicar em Definições e clicar em `Continuar` na parte inferior das Definições:

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-dfd1c4a5ef7e3222310600e08b47d195e0e1049c%2Fimage.png?alt=media" alt=""><figcaption><p>Clique em Continuar na parte inferior da etapa de LLM</p></figcaption></figure>

O passo devolverá as seguintes chaves:

* `saída` : este será `null`
* `erro` :
  * `mensagem`: a mensagem retornada pela etapa
  * `código` : o código de erro que representa o erro

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-efafda7fe1d5464d514822509633ec2c8de54f23%2Fimage.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Como tentar novamente se a etapa de LLM falhar

Para tentar novamente a etapa de LLM se ela falhar,

1. Selecione `Continuar` em vez de `Terminar Workflow` se o passo falhar
2. Adicione uma condição em que a condição verifica se o `erro` do passo existe, por exemplo `step_1.error`
3. Adicione o passo que pretende tentar novamente caso tenha ocorrido um erro

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-f551698d248295d68e604a0eaf0092b8d6134100%2Fimage.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Gerar prompt com IA

Ao configurar a sua etapa de LLM, pode usar a nossa ferramenta "Generate with AI" para o ajudar a preencher o prompt:

<figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-8568851ebbf00d159fd8c976bcc9796c5c3f49de%2Fllm_step_3.png?alt=media" alt=""><figcaption></figcaption></figure>

A seguir, apresentaremos uma breve descrição de cada uma das opções personalizáveis incluídas nesta funcionalidade e partilharemos abaixo um exemplo passo a passo.

{% hint style="info" %}
Nota: "Generate with AI" é atualmente compatível apenas com a OpenAI
{% endhint %}

### Tipo de Tarefa

Primeiro tem de definir o seu Tipo de Tarefa. A lista de tipos atualmente suportados inclui:

1. **Criação de Conteúdo** -- uma boa escolha se estiver à procura de gerar conteúdo, por exemplo, um artigo de blogue, uma imagem, um email de marketing, etc.
2. **Pergunta + Resposta** -- escolha esta opção se pretender que a sua entrada seja uma pergunta e a sua saída seja a resposta
3. **Extração de Entidades** -- escolha esta opção se estiver à procura de extrair valores específicos de um texto ou imagem
4. **Extração de Texto** -- semelhante à Extração de Entidades, isto pode ser útil para analisar e extrair valores de texto específicos
5. **Classificação** -- escolha esta opção se quiser que a sua saída agrupe diferentes valores da sua entrada em categorias semelhantes

### Tipo de saída

Depois de definir o seu Tipo de Tarefa, a próxima decisão a tomar é como gostaria que a etapa de LLM apresentasse os resultados. A lista de Tipos de Saída atualmente suportados inclui:

1. Texto Simples
2. Markdown
3. HTML
4. JSON
5. YAML

Ao selecionar um valor aqui, pode poupar o esforço adicional de especificar o tipo de saída no seu prompt (ou de exigir uma etapa de Texto subsequente para reformular a saída)

### Prompt

A secção Prompt é semelhante ao que abordámos anteriormente em ["Crie o prompt para o seu modelo."](#prompt-your-model) No entanto, a principal diferença aqui é que podemos contar com a nossa IA para desenvolver ainda mais a descrição. Assim, se não tiver a certeza de como formular exatamente o seu prompt, a OpenAI tentará expandi-lo.

### Definições Avançadas

* **Exemplo de Saída (opcional)** -- se a IA estiver com dificuldade em apresentar os resultados no formato especificado, pode introduzir manualmente aqui um exemplo a partir do qual ela possa trabalhar. Isto é semelhante aos prompts de Utilizador/Assistente acima.
* Variáveis Selecionadas -- preenche-se com quaisquer variáveis de entrada que tenha antes da etapa

### Exemplo

Como exemplo, vamos percorrer a utilização da funcionalidade "Generate with AI" para ajudar a criar um Workflow básico. Vamos imitar a Avaliação de Restaurante que criámos no nosso [Início Rápido do Workflow](https://github.com/airopshq/airops-docs/blob/main/building-workflows/workflow-steps/ai-steps/llm/broken-reference/README.md).

{% @arcade/embed url="<https://app.arcade.software/share/wwLuvhmlXoRTKETSBYPy>" flowId="wwLuvhmlXoRTKETSBYPy" %}


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.airops.com/docs/pt/acoes/workflow-concepts/workflow-steps/ai-steps/llm.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
