A self-hosted platform is only self-hosted if the model is too.
Ollama is a first-class provider in NopsAI: a named profile pointing at your Ollama base URL, restricted to the scopes you allow. It closes the last gap in a self-hosted deployment — the one where run content still leaves the network to reach a model.
Ollama inside a governed run.
How Ollama participates once it is connected — and what the platform does with what it returns.
A provider, not a workaround
Ollama is one of nine provider values NopsAI accepts, alongside Gemini, OpenAI, Anthropic, Groq, Mistral, OpenRouter, LM Studio and Azure OpenAI. It is configured the same way the hosted providers are, so nothing about the pipeline changes when you switch.
Selected by profile, per step
A pipeline, step or task names an llm_profile. Routing a sensitive step to a local Ollama model while a summarization step uses a hosted one is a one-line change in the step, not a fork of the workflow.
Scoped to environments
A profile carries allowed_scopes. A local model can be permitted in dev and denied in prod, or the reverse, without any pipeline needing to know which environment it will run in.
Accounted like any other model
Usage from an Ollama profile is recorded on the run with the effective subject, so local inference is visible in the same reporting as paid providers rather than being invisible because it has no invoice.
The controls that make it safe to leave connected.
An integration is easy to add and hard to bound. These are the parts that decide whether it stays reviewable six months later.
No credential required, and that is the point
An Ollama profile typically needs only a base URL reachable from your runners. There is no API key to rotate, no vendor account to govern and no third-party processor to add to a data-processing register.
Content sharing is still enforced
llm_content_sharing, llm_content_include and llm_content_ignore apply to Ollama exactly as they do to a hosted provider. A local model does not become an excuse to stop scoping what it can read.
Profiles are approved centrally
LLM profiles live in system configuration under Git review. A pipeline can reference an approved profile; it cannot point a step at an arbitrary model endpoint.
Blocking policy still applies
Under the default governance level, a policy review that cannot complete stops the run. A local model that is unreachable fails closed rather than being skipped.
Owned by Git, reviewed like code.
Configuration is a reviewable file rather than a form someone filled in once. Credentials appear as references; the values live in the encrypted registry.
default_profile: standard
profiles:
- name: local-ollama
provider: ollama
model: qwen2.5-coder:14b
base_url: http://ollama:11434/v1
allowed_scopes: ["dev"]
- name: hosted
provider: openai
model: gpt-4.1-mini
credential_ref: credential://system/llm/openai-hosted
allowed_scopes: ["dev", "prod"]Workflows where Ollama shows up.
The same integration, seen from the workflow rather than from the connection.
Production incident at 2 a.m.
At 2 a.m. the hard part is finding what changed and deciding whether rollback is safe — fast, without losing the evidence trail.
QA is blocked on unclear requirements
QA loses time reconstructing intent. Testing can start from the wrong assumption and clarification cycles cost a day or more.
A security vulnerability scan flags an issue
One vulnerability can span many repos and teams. Manual discovery is slow, incomplete and easy to miss under SLA pressure.
What teams ask about Ollama.
Does using Ollama mean no data leaves my network?
For model inference, yes — requests go to the base URL you configure, which is normally a service inside your own network. NopsAI itself is self-hosted, so the control plane, runners and evidence are already yours. What still leaves is whatever your pipeline explicitly reaches out to, such as a Git provider or an MCP server.
Can I mix local and hosted models in one pipeline?
Yes. llm_profile can be set on the pipeline, on a step and on a task, with the narrowest scope winning. A common pattern is a local model for steps that touch sensitive content and a stronger hosted model for the final summary.
How is an Ollama model kept out of production?
Set allowed_scopes on the profile. A profile that lists only dev cannot be selected by a run in a production scope, and the failure is a configuration error rather than a silent fallback to another model.
Map your Ollama workflow end to end.
Bring one real workflow. We will map its trigger, tools, approvals, runtime boundary and evidence requirements with you.

