Build a a website chat widget AI Bot with Ollama
Step-by-step guide to running a Ollama-powered AI bot on a website chat widget with LangBot: model setup, bot credentials, networking, testing and troubleshooting.
This recipe puts a Ollama model behind a a website chat widget bot. LangBot receives messages from a website chat widget, runs them through a pipeline, and sends the answer back, so you do not write any platform code.
Run open models locally with Ollama and serve them through LangBot's built-in Agent, so conversations never leave your machines.
What you need
- A running LangBot instance: LangBot Cloud (no server needed) or a self-hosted deployment with Docker or
uvx langbot. - A Ollama account or server you can call from LangBot.
- Nothing from a third party. Optionally a Cloudflare Turnstile site key and secret key for anti-abuse.
Networking
Visitors' browsers talk to LangBot directly, so LangBot must be reachable at a public HTTPS address. LangBot Cloud includes one.
1. Add the Ollama model
- Install Ollama and pull a model (for example
ollama pullfollowed by the model name). - In LangBot, open Models and add an LLM model with the provider set to Ollama and the request URL pointing at your Ollama server (by default port
11434). - If LangBot runs in Docker,
localhostis the container itself: use the host's address (for examplehost.docker.internal) instead.
2. Create a pipeline
Open Pipelines in the LangBot WebUI, create a pipeline (or edit the default one) and set AI as follows.
| Field | Value |
|---|---|
| Runner | Local Agent (built-in Agent) |
| Model | The model you just added. You can add fallback models. |
| Prompt | Instructions: who the bot is, tone, what it must not do. |
| Knowledge Bases | Optional. Attach a knowledge base so answers come from your documents. |
3. Create the a website chat widget bot
- Create a bot with the Web Page Bot adapter and bind a pipeline.
- Copy the embed code into your site and replace
localhost:5300with LangBot's public address.
4. Bind and test
Open the bot, select the pipeline you created, save and make sure the bot is enabled.
Open the page with the widget and start a conversation.
Troubleshooting
- Small local models may not support tool calling well; leave Tool Use off for models that do not support it.
- The widget does not load: the embed code still points at
localhost, or the LangBot address is not served over HTTPS. - Check Monitoring in the WebUI: every message, pipeline run and error is recorded there.
FAQ
Do I need a server with a public IP for a website chat widget?
Yes, or use LangBot Cloud. Visitors' browsers talk to LangBot directly, so LangBot must be reachable at a public HTTPS address. LangBot Cloud includes one.
Does the a website chat widget bot support streaming replies?
Check the platform feature matrix for what this platform supports. Replies are delivered once the AI back end has finished.
Can the same Ollama setup serve other platforms too?
Yes. A pipeline can be bound to many bots, so one configuration can answer on several platforms at once.
Related guides
- Full a website chat widget setup guide
- Model configuration
- Other AI back ends on a website chat widget: Dify · n8n · Coze · Langflow · DeepSeek
- Ollama on other platforms: Telegram · Discord · Slack · Lark (Feishu) · DingTalk · WeCom (internal app)
