Hi everyone,
We are exploring Discourse AI to provide a conversational assistant within our Discourse forum for helping users with navigation, features, categories, topics, and general forum-related questions.
We have access to our organization’s own LLM APIs for GPT and Claude , and we would like to understand how these models can be configured as providers within Discourse AI. Our goal is to use the LLM capabilities to build a more contextual conversational assistant within our Discourse
Current LLM Configuration
We currently have access to an OpenAI-compatible internal API endpoint:
Endpoint:
https://genai-nexus.api.corpinter.net/openai/deployments/gpt-5.5/chat/completions?api-version=2024-10-21
Model:
gpt-5.5
We are particularly interested in guidance from anyone who has configured Discourse AI with an enterprise/internal OpenAI-compatible API gateway rather than directly using OpenAI’s public API.
Any configuration examples or recommendations would be greatly appreciated.
Thanks in advance!
Falco
(Falco)
17 augustus 2026 om 17:21
2
Pick openai as the provider, and configure the URL with the one you have.
Have tried selecting openAI as the provider and tried still not able to configure..
Any other way or recommendation??
kddkd
(用户16)
17 augustus 2026 om 18:00
4
I am also using this API. My model ID is gpt-5.6-sol, and it is currently running without issues.
Can you tell me how did you configured.. For me its not running after providing all details..
kddkd
(用户16)
17 augustus 2026 om 18:26
6
In the admin panel, under AI-LLM-Unconfigured LLM Templates , select GPT-5.6 Sol , and then enter the two pieces of information provided by the third-party API:
URL of the hosted model service: for example ai.com/v1/responses
API key for the hosted model service: provided by the third party
Below, you can click the “Run Test” button. If it fails, it may be because the URL format is incorrect.
Yes after giving all this information am getting internal server error message
kddkd
(用户16)
17 augustus 2026 om 18:55
8
I tested your URL, but it did not return the information for this image. Could you please tell me which page this image is from?
The result of my test run without entering an API key was: Non-streaming request failed: {“message”:“Unauthorized”}
kddkd
(用户16)
17 augustus 2026 om 18:56
9
It looks like you need to take a screenshot of your full configuration page.
Moin
17 augustus 2026 om 20:03
11
Is there a more detailed error in the logs at forum.example.com/logs?
If you are using your internal IP you need to add the domain to the security filter in DISCOURSE_ALLOWED_INTERNAL_HOSTS
This is the logs
plugins/discourse-ai/lib/completions/dialects/dialect.rb:217:in 'DiscourseAi::Completions::Dialects::Dialect#trim_messages'
plugins/discourse-ai/lib/completions/dialects/dialect.rb:140:in 'DiscourseAi::Completions::Dialects::Dialect#translate'
plugins/discourse-ai/lib/completions/endpoints/base.rb:126:in 'DiscourseAi::Completions::Endpoints::Base#perform_completion!'
plugins/discourse-ai/lib/completions/endpoints/open_ai.rb:54:in 'DiscourseAi::Completions::Endpoints::OpenAi#perform_completion!'
plugins/discourse-ai/lib/completions/llm.rb:439:in 'DiscourseAi::Completions::Llm#generate'
plugins/discourse-ai/lib/configuration/llm_validator.rb:36:in 'DiscourseAi::Configuration::LlmValidator#run_test'
plugins/discourse-ai/app/controllers/discourse_ai/admin/ai_llms_controller.rb:159:in 'DiscourseAi::Admin::AiLlmsController#test'
actionpack (8.0.4) lib/action_controller/metal/basic_implicit_render.rb:8:in 'ActionController::BasicImplicitRender#send_action'
actionpack (8.0.4) lib/abstract_controller/base.rb:215:in 'AbstractController::Base#process_action'
activesupport (8.0.4) lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
app/controllers/application_controller.rb:442:in 'block in ApplicationController#with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in 'I18n::Base#with_locale'
app/controllers/application_controller.rb:442:in 'ApplicationController#with_resolved_locale'
actionpack (8.0.4) lib/action_dispatch/routing/route_set.rb:908:in 'ActionDispatch::Routing::RouteSet#call'
lib/middleware/omniauth_bypass_middleware.rb:35:in 'Middleware::OmniauthBypassMiddleware#call'
lib/middleware/crawler_hooks.rb:11:in 'Middleware::CrawlerHooks#call'
rack (2.2.23) lib/rack/tempfile_reaper.rb:15:in 'Rack::TempfileReaper#call'
rack (2.2.23) lib/rack/conditional_get.rb:27:in 'Rack::ConditionalGet#call'
rack (2.2.23) lib/rack/head.rb:12:in 'Rack::Head#call'
actionpack (8.0.4) lib/action_dispatch/middleware/cookies.rb:706:in 'ActionDispatch::Cookies#call'
actionpack (8.0.4) lib/action_dispatch/middleware/callbacks.rb:31:in 'block in ActionDispatch::Callbacks#call'
activesupport (8.0.4) lib/active_support/callbacks.rb:100:in 'block in ActiveSupport::Callbacks#run_callbacks'
actionpack (8.0.4) lib/action_dispatch/middleware/debug_exceptions.rb:31:in 'ActionDispatch::DebugExceptions#call'
actionpack (8.0.4) lib/action_dispatch/middleware/show_exceptions.rb:32:in 'ActionDispatch::ShowExceptions#call'
logster (2.20.1) lib/logster/middleware/reporter.rb:40:in 'Logster::Middleware::Reporter#call'
lib/middleware/default_headers.rb:13:in 'Middleware::DefaultHeaders#call'
railties (8.0.4) lib/rails/rack/logger.rb:41:in 'Rails::Rack::Logger#call_app'
railties (8.0.4) lib/rails/rack/logger.rb:29:in 'Rails::Rack::Logger#call'
lib/middleware/enforce_hostname.rb:23:in 'Middleware::EnforceHostname#call'
rack (2.2.23) lib/rack/method_override.rb:24:in 'Rack::MethodOverride#call'
actionpack (8.0.4) lib/action_dispatch/middleware/executor.rb:16:in 'ActionDispatch::Executor#call'
rack (2.2.23) lib/rack/sendfile.rb:127:in 'Rack::Sendfile#call'
rack-mini-profiler (4.0.1) lib/mini_profiler.rb:191:in 'Rack::MiniProfiler#call'
message_bus (4.4.1) lib/message_bus/rack/middleware.rb:60:in 'MessageBus::Rack::Middleware#call'
lib/middleware/request_tracker.rb:321:in 'Middleware::RequestTracker#call'
actionpack (8.0.4) lib/action_dispatch/middleware/remote_ip.rb:96:in 'ActionDispatch::RemoteIp#call'
lib/middleware/overload_protections.rb:22:in 'Middleware::OverloadProtections#call'
lib/middleware/processing_request.rb:14:in 'Middleware::ProcessingRequest#call'
railties (8.0.4) lib/rails/engine.rb:535:in 'Rails::Engine#call'
railties (8.0.4) lib/rails/railtie.rb:226:in 'Kernel#public_send'
railties (8.0.4) lib/rails/railtie.rb:226:in 'Kernel#method_missing'
rack (2.2.23) lib/rack/urlmap.rb:74:in 'block in Rack::URLMap#call'
rack (2.2.23) lib/rack/urlmap.rb:58:in 'Array#each'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in 'Unicorn::HttpServer#process_client'
unicorn (6.1.0)
any suggestion/recommendation regarding the logs i shared what to do next
In my experience, try changing the Context window value to something like 200000 or 128000.