Confiabilidade e cache
Resiliência por modelo e cache de completions com isolamento entre tenants.
Em Model Inventory -> Edit -> Resilience (desabilitado por padrão), RetryLimit define tentativas no mesmo backend; RetryStatuses define códigos reintentáveis (padrão 429 e 5xx); ReliabilityMode escolhe off/failover/distribute; PrimaryShare define peso e AlternateEndpoints lista alternativas. Failover tenta em ordem; Distribute usa pesos. off com RetryLimit 0 faz uma chamada. Streams não são armazenados; retry/failover só antes do primeiro byte.
Cache opcional para chat completions/messages: Exact reutiliza prompts idênticos; Semantic usa embeddings locais (limite padrão 0.98). Escopos global, model, modelgroup, agent, agentgroup; prioridade agent > agentgroup > model > modelgroup > global. A chave inclui endpoint, corpo mascarado e backend por padrão, nunca cabeçalhos de autenticação.
Não armazena streams, prompts sinalizados/mascarados por PII, respostas bloqueadas ou upstream não JSON/não-2xx. Cache hit é reinspecionado. x-aifw-cache-refresh pula leitura, permite gravação. Identidade vem do principal autenticado; cada API key tem namespace separado. Cache anônimo desativado por padrão; se ativo, separação por IP e sem camada semântica. Limites de memória aplicados.
Cache cobre OpenAI chat e Anthropic Messages nativos, não facades. Respostas 2xx vazias/não JSON são excluídas.