Elena' s AI Blog

What to Do With a Private AI Lab Once It Actually Works

14 Oct 2026 (updated: 15 Oct 2026) / 17 minutes to read

Elena Daehnhardt

Generated by ChatGPT-5. Prompt: AI-assisted coding workspace inspired by Cursor — November 2025.


TL;DR:
  • A private lab is two HTTP APIs, not a website you have to babysit. Call Ollama at :11434 when you only need a model; call Open WebUI at :3000 when you need RAG over a knowledge base.
  • Use the tagged model id llama3.2:latest everywhere. Ollama accepts bare llama3.2, but the tagged id works in both places.
  • Wait for /health before any Open WebUI script. Then pick one real job — a contradiction hunt across old posts, or a reader email answered from the archive — before you index four hundred files.

The setup post gets Ollama, Open WebUI, and a private RAG pipeline onto your own hardware. That is the install. This is the month-later question I actually cared about: now that the stack answers LOCAL MODEL WORKS and can retrieve a launch code from a Markdown file, what is it for?

I did not build a ChatGPT clone so I could type into localhost:3000 for fun. I built it so scripts — and the rest of a publishing pipeline — can talk to a model that never leaves the Mac, and so that model can be forced to answer from my posts rather than from whatever it half-remembers about Git remotes.

Two doors. Same lab.

You need Call Why
A sentence, a label, a title Ollama on :11434 No login, no UI, no vector store
An answer grounded in your documents Open WebUI on :3000 That is where the knowledge base lives

If you only remember one thing: Planner-style jobs go to Ollama. “Ground this in the blog” goes to Open WebUI. Mixing them up is how you either skip retrieval or pay for a Docker container you are not using.


Wait until it is actually up

docker compose up -d printing Started means the container exists. It does not mean the UI is serving. Open the browser too early and you get a blunt 500: Internal Error — usually Open WebUI still migrating, or Docker just OOM-killed it and it is coming back. I have watched an 8 GB Docker VM murder a perfectly innocent 600 MB UI because the VM was already full of other stacks. That is not an Ollama problem.

curl http://127.0.0.1:3000/health

You want {"status":true}. Then open the UI, or run a script. Not before.


Door one: Ollama from Python

Use this when the job does not need your archive. Classify a subject line. Draft three titles. Ask for a one-sentence summary of a paragraph you are about to paste in. The process on :11434 is the same engine the UI uses; you are just skipping the orchestration layer.

The model id is llama3.2:latest. I will keep saying that, because llama3.2 looks right and returns 400 Model not found.

import requests

r = requests.post(
    "http://127.0.0.1:11434/api/chat",
    json={
        "model": "llama3.2:latest",
        "messages": [{"role": "user", "content": "One sentence: what is this lab?"}],
        "stream": False,
        "options": {"temperature": 0, "num_ctx": 8192},
    },
    timeout=180,
)
print(r.json()["message"]["content"])

Embeddings for a homemade index — if you ever outgrow Open WebUI’s store — are the same host:

POST http://127.0.0.1:11434/api/embed
model: nomic-embed-text:latest

There is an ollama Python package if you prefer ollama.chat(...). I have been using requests because it is already in the lab tests and it makes the HTTP obvious.


Door two: Open WebUI when the documents have to win

🔒 Subscribe to keep reading.

What I actually use it for

🔒 Subscribe to keep reading.

Putting the archive on disk without drowning the index

🔒 Subscribe to keep reading.

What I am not doing with it yet

🔒 Subscribe to keep reading.

Quick-start checklist

🔒 Subscribe to keep reading.

References

🔒 Subscribe to keep reading.

You've hit a Deep Dive tutorial.

I spend dozens of hours researching, coding, and breaking things to write these guides. This content is free, but reserved for my subscriber community. Drop your email below to unlock this guide (and all past/future deep dives):

Already a subscriber? Use the magic link from your last newsletter, or reset your password.

New subscribers get an inbox mail: Set a password to unlock articles. The form does not log you in — use the same email afterwards.

desktop bg dark

About Elena

Elena, a PhD in Computer Science, simplifies AI concepts and helps you use machine learning.

Citation
Elena Daehnhardt. (2026) 'What to Do With a Private AI Lab Once It Actually Works', daehnhardt.com, 14 October 2026. Available at: https://daehnhardt.com/blog/2026/10/14/private-ai-lab-python-use-cases/
All Posts