Erros ao usar IA: "Timeout::Error"

Hoje e há algumas horas, meu bot de IA parou de funcionar e quase imediatamente responde com o seguinte erro. Mas nem sempre… às vezes, quando eu apenas pergunto se ele está disponível, ele responde, mas quando faço minha pergunta real, ele exibe a mesma mensagem de erro. Algumas vezes ele até conseguiu criar o título do tópico. Então, algo está funcionando, mas apenas de forma intermitente.

Desculpe, parece que nosso sistema encontrou um problema inesperado ao tentar responder.

Detalhes do erro

Timeout::Error

Este bot está conectado ao claude-sonnet-4-6 e tem funcionado perfeitamente há muito tempo. Além disso, quando verifico https://status.claude.com/, vejo que houve problemas ontem, mas não hoje.

Intuitivamente, sinto que deve ter a ver com a disponibilidade do Claude, mas não consigo identificar a causa exata. Aqui está o backtrace de um erro típico, caso ajude a encontrar a resposta.

Resumo
Message (12 copies reported)

Job exception: Timeout::Error

Backtrace

/var/www/discourse/lib/final_destination/resolver.rb:31:in 'block in FinalDestination::Resolver.lookup'
/var/www/discourse/lib/final_destination/resolver.rb:8:in 'Thread::Mutex#synchronize'
/var/www/discourse/lib/final_destination/resolver.rb:8:in 'FinalDestination::Resolver.lookup'
/var/www/discourse/lib/final_destination/ssrf_detector.rb:128:in 'FinalDestination::SSRFDetector.lookup_ips'
/var/www/discourse/lib/final_destination/ssrf_detector.rb:96:in 'FinalDestination::SSRFDetector.lookup_and_filter_ips'
/var/www/discourse/lib/final_destination/http.rb:12:in 'FinalDestination::HTTP#connect'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/net-http-0.9.1/lib/net/http.rb:1655:in 'Net::HTTP#do_start'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/net-http-0.9.1/lib/net/http.rb:1629:in 'Net::HTTP#start'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/net-http-0.9.1/lib/net/http.rb:1064:in 'Net::HTTP.start'
/var/www/discourse/plugins/discourse-ai/lib/completions/endpoints/base.rb:468:in 'block in DiscourseAi::Completions::Endpoints::Base#perform_completion_request_with_retries'
<internal:kernel>:168:in 'Kernel#loop'
/var/www/discourse/plugins/discourse-ai/lib/completions/endpoints/base.rb:444:in 'DiscourseAi::Completions::Endpoints::Base#perform_completion_request_with_retries'
/var/www/discourse/plugins/discourse-ai/lib/completions/endpoints/base.rb:196:in 'DiscourseAi::Completions::Endpoints::Base#perform_completion!'
/var/www/discourse/plugins/discourse-ai/lib/completions/llm.rb:258:in 'DiscourseAi::Completions::Llm#generate'
/var/www/discourse/plugins/discourse-ai/lib/agents/bot.rb:292:in 'DiscourseAi::Agents::Bot#reply'
/var/www/discourse/plugins/discourse-ai/lib/ai_bot/playground.rb:667:in 'DiscourseAi::AiBot::Playground#reply_to'
/var/www/discourse/plugins/discourse-ai/app/jobs/regular/create_ai_reply.rb:41:in 'Jobs::CreateAiReply#execute'
/var/www/discourse/app/jobs/base.rb:313:in 'block (2 levels) in Jobs::Base#perform'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/rails_multisite-9.0.0/lib/rails_multisite/connection_management/null_instance.rb:54:in 'RailsMultisite::ConnectionManagement::NullInstance#with_connection'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/rails_multisite-9.0.0/lib/rails_multisite/connection_management.rb:23:in 'RailsMultisite::ConnectionManagement.with_connection'
/var/www/discourse/app/jobs/base.rb:300:in 'block in Jobs::Base#perform'
/var/www/discourse/app/jobs/base.rb:297:in 'Array#each'
/var/www/discourse/app/jobs/base.rb:297:in 'Jobs::Base#perform'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:220:in 'Sidekiq::Processor#execute_job'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:185:in 'block (4 levels) in Sidekiq::Processor#process'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:180:in 'Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/lib/sidekiq/suppress_user_email_errors.rb:6:in 'Sidekiq::SuppressUserEmailErrors#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/lib/sidekiq/discourse_event.rb:6:in 'Sidekiq::DiscourseEvent#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/lib/sidekiq/pausable.rb:136:in 'Sidekiq::Pausable#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/job/interrupt_handler.rb:9:in 'Sidekiq::Job::InterruptHandler#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/metrics/tracking.rb:26:in 'Sidekiq::Metrics::ExecutionTracker#track'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/metrics/tracking.rb:134:in 'Sidekiq::Metrics::Middleware#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:173:in 'Sidekiq::Middleware::Chain#invoke'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:184:in 'block (3 levels) in Sidekiq::Processor#process'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:145:in 'block (6 levels) in Sidekiq::Processor#dispatch'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/job_retry.rb:118:in 'Sidekiq::JobRetry#local'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:144:in 'block (5 levels) in Sidekiq::Processor#dispatch'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/config.rb:39:in 'block in <class:Config>'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:139:in 'block (4 levels) in Sidekiq::Processor#dispatch'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:281:in 'Sidekiq::Processor#stats'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:134:in 'block (3 levels) in Sidekiq::Processor#dispatch'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/job_logger.rb:15:in 'Sidekiq::JobLogger#call'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:133:in 'block (2 levels) in Sidekiq::Processor#dispatch'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/job_retry.rb:85:in 'Sidekiq::JobRetry#global'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:132:in 'block in Sidekiq::Processor#dispatch'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/job_logger.rb:40:in 'Sidekiq::JobLogger#prepare'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:131:in 'Sidekiq::Processor#dispatch'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:183:in 'block (2 levels) in Sidekiq::Processor#process'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:182:in 'Thread.handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:182:in 'block in Sidekiq::Processor#process'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:181:in 'Thread.handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:181:in 'Sidekiq::Processor#process'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:86:in 'Sidekiq::Processor#process_one'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/processor.rb:76:in 'Sidekiq::Processor#run'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/component.rb:10:in 'Sidekiq::Component#watchdog'
/var/www/discourse/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.10/lib/sidekiq/component.rb:19:in 'block in Sidekiq::Component#safe_thread'

Acho que é hora de eu sair para fora e pisar na grama! :seedling: