# Embeddings

> Escolha o modelo de embedding usado na memory e na busca de conhecimento do PentAGI.

Os embeddings alimentam a busca semântica na [memory](https://pentagi.com/pt-br/docs/glossary/#memory), na [knowledge base](https://pentagi.com/pt-br/docs/glossary/#knowledge-base) e em resultados anteriores. A OpenAI é o [provider](https://pentagi.com/pt-br/docs/glossary/#provider) padrão; sem `EMBEDDING_MODEL` definido, ele usa `text-embedding-ada-002`. Um exemplo de configuração em `.env`:

```bash
EMBEDDING_PROVIDER=openai          # openai, ollama, mistral, jina, huggingface, googleai, voyageai
EMBEDDING_MODEL=text-embedding-3-small
# optional custom endpoint
EMBEDDING_URL=
# provider API key, if required
EMBEDDING_KEY=
EMBEDDING_BATCH_SIZE=512               # default
EMBEDDING_MAX_TEXT_BYTES=8192          # default
```

Qualquer serviço que implemente a API `/embeddings` da OpenAI funciona com `EMBEDDING_PROVIDER=openai` e uma `EMBEDDING_URL` personalizada.

> [!WARNING]
> Se você alterar o provider de embeddings ou o modelo, recalcule os vetores armazenados com `docker exec -it pentagi /opt/pentagi/bin/etester reindex` — vetores de modelos diferentes não são comparáveis. Não execute `etester flush` para isso: ele exclui todos os documentos armazenados, incluindo a knowledge base.

## [Certificados CA personalizados](https://pentagi.com/pt-br/docs/configuration/embeddings/#custom-ca-certificates)

Se um backend de modelo ou servidor de [tool](https://pentagi.com/pt-br/docs/glossary/#tool) usar uma CA privada e você vir `x509: certificate signed by unknown authority`, coloque o bundle PEM no volume `pentagi-ssl` e aponte o PentAGI para ele:

```bash
EXTERNAL_SSL_CA_PATH=/opt/pentagi/ssl/ca-bundle.pem
EXTERNAL_SSL_INSECURE=false
```

Depois reinicie com `docker compose up -d pentagi`.