> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kombify.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Personal AI

> Run a private chat workbench on your host with owner custody and explicit model downloads

<Info>
  Evidence state (2026-09-17, v0.35.0): Personal AI is experimental. The
  current public release declares its components (Ollama and Open WebUI), and
  no automated lifecycle run covers install, apply, verify, backup, or restore
  yet. Runtime evidence is pending.
</Info>

Personal AI runs a chat interface for language models on your Linux Docker host. The local owner receives the initial administrator account, public signup is disabled, and no kombify account is required. The release catalog calls this use case Private AI and delivers it as the optional `ai` workload with the `private-ai` alternative.

## Applications

* [Ollama](https://ollama.com) serves the model.
* Open WebUI provides the chat interface you sign in to.

This page covers both, because they are selected and operated together.

## Check your host capacity first

The CPU profile has a declared host floor of 4 CPU cores, 12 GiB RAM, and 40 GiB disk; 8 CPU cores, 16 GiB RAM, and 80 GiB disk are recommended. Model size matters on top of that floor:

* Ollama has a declared 6 GiB RAM limit. The downloaded model weights plus the context you use must fit inside it.
* Open WebUI has a declared 2 GiB RAM limit.
* Allow disk space for container images and for downloaded model weights together.
* GPU serving is not enabled; a higher compute tier uses the same CPU runtime.

These limits describe capacity, not response speed. Check the available host resources and the chosen model's requirements before installation. See [Choose a StackKit](/guides/stackkits/choosing-a-kit) for compute profiles.

## Select the AI workload

From an empty owner workspace:

```bash theme={null}
stackkit init basement-kit --platform standalone-compose \
  --use-case ai --use-case-alternative ai=private-ai \
  --use-case-alternative basement-core=standalone \
  --module-compute-profile stackkits-basement-core-runtime=standard \
  --module-compute-profile stackkits-private-ai-runtime=standard \
  --owner-source=local --non-interactive
```

The init command creates the AI configuration and its private credential references. When adding AI to an existing workspace, update the [StackSpec](/guides/stackkits/configure-stack-spec) and run `stackkit secrets materialize`. Review and apply the configuration:

```bash theme={null}
stackkit validate
stackkit generate
stackkit plan --json
stackkit apply
stackkit verify
```

Run Apply on the supported Linux host using its observed inventory; see [Review, plan, and apply](/guides/stackkits/review-plan-and-apply).

## Open the AI route as the owner

After apply, open the generated AI route. Open WebUI creates its initial administrator from the established local owner's identity and the `owner-password` secret that the init command placed in owner custody. From your StackKits workspace, retrieve the initial password in a private terminal:

```bash theme={null}
stackkit secrets reveal --workload ai --slot owner-password
```

* Keep the displayed password private and do not copy it into chats, screenshots, or Git.
* Change the password inside Open WebUI after the first login. The startup bootstrap does not reset an existing account, so keep your changed administrator password in your own custody.

## Choose and download a model explicitly

No model is selected or pulled for you, not during install, restart, or upgrade. In Open WebUI, open **Admin Settings**, explicitly select an Ollama model, and request its download. Before you pick one, review the upstream model's license, download size, quantization, context length, and RAM requirements.

Start with a small model on the CPU profile. Larger models and longer contexts need more memory. A model that downloads successfully may still exceed the available inference capacity.

Ollama's API has no host-published port. Open WebUI reaches it on the private workload network. Ollama has outbound network access for requested downloads.

## Ask your first question

Create a new chat in Open WebUI, select the downloaded model, and send a question. The model runs on your host. Reopen the chat to check that your conversation was saved.

## What persists where

Storage is split deliberately:

| What                      | Where                                                      | Backup behavior                                                    |
| ------------------------- | ---------------------------------------------------------- | ------------------------------------------------------------------ |
| Chats and Open WebUI data | Persistent `open-webui-data` volume at `/app/backend/data` | Declared backup source; complete AI restoration remains unverified |
| Downloaded model weights  | Persistent `ollama-models` volume at `/root/.ollama`       | Not a backup source; excluded from backups                         |

Chats and model weights persist across container replacement. Keep the model name and digest so you can identify it again if its storage is lost. Model availability depends on its upstream source. Complete AI backup and restoration remain unverified; container persistence alone does not establish recovery. See [Back up and restore](/guides/stackkits/back-up-and-restore) for the workspace lifecycle.

## Troubleshooting

| State                                                       | What to do                                                                                                                                                      |
| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Apply blocks the host with a capacity reason                | Check the host floor above; does the host meet the 4 CPU / 12 GiB / 40 GiB floor and does the model you intend to load fit the 6 GiB Ollama limit?              |
| Initial administrator login fails                           | Use the owner's email and initial password for the first login. After changing it, use your new password; restarting does not reset an existing account.        |
| A previously downloaded model is missing                    | Check the selected model and the persistent model volume. Ordinary container replacement preserves it. A new or lost model store requires an explicit download. |
| Responses stall or the container stops                      | Check workload logs and available memory. A smaller model or shorter context reduces memory use; CPU inference may also take time.                              |
| AI owner secret references missing in an existing workspace | After changing the canonical intent, run the existing `stackkit secrets materialize`; generation alone does not mint secrets.                                   |

If a question is not covered above, check the [Node Hub](/guides/stackkits/node-hub) status for the workload containers before changing anything in the generated runtime directory.
