Ollama takes no key at all - only an address - so the whole failure surface here is whether your browser is allowed to talk to the runtime.
Ollama Supported Models ->Ollama issues no key. Big-AGI needs an address, and the entire failure surface is reachability: whether your browser is permitted to talk to the runtime. The hosted app connects to a local runtime as happily as a self-hosted one (models on your own machine).
Take the runtime from ollama.com/download, then pull one model with ollama pull <model>. Weights are large and speed follows your memory and GPU, so start small.
Once running, the runtime serves at http://127.0.0.1:11434. Ollama's own FAQ states it binds that address and port by default.
The runtime accepts 127.0.0.1 and 0.0.0.0 as browser origins and refuses the rest until you list them in its OLLAMA_ORIGINS variable. You need that when Big-AGI is loaded from a web address and dials the runtime from your browser. The FAQ carries the per-OS instructions; set the variable and restart the runtime.
Open Models (Ctrl + Shift + M), press More Services if the Setup AI Models wizard appears, then Add -> Ollama. Put the address in Ollama Host and press Models; an empty field means http://127.0.0.1:11434 is used (add and manage your keys). The models you pulled filling the list below is the confirmation.
Always eligible here, and usually the setting that makes this work. With it off, the fetch is made by the Big-AGI fast edge servers, which cannot see your 127.0.0.1. The toggle says as much in a green tooltip: Recommended ON for local services.
Direct Connection works only with your API key stored in the browser, and with an AI service that permits direct browser calls (CORS). Where it cannot be used, requests route through the Big-AGI fast edge servers instead - everything still works, within the standard upload size and time limits.
Two panels: with Direct Connection off, the fetch is made by a Big-AGI server that sits outside your machine and has no route to your 127.0.0.1. Turning Direct Connection on sends the request from your browser straight to the runtime. Running Big-AGI on your own machine puts the server inside the same machine instead.
The third route gives the runtime an address a server elsewhere can reach: nginx on the same machine as Ollama, under a domain you control.
sudo apt install nginx certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com
Then the location block, in that server's nginx config:
location /ollama/ {
proxy_pass http://127.0.0.1:11434/;
# Disable buffering for the streaming responses (SSE)
proxy_set_header Connection '';
proxy_http_version 1.1;
chunked_transfer_encoding off;
proxy_buffering off;
proxy_cache off;
# Longer timeouts (1hr)
keepalive_timeout 3600;
proxy_read_timeout 3600;
proxy_connect_timeout 3600;
proxy_send_timeout 3600;
}
Ollama Host then takes https://yourdomain.com/ollama. The buffering and cache lines keep streamed tokens arriving one at a time; the hour-long timeouts cover a slow first token on a cold model. chunked_transfer_encoding off belongs to this hop, the one in front of Ollama - do not copy it into a proxy that fronts Big-AGI itself.
The runtime issues no credential, so whoever reaches that URL is using your hardware. Put authentication in front of the location block.
| What you see | What it means | What to do |
|---|---|---|
[Ollama network issue]: Could not connect: | Wrong address, or the runtime is not running. | I don't see the model I want |
403 Forbidden from 127.0.0.1:11434 | The runtime is refusing your browser's origin. | Set OLLAMA_ORIGINS per the FAQ: my local models don't show up |
BIG-AGI
Resources
© 2026 Token Fabrics·Built with passion in San Diego