Erro Interno do Servidor do Discourse AI

Estou executando o Discourse via docker auto-hospedado em uma VM Ubuntu. Instalei o plugin Discourse AI sem problemas, todas as configurações aparecem no painel de administração, no entanto, quando tento usar qualquer serviço de IA ou testá-los no painel de administração, encontro estes erros. Francamente, não tenho ideia do que está acontecendo aqui, consigo pingar a API da OpenAI e a do Google dentro do docker com curl -I <site da api>, mas a implementação real do Discourse AI parece ter algum erro que está muito além da minha capacidade de compreensão.

O site é executado através do Cloudflare Zero Trust, se isso faz alguma diferença.

Timeout::Error (Timeout::Error)
lib/final_destination/resolver.rb:31:in `block in lookup'
lib/final_destination/resolver.rb:8:in `synchronize'
lib/final_destination/resolver.rb:8:in `lookup'
lib/final_destination/ssrf_detector.rb:128:in `lookup_ips'
lib/final_destination/ssrf_detector.rb:96:in `lookup_and_filter_ips'
lib/final_destination/http.rb:15:in `connect'
app/controllers/application_controller.rb:427:in `block in with_resolved_locale'
app/controllers/application_controller.rb:427:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/middleware/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:410:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:385:in `call'

Editar:
Selecionar a caixa de seleção “Desativar suporte nativo a ferramentas (usar ferramentas baseadas em XML) (opcional)” com a OpenAI agora tem uma taxa de sucesso de 50% no teste, mas não faz nada para o Gemini. Se algo, acho que isso me deixou mais confuso.

1 curtida

Desculpe por reclassificar isso como suporte, mas olhando para o erro, houve um timeout resolvendo DNS dentro do seu contêiner.

Isso é um forte indicador de que o DNS não está configurado corretamente no host e/ou está usando um resolvedor lento / subótimo.

O erro em particular não tem a ver com o cloudflare.

2 curtidas

Esta função deveria ter ido primeiro para suporte, o cérebro está um pouco frito da última semana de configuração de servidor e configuração de discourse, obrigado!

No final, corrigido, não tenho certeza de qual das três alterações que fiz o fez. Mas para o benefício de qualquer pessoa no futuro.

  1. Alterei o DNS do DNS do Google para o DNS da Cloudflare
  2. Aumentei os recursos alocados da VM Ubuntu de 4c8t para 8c16t e de 16 GB para 32 GB de RAM
  3. Aumentei o número de unicórnios de 8 para 16
1 curtida

Este é muito provavelmente o caso, o Google DNS é ótimo, mas talvez seu droplet / VM / o que quer que seja não estivesse roteando corretamente para ele.