Files
mesh-catalog/modules/ollama/module.json
jschoubben 29fe7c5bd0 local model: an ollama provider + a local-model consumer (ADR 0055)
Model access answered by a NODE, not a licence. `ollama` runs the model server
on host network (0.0.0.0:11434) and provides model-access at node scope, serving
its port and model — it mints nothing, so it is server-only, no runtime. The
`local-model-consumer` requires model-access, gets the endpoint (no secret), and
its templated openai.env carries OPENAI_BASE_URL=http://<at>:<port>/v1 +
OPENAI_MODEL. One provision, two answers: the mesh's own model behind the same
interface as a vendor's.

Proven end to end by the mesh-lab local-model bed (green).

Claude-Session: https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF
2026-09-07 05:25:21 +02:00

49 lines
954 B
JSON

{
"module": "ollama",
"version": "1",
"capabilities": [
"container-runtime"
],
"provides": [
{
"name": "model-access",
"scope": "node"
}
],
"listens": [
{
"port": 11434,
"protocol": "tcp",
"from": "machine",
"why": "consumers on this machine reaching the local model server's OpenAI-compatible API"
}
],
"serves": {
"model-access": {
"port": 11434,
"model": "llama3.2"
}
},
"resources": [
{
"id": "state",
"type": "directory",
"path": "/services/ollama",
"mode": "0700"
},
{
"id": "server",
"type": "container",
"name": "ollama",
"image": "ollama/ollama@sha256:32931b46719f673c05fdbaa81ccb26da18ea4a1c57590a754874ab28ba269eb2",
"network": "host",
"env": {
"OLLAMA_HOST": "0.0.0.0:11434"
},
"volumes": [
"/services/ollama:/root/.ollama"
]
}
]
}