> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Procedimentos

## Visão geral

Um procedimento contém instruções para uma tarefa específica. Cada procedimento tem um gatilho que descreve quando ele se aplica e um conteúdo que descreve o que fazer. Quando uma conversa corresponde ao gatilho, o agente carrega o procedimento.

Use procedimentos quando seu agente precisar lidar com várias tarefas diferentes. Um caso de uso é um agente de suporte ao cliente, em que cada procedimento abrange um tipo de solicitação: reembolsos, verificação de identidade, recuperação de conta ou solução de problemas de conexão.

![Aba Procedimentos no painel
do agente](/docs/_fern-img/38b190b7a08cb9e628da309a86c5e4b315eabccf238a41d5d3a6c2646aba11af.webp)

## Tipos de procedimento

Há dois tipos de procedimentos:

* **[Procedimentos de formato livre](/docs/pt/eleven-agents/customization/procedures/free-form-procedures)** são escritos como instruções em linguagem natural, que o agente interpreta e adapta à situação.
* **[Procedimentos estruturados](/docs/pt/eleven-agents/customization/procedures/structured-procedures)** são uma lista ordenada de etapas tipadas que o agente executa da mesma forma todas as vezes.

Você pode usar os dois tipos, junto com [workflows](/docs/pt/eleven-agents/customization/agent-workflows), no mesmo agente. O agente escolhe o procedimento relevante com base no gatilho, independentemente do tipo.

## Quando usar procedimentos

Todo agente tem um [prompt de sistema](/docs/pt/eleven-agents/best-practices/prompting-guide). Procedimentos e [workflows](/docs/pt/eleven-agents/customization/agent-workflows) são duas formas alternativas de adicionar estrutura. Escolha com base em quanto a conversa pode variar.

| Requisito                                                      | Usar                                                                                                  | Por quê                                                                                                                                                         |
| -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Agente simples de prova de conceito                            | Apenas prompt de sistema                                                                              | É a forma mais rápida de configurar e iterar, mas um único prompt se torna difícil de gerenciar à medida que o escopo do agente aumenta.                        |
| Tarefa em que o agente pode adaptar a redação e a ordem        | [Procedimento de formato livre](/docs/pt/eleven-agents/customization/procedures/free-form-procedures) | Mantém toda a conversa no contexto de um LLM, para que o agente adapte a redação e a ordem e possa lidar com rumos inesperados. Usa mais da janela de contexto. |
| Tarefa cujas etapas devem ser executadas da mesma forma sempre | [Procedimento estruturado](/docs/pt/eleven-agents/customization/procedures/structured-procedures)     | Cada etapa é executada na ordem definida, da mesma forma todas as vezes, e você a cria como uma lista curta de etapas.                                          |
| Controle total sobre ramificações e casos extremos complexos   | [Workflow](/docs/pt/eleven-agents/customization/agent-workflows)                                      | É executado como um grafo de subagentes que você projeta e conecta, com total controle sobre as ramificações e o modelo usado em cada etapa.                    |

## Gerenciar procedimentos

O painel é a forma recomendada de criar procedimentos. Use a API para gerenciar procedimentos
programaticamente ou integrá-los às ferramentas de implantação.

> **Note**
>
> No momento, a CLI da ElevenLabs não oferece suporte ao gerenciamento de procedimentos.

#### Criar pelo painel

Abra seu agente no [painel](https://elevenlabs.io/app/agents) e selecione **Procedimentos**.
Use **+** para criar um procedimento de formato livre ou estruturado. Veja
[Procedimentos de formato livre](/docs/pt/eleven-agents/customization/procedures/free-form-procedures)
e
[Procedimentos estruturados](/docs/pt/eleven-agents/customization/procedures/structured-procedures)
para orientações de criação.

#### Gerenciar pela API

Os rascunhos de procedimentos seguem o [ciclo de vida do versionamento de agentes](/docs/pt/eleven-agents/operate/versioning#drafts). Eles são por usuário e por branch, portanto cada
membro da equipe tem rascunhos separados em cada branch. A publicação salva suas alterações no procedimento em uma nova
versão imutável do agente nesse branch. Os rascunhos de outros usuários não são afetados.

As respostas de configuração do agente incluem metadados de procedimentos, como IDs, nomes, tipos e
gatilhos, mas não os corpos ou rascunhos dos procedimentos. Use os endpoints de procedimentos para ler e editar o
conteúdo completo. Todos os endpoints de procedimentos estão aninhados em
`/v1/convai/agents/{agent_id}/branches/{branch_id}`.

### Criar ou atualizar um rascunho

Crie um procedimento com `POST /procedures`. Atualize-o com
`PATCH /procedures/{procedure_id}/draft`, incluindo `name`, `content`, `type` e `trigger`
em todas as solicitações.

Use `GET /procedures/{procedure_id}/draft` para ler alterações não publicadas. Se você não tiver um rascunho,
o endpoint retornará a versão publicada.

### Publicar as alterações

Publique o rascunho criando uma nova versão do agente. Procedimentos de formato livre podem ser publicados
diretamente. Para procedimentos estruturados, primeiro chame `/procedures/compile` para gerar um workflow.

Siga as instruções específicas do tipo para
[procedimentos de formato livre](/docs/pt/eleven-agents/customization/procedures/free-form-procedures#manage-a-free-form-procedure)
ou
[procedimentos estruturados](/docs/pt/eleven-agents/customization/procedures/structured-procedures#manage-a-structured-procedure).

### Descartar ou remover um procedimento

`DELETE /procedures/{procedure_id}/draft` descarta edições não publicadas e restaura a
versão publicada. Se o procedimento nunca tiver sido publicado, ele será excluído.

`DELETE /procedures/{procedure_id}` prepara a remoção de um procedimento publicado. Publique a
alteração usando o mesmo fluxo específico do tipo.

Consulte a [referência da API de procedimentos](/docs/pt/api-reference/agents/procedures/) para ver os esquemas
completos dos endpoints.

## Limitações

* O conteúdo de um procedimento é limitado a 50.000 caracteres.
* Não é possível alterar o tipo de um procedimento depois de criá-lo.
* Os procedimentos pertencem a um único agente. Eles não podem ser compartilhados entre agentes nem armazenados como recursos no nível do workspace.
* Duplicar um agente copia seus procedimentos em vez de compartilhá-los. As cópias recebem novos IDs de procedimento, portanto as referências no agente duplicado devem usar esses novos IDs.
* Procedimentos estruturados não podem fazer referência a documentos da base de conhecimento.