diff --git a/CHANGELOG.md b/CHANGELOG.md index a47161b2d5..1175010f35 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ðŸ“Ķ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) +- ðŸ“Ķ **A smaller container image.** The image no longer carries a second copy of Python, two sets of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) - ðŸ–Ĩïļ **Every command in one terminal.** The terminal pane now carries a tab for each command a model is running alongside your own shell, so you can watch them as they go, move between them and take the shell yourself. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) - ðŸ—Ģïļ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry its name, description, starter prompts and valve labels once per language, written in a searchable table in its own editor or brought in as a JSON file, which is refused where a translation drops one of the placeholders the original fills in, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - ✏ïļ **Interface text you can reword.** An administrator can now replace the interface's own wording language by language from a panel in the admin settings, with a replacement refused where it drops one of the placeholders the original fills in. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) @@ -51,8 +51,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- ðŸŠķ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ðŸ§Ū **Slim keeps to one set of backends.** An instance built slim keeps its data in SQLite or PostgreSQL and its files on its own disk, which is what it does out of the box; a cloud storage bucket, another database engine or AWS IAM database logins now ask for the standard image. It searches what it stores through PostgreSQL alone, and can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ðŸŠķ **Slim runs with nothing configured.** An instance built slim starts and holds a conversation out of the box, the local models and the heavier machinery around them left out of the image, and each of the features that leaned on them now asks for a service of its own. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- 🗄ïļ **Slim keeps its data in SQLite or PostgreSQL.** A slim instance refuses to start against another database engine, or with AWS RDS IAM logins switched on, both of which take the standard image; SQLite, what it uses out of the box, needs nothing changed. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- 📁 **Slim keeps files on its own disk.** A slim instance refuses to start where file storage is pointed at an S3, Google Cloud or Azure bucket; local storage, what it uses out of the box, needs nothing changed. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ðŸ§Ū **Slim searches through pgvector.** Knowledge search in a slim instance runs on PostgreSQL with pgvector; pointed at another vector store, it reports itself unavailable the first time something searches rather than at startup. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- 🧠 **Slim asks for an embedding service.** A slim instance carries no embedding or reranking model of its own: knowledge needs one of the external embedding engines, reranking needs an external reranker or falls back to plain cosine scoring, and documents can no longer be split along a downloaded tokenizer. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- 📃 **Slim reads plain text by itself.** A slim instance reads text, Markdown, CSV, HTML and XML files as they are; a PDF, a Word file or a deck now takes one of the external extraction services. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- 🎙ïļ **Slim asks for a speech service.** A slim instance carries neither local Whisper nor local voices, so speech to text and text to speech each take an external engine, and the settings refuse a switch back to the local ones. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ðŸ•ļïļ **Slim reads pages without a browser.** A slim instance fetching a web page does it over plain HTTP or through an external loader; the built-in browser it used to drive is not carried. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- 🧊 **Slim cannot be built with the graphics card or Ollama options.** Building the slim image together with either is refused outright rather than producing an image carrying what slim leaves out. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - 🔎 **Slim leaves out DDGS.** The one web search engine that needs no key of its own is not carried in a slim build: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable, so a slim instance searching the web takes one of the other providers. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) - ðŸ“Ĩ **Slim fetches the code interpreter's packages as they are used.** A slim build carries the Python runtime that runs code in the browser but no longer the packages it draws on, from numpy and pandas to matplotlib and scikit-learn, which the browser now downloads from a public delivery network the first time code imports them rather than reading them from the instance. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ðŸ§ą **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) @@ -60,6 +67,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - 🔗 **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - 🖞ïļ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - 🔊 **Browser speech loads its engine from the instance.** The WebAssembly runtime behind on-device text-to-speech is now loaded from the files served alongside the interface rather than from a copy carried inside its JavaScript. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) +- ðŸ–Ļïļ **Chats are turned into PDFs by the browser alone.** Downloading a chat as a PDF is drawn in the browser, as it already was, and the server no longer offers to do it: the endpoint behind `POST /api/v1/utils/pdf` and the fonts it carried for the purpose are gone, which anything calling that endpoint directly will need to stop doing. [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) ## [0.11.3] - 2026-08-31