Skip to main content

Pro Tips

This page collects practical workflows that make Libre WebUI feel faster, cleaner, and more reliable in daily use.

Keep a Small Daily Model Loaded​

Use a fast local model for routine work and switch to larger models only when the task needs it.

Good daily-driver examples:

  • gemma3:4b for fast everyday chat
  • qwen3:8b for stronger general work
  • deepseek-r1:8b for reasoning prompts
  • nomic-embed-text for document embeddings

Open Models to see which models are running. Unload models you are not using when VRAM gets tight.

Use Personas for Repeatable Work​

Create personas for workflows you repeat:

  • A concise code reviewer with low temperature.
  • A writing editor with a clear style guide.
  • A research assistant with document search enabled.
  • A support assistant with a fixed tone and response structure.

Personas store the selected model, system prompt, generation parameters, avatar/background, and optional memory/mutation settings. They can also be exported and imported as JSON.

Make Artifacts More Reliable​

Libre WebUI detects explicit artifact tags, fenced code blocks, standalone HTML documents, and common multi-file HTML bundles. To get the best artifact output from a model, ask for:

Create one complete self-contained HTML file.
Inline the CSS and JavaScript.
Do not rely on external files unless they are CDN URLs.

If you want separate blocks, name them clearly:

```html filename="index.html"
...
```

```css filename="style.css"
...
```

```js filename="app.js"
...
```

Libre WebUI will try to bundle local CSS and JavaScript blocks into the HTML preview.

Use Document Chat Deliberately​

Document Chat currently accepts PDF and plain-text files up to 10 MB. Search works in two modes:

  • Keyword search is always available.
  • Semantic search is used when embeddings are enabled in Settings and an embedding model is available.

Install nomic-embed-text if you want an easy local embedding model:

ollama pull nomic-embed-text

For best results, upload focused documents per chat instead of one huge mixed document set.

Tune Generation Settings​

SettingPractical use
TemperatureLower for accuracy, higher for creative exploration
Top P / Top KLeave defaults unless you are deliberately tuning sampling
Context windowIncrease for long chats only if your model and memory can handle it
Max tokensLimit long answers or raise for code/artifact generation
Repeat penaltyRaise slightly when a model loops

When a model behaves badly, first lower temperature, then reduce context pressure, then try another model.

Keep Provider Keys Per User​

Provider plugins can read environment keys, but user-level credentials are usually cleaner for shared installs. Add keys in Settings so each user controls their own provider access.

Use backend environment variables for deployment-wide defaults or automated installs.

Make Remote Access Predictable​

For phone or LAN access, bind the dev server to the network interface:

npm run dev:host

Then open the machine’s LAN or Tailscale IP from the other device. In production, set CORS_ORIGIN and the frontend API URL explicitly so browsers do not fall back to localhost.

Keep Docs and UI in Sync​

The product changes quickly. Prefer durable docs that describe behavior and workflows, and let the UI show live model lists from providers. Avoid copying long provider catalogs into docs unless the list is generated by the app.