# LLM providers

> Conecte o PentAGI a providers nativos como OpenAI, Anthropic, Gemini, Bedrock e Ollama, ou a qualquer endpoint compatível com OpenAI, com failover.

O PentAGI precisa de pelo menos um [provider](https://pentagi.com/pt-br/docs/glossary/#provider) de modelo de linguagem. As credenciais são definidas no servidor em `.env`; cada [flow](https://pentagi.com/pt-br/docs/glossary/#flow) então escolhe o provider em que será executado, e cada [agent type](https://pentagi.com/pt-br/docs/glossary/#agent-type) pode usar suas próprias configurações de modelo.

## [Providers integrados](https://pentagi.com/pt-br/docs/configuration/llm-providers/#built-in-providers)

| Provider             | Variável de chave                                               | Substituição de endpoint |
| -------------------- | --------------------------------------------------------------- | ------------------------ |
| OpenAI               | `OPEN_AI_KEY`                                                   | `OPEN_AI_SERVER_URL`     |
| Anthropic            | `ANTHROPIC_API_KEY`                                             | `ANTHROPIC_SERVER_URL`   |
| Google AI (Gemini)   | `GEMINI_API_KEY`                                                | `GEMINI_SERVER_URL`      |
| AWS Bedrock          | `BEDROCK_REGION` + um método de autenticação                    | `BEDROCK_SERVER_URL`     |
| Ollama               | `OLLAMA_SERVER_URL` (`OLLAMA_SERVER_API_KEY` para Ollama Cloud) | —                        |
| DeepSeek             | `DEEPSEEK_API_KEY`                                              | `DEEPSEEK_SERVER_URL`    |
| GLM (Zhipu AI)       | `GLM_API_KEY`                                                   | `GLM_SERVER_URL`         |
| Kimi (Moonshot AI)   | `KIMI_API_KEY`                                                  | `KIMI_SERVER_URL`        |
| Qwen (Alibaba Cloud) | `QWEN_API_KEY`                                                  | `QWEN_SERVER_URL`        |
| MiniMax              | `MINIMAX_API_KEY`                                               | `MINIMAX_SERVER_URL`     |
| Mistral              | `MISTRAL_API_KEY`                                               | `MISTRAL_SERVER_URL`     |
| xAI (Grok)           | `XAI_API_KEY`                                                   | `XAI_SERVER_URL`         |

### [Autenticação do AWS Bedrock](https://pentagi.com/pt-br/docs/configuration/llm-providers/#aws-bedrock-authentication)

Defina `BEDROCK_REGION` e escolha um método:

```bash
BEDROCK_DEFAULT_AUTH=true          # AWS SDK default credential chain (EC2/ECS roles)
# BEDROCK_BEARER_TOKEN=...         # bearer token
# BEDROCK_ACCESS_KEY_ID=...        # static credentials
# BEDROCK_SECRET_ACCESS_KEY=...
```

### [Anthropic sem uma chave de longa duração](https://pentagi.com/pt-br/docs/configuration/llm-providers/#anthropic-without-a-long-lived-key)

Em vez de `ANTHROPIC_API_KEY`, o Anthropic pode ser usado com Workload Identity Federation por meio de `ANTHROPIC_FEDERATION_RULE_ID`, `ANTHROPIC_ORGANIZATION_ID`, `ANTHROPIC_SERVICE_ACCOUNT_ID` e um token de identidade (`ANTHROPIC_IDENTITY_TOKEN` ou `ANTHROPIC_IDENTITY_TOKEN_FILE`).

## [Endpoints personalizados e compatíveis com OpenAI](https://pentagi.com/pt-br/docs/configuration/llm-providers/#custom-and-openai-compatible-endpoints)

Qualquer API compatível com OpenAI — vLLM, LiteLLM, OpenRouter, DeepInfra, Atlas Cloud, o plano Go da OpenCode ou uma implantação do Azure OpenAI — deve ser configurada como o provider personalizado:

```bash
LLM_SERVER_URL=https://your-endpoint/v1
LLM_SERVER_KEY=your_key
LLM_SERVER_MODEL=model-name
LLM_SERVER_CONFIG_PATH=/opt/pentagi/conf/custom.provider.yml
```

`LLM_SERVER_KEY` é obrigatório: para um servidor sem autenticação, como o vLLM por padrão, defina qualquer valor não vazio — com uma chave vazia, o provider personalizado fica desabilitado. `LLM_SERVER_API_TYPE=azure` alterna o provider personalizado para Azure OpenAI. Um arquivo de configuração de provider permite atribuir um modelo e parâmetros por agent type; comece a partir de `examples/configs/custom-openai.provider.yml` no repositório e substitua seu `o3-mini`, que a OpenAI descontinuará em 23 de outubro de 2026.

![Providers configurados em Settings → Providers](https://pentagi.com/images/product/settings-providers.webp)

## [Failover](https://pentagi.com/pt-br/docs/configuration/llm-providers/#failover)

`LLM_FALLBACK_PROVIDER` nomeia um segundo provider: um built-in com credenciais em `.env`, como `anthropic`, ou um provider que o dono do flow salvou em **Settings → Providers**. Uma chamada de modelo que falha é repetida uma vez nele e a troca é registrada no trace; a próxima chamada começa novamente no provider próprio do flow.

## [Escolhendo modelos](https://pentagi.com/pt-br/docs/configuration/llm-providers/#choosing-models)

* Use seu modelo mais poderoso para `primary_agent`, `pentester` e `adviser`; modelos mais leves funcionam bem para `searcher`, `enricher` e sumarização.
* Para modelos abertos com menos de 32B parâmetros, ative o [monitoramento de execução e planejamento de task](https://pentagi.com/pt-br/docs/concepts/agents/#safeguards).
* **Settings → Providers** contém os perfis de provider que você cria com base nos tipos configurados — **Create Provider** oferece apenas os tipos com credenciais em `.env` — e o formulário de perfil testa uma configuração antes de você salvá-la.