You can add multiple Local / network rows. Each gets a nickname (
Local, Local 2, …). Duplicate host URLs are refused.
Ollama on this machine
1
Install and pull a model
qwen3:30b-a3b. Pin Llama or another tag on the seat if you prefer.2
Connect Ollama in Settings
Settings → Providers → Add provider → Ollama.
- Base URL — leave blank for
http://127.0.0.1:11434/v1, or set a remote Ollama (http://100.x.x.x:11434/v1). - Key — leave blank. Click Save.
3
Add an agent
Add agent → Ollama. porto probes
/api/tags and fills the model list from that host.Any OpenAI-compatible host
Use this for vLLM, LM Studio, llama.cpp, or a machine on Tailscale that is not “Ollama-the-product”.1
Start the host so it serves `/v1/chat/completions`
Examples of base URLs porto expects:
2
Add Local / network
Settings → Providers → Add provider → Local / network.
- Nickname — auto-filled (
Local, thenLocal 2). - Host URL — required. Paste the
/v1base. - API key — only if that host requires one.
3
Refresh models, then add an agent
After Save, porto lists models from that host. Add agent and pick the Local row (not a cloud provider).
Remote Ollama (LAN / AWS)
Same Ollama card. Set Base URL to the remote host’s OpenAI-compat root (http://host:11434/v1). porto still uses that host’s /api/tags for the live list.
If the model list is empty
Host is not reachable from the API process
Host is not reachable from the API process
127.0.0.1 means the machine running uvicorn, not your laptop, if the API is in Docker. Point the URL at a host the backend can route to, or run the from-source API on the same machine as Ollama.URL missing `/v1`
URL missing `/v1`
Local / network wants an OpenAI-compatible root.
http://127.0.0.1:11434 without /v1 is the wrong shape for that type. Use the Ollama type, or add /v1.Nothing pulled yet
Nothing pulled yet
ollama list should show at least one model. Pull one, then re-save the provider so the list refreshes.
