发布日期: 2025-12-02
版本号: v0.6.41

Open WebUI 发布了 0.6.41 版本。此版本包含重要的数据库架构变更,对于多工作节点、多服务器或负载均衡的部署环境,必须同时更新所有实例,禁止滚动更新,否则新旧版本间的不兼容会导致应用程序故障。新功能主要包括:新增了频道协作功能,包括支持基于成员关系的“群组频道”和用于点对点私人对话的“私信频道”,频道现在支持消息置顶、未读消息计数、乐观UI渲染和表情回复显示。为增强安全性,实现了基于Redis的登录速率限制。管理员现在可以通过控制面板全局禁用“文件夹”功能,并可按用户或组精确控制频道功能的访问权限。此外,还增加了用户自定义状态显示、群组数据导出API、管理后台用户活跃状态显示等。本次更新修复了大量问题,涉及工具调用响应重复、网页搜索域名过滤、基于Ollama/OpenAI的自定义模型继承、嵌入模型初始化、活跃用户计数准确性、默认分组分配、模型列表过滤、用户头像显示、Redis TLS连接、MCP工具服务器配置、异步操作错误、多工作节点下模型白名单持久化、聊天记录加载、数据库迁移健壮性、OAuth分组分配、知识库文件访问与提示、API响应负载大小优化、页面重复API调用、按钮误触、Ollama模型删除、临时聊天图像生成、审计日志、暗色模式下拉菜单样式,以及Milvus向量数据库的查询过滤与多租户功能。其他变更包括:频道创建权限现在仅限管理员,移除了侧边栏的活跃用户计数显示,并重构了用户表(支持多API密钥和多OAuth身份)和知识库API。

更新内容 (中文)

[0.6.41] - 2025-12-02

[!CAUTION] ⚠️ 对多实例部署很重要:此版本包含数据库模式变更;多工作者、多服务器或负载均衡部署必须同时更新所有实例,而不是执行滚动更新,因为运行混合版本会因新旧实例之间的模式不兼容而导致应用程序故障。

新增

  • 🚦 实施了登录速率限制以防范暴力攻击,使用 Redis 将每个电子邮件地址的登录尝试限制为每3分钟窗口15次,当 Redis 不可用时自动回退到内存存储。 提交
  • 📂 管理员现在可以通过管理面板全局禁用文件夹功能并控制用户级别的文件夹权限,为不需要工作区组织功能的部署启用极简界面配置。 #19529#19210#18459#18299
  • 👥 引入了群组频道作为新的频道类型,启用基于成员资格的协作空间,用户显式加入为成员,而不是通过权限访问,支持公开或私有可见性、从指定用户组自动包含成员、带有邀请元数据的成员角色跟踪,以及帖子创建后的成员管理,允许频道管理员通过频道信息模态框添加或移除成员。 提交提交
  • 💬 引入了私信频道,具有专用的频道类型选择器和多用户成员选择界面,允许特定用户之间进行私密对话,无需完整的频道可见性。 提交
  • 📨 私信频道现在支持完整的用户间消息系统,具有基于成员的访问控制、一对一的对话自动去重、可选的频道命名,以及使用参与者头像而不是频道图标的独特视觉呈现。 提交
  • 🙈 用户现在可以从侧边栏隐藏私信频道,同时保留消息历史记录,当其他参与者有新消息到达时自动重新激活,为管理活跃对话提供更清晰的界面。 提交
  • ☑️ 在频道创建模态框中添加了一个全面的用户选择组件,具有搜索功能、可排序的用户列表、分页支持和用于构建私信参与者列表的多选复选框。 提交
  • 🔴 实施了频道未读消息计数跟踪,在侧边栏中显示视觉徽章指示器,实时自动更新计数,并在用户查看频道时将消息标记为已读,具有加入/离开功能以管理成员资格状态。 提交
  • 📌 在频道中添加了消息置顶功能,允许用户置顶重要消息以便轻松参考,具有视觉突出显示、从导航栏访问的专用已置顶消息模态框,以及用于跟踪置顶状态、置顶时间戳和置顶用户的完整后端支持。 提交提交
  • 🟢 私信频道现在为一对一的对话显示活动状态指示器,当其他参与者当前在线时显示绿点,离线时显示灰点。 提交提交
  • 🆔 用户现在可以通过用户资料预览直接启动私信对话,点击“消息”按钮,无需离开当前频道即可快速访问私信功能。 提交
  • ⚡ 频道消息现在使用乐观UI渲染在发送后即时显示,在服务器确认送达期间显示待处理状态,提供更具响应性的消息体验。 提交
  • 👍 频道消息反应现在在悬停在表情符号上时显示做出反应的用户姓名,显示最多三个姓名以及额外反应者的计数。 提交
  • 🛠️ 频道创建者现在可以编辑和删除他们自己的群组和私信频道,而无需管理员权限,使用户能够独立管理他们创建的频道。 提交
  • 🔌 添加了一个新的 API 端点,用于直接通过 ID 获取或创建与特定用户的私信频道,简化集成和前端工作流中的私信频道程序化创建。 提交
  • 💭 用户现在可以设置带有表情符号和消息的自定义状态,该状态将在资料预览、侧边栏用户菜单和侧边栏的私信频道项目中显示,并可以随时清除状态,提供类似于团队通信平台的可用性或当前焦点可见性。 提交提交
  • 📤 添加了群组导出 API 端点,允许管理员导出包括成员列表在内的完整群组数据,用于备份和迁移目的。 提交
  • 📡 添加了一个新的 API 端点以检索属于特定群组的所有用户,允许管理员工作流程序化访问群组成员资格信息。 提交
  • 👁️ 管理员用户列表现在在每个用户旁边显示活动状态指示器,为最近三分钟内活跃的用户显示视觉绿点。 提交
  • 🔑 管理员用户编辑模态框现在显示按提供商分类的 OAuth 身份信息,单独显示每个关联的身份提供商及其关联的主体标识符。 #19573
  • 🧩 OAuth 角色声明解析现在遵循“OAUTH_ROLES_SEPARATOR”配置,支持对以逗号分隔字符串形式返回的角色进行正确解析,并提供与群组声明处理一致的行为。 #19514
  • 🎛️ 频道功能访问现在可以通过“USER_PERMISSIONS_FEATURES_CHANNELS”环境变量和管理员面板中的群组权限切换进行控制,允许管理员限制特定用户或群组的频道功能,同时默认为所有用户启用。 提交
  • 🎨 模型编辑器界面进行了优化,将访问控制设置移至专用模态框,配置权限时现在显示群组成员计数,重新组织布局以改善视觉层次结构,并重新设计了带有字段指导工具提示的提示建议卡片。 提交提交
  • 🏗️ 知识库文件管理已使用专用数据库表取代之前的 JSON 数组存储进行重建,支持大型知识库的分页,显著提升文件列表性能,并提供更可靠的文件-知识库关系跟踪。 提交
  • ☁️ 添加了 Azure Document Intelligence 模型选择,允许管理员通过“DOCUMENT_INTELLIGENCE_MODEL”环境变量或管理员 UI 设置指定用于文档处理的模型,默认为“prebuilt-layout”。 #19692文档:#872
  • 🚀 通过移除 upsert 操作后的手动刷新调用,改进了 Milvus 多租户向量数据库性能,消除了速率限制错误,并通过允许 Milvus 通过其 WAL 和自动刷新策略自动管理段持久性,减少了 etcd 和 MinIO/S3 存储的负载。 #19680
  • ✨ 在前端和后端实施了多项改进,以增强性能、稳定性和安全性。
  • 🌍 增强和扩展了德语、法语、葡萄牙语(巴西)、加泰罗尼亚语、简体中文和繁体中文的翻译。

修复

  • 🔄 通过移除非原生函数调用模式中冗余的消息历史记录添加,修复了工具调用响应令牌重复的问题,解决了工具结果在上下文中包含两次导致 2 倍令牌消耗的问题。 #19656提交
  • 🛡️ 更正了网络搜索域过滤,以在解析的主机名或 IP 地址匹配被阻止域时正确阻止结果,防止被阻止的站点因之前允许任何单个解析地址通过过滤器的宽松主机名解析逻辑而出现在搜索结果中。 #19670#19669
  • 🧠 基于 Ollama 或 OpenAI 的自定义模型现在正确地从其基础模型继承连接类型,确保它们在“本地”或“外部”模型选择选项卡中正确显示,而不是仅在“全部”下显示。 #19183提交
  • 🐍 通过将 transformers 依赖项更新至 4.57.3 版本,修复了 SentenceTransformers 嵌入初始化,解决了 v0.6.40 中由于 transformers 4.57.2 中的 bug 导致文档导入失败并出现“‘NoneType’ object has no attribute ’encode’”错误的回归问题。 #19512#19513
  • 📈 通过用数据库支持的基于心跳机制的跟踪取代基于 socket 的 USER_POOL 跟踪,显著提高了活跃用户计数的准确性,解决了 Redis 部署因断开连接时未清理的陈旧会话而显示膨胀用户计数的长期问题。 #16074提交
  • 👥 默认群组分配现在在所有用户注册方法(包括 OAuth/SSO、LDAP 和管理员创建的用户)中一致应用,修复了“DEFAULT_GROUP_ID”设置仅应用于通过电子邮件/密码注册表单注册的用户的问题。 #19685
  • 🔦 更正了工作区中的模型列表过滤,以正确包含与用户群组共享的模型,确保成员可以通过群组权限查看他们具有写访问权限的模型。 #19461提交
  • 🖼️ 通过解决 Pydantic 验证错误,修复了预览上下文中的用户资料图像显示,该错误曾阻止正确渲染。 提交
  • 🔒 通过将 python-socketio 依赖项更新至 5.15.0 版本,解决了 Redis TLS 连接失败,恢复了对“rediss://”URL 模式的支持。 #19480#19488
  • 📝 更正了 MCP 工具服务器配置以正确处理“函数名称过滤列表”作为字符串和列表类型,防止字段为空时出现 AttributeError,并确保向后兼容性。 #19486提交提交
  • 📎 通过更正向量数据库操作中的异步线程池参数传递,解决了导致元数据检查时出现 TypeError 的网页附件失败。 #19493提交
  • 💾 通过为内部模型字典实现基于 Redis 的共享状态,修复了多工作者部署中的模型允许列表持久性,确保配置更改在所有工作者进程中一致可见。 #19395提交
  • ⏳ 通过增强消息数据结构以正确跟踪父消息关系,防止了聊天记录的无限加载,解决了缺失 parentId 字段导致永久加载状态的问题。 #19225提交
  • 🩹 通过自动检测和更正用户表上缺失的主键约束,改进了数据库迁移的健壮性,确保具有非标准配置的数据库可以成功升级模式。 #19487提交
  • 🏷️ 当用户从管理员角色转为用户角色时,OAuth 群组分配现在在首次登录时正确更新,确保在启用群组管理时群组成员资格立即反映。 #19475#19476
  • 💡 知识库文件工具提示现在在引用带有哈希符号的文件时正确显示父集合名称,防止不同集合中同名文件之间的混淆。 #19491提交
  • 🔐 解决了知识库文件访问不一致的问题,即授权的非管理员用户由于上传期间的竞态条件导致 collection_name 值不匹配,对某些文件收到“Not found”或权限错误,现在文件访问验证会正确检查知识库文件关联。 #18689#19523提交
  • 📦 更正了知识 API 批量文件添加端点以正确处理异步操作,解决了同时添加多个文件时出现的 500 内部服务器错误响应。 #19538提交
  • 🤖 通过将标志正确传递给模型路径解析器,修复了嵌入模型自动更新功能,以正确遵循“RAG_EMBEDDING_MODEL_AUTO_UPDATE”设置,确保在启用自动更新选项时模型按预期更新。 #19687
  • 📉 通过从大多数端点中移除 base64 编码的资料图像,大幅减少了 API 响应负载大小,消除了由高分辨率头像引起的多兆字节响应,并实现了更好的浏览器缓存。 #19519提交
  • 📞 通过合并响应式语句,消除了管理员用户概览页面上的冗余 API 调用,将四个重复请求减少为一个高效调用,并显著提高了页面加载性能。 #19509提交
  • 🧹 通过移除冗余的模型列表获取,消除了工作区模型页面上的重复 API 调用,将两个相同请求减少为一个调用,并提高了页面响应性。 #19517提交
  • 🔘 更正了模型阀门按钮,通过添加明确的按钮类型属性来防止意外的表单提交,确保当输入区域包含文本时不再触发消息发送。 #19534
  • 🗑️ 通过更正请求负载格式并确保模型选择器正确显示占位符选项,修复了 Ollama 模型删除。 提交
  • 🎨 通过正确处理未持久化到数据库的本地聊天会话,修复了临时聊天中的图像生成。 提交
  • 🕵️‍♂️ 通过正确等待异步用户身份验证调用,修复了审计日志记录,解决了传递协程对象而不是用户数据的失败问题。 #19658提交
  • 🌙 更正了暗模式下拉选择框的样式以使用正确的背景颜色,修复了下拉边框和悬停状态显示为白色而不是匹配暗主题的问题。 #19693#19442
  • 🔍 通过更正过滤表达式中的字符串引号处理并使用正确的查询参数名称,修复了 Milvus 向量数据库查询过滤,解决了阻止上传多个文件到知识库的误报“检测到重复内容”错误。 #19602#18119#16345#17088#18485
  • 🆙 将 Milvus 多租户向量数据库更新为使用 query_iterator() 以提高健壮性并与标准 Milvus 实现保持一致,修复了相同的误报重复检测错误,并改进了多租户部署中大型结果集的处理。 #19695

更改

  • ⚠️ 对多实例部署很重要 — 此版本包含数据库模式变更;多工作者、多服务器或负载均衡部署必须同时更新所有实例,而不是执行滚动更新,因为运行混合版本会因新旧实例之间的模式不兼容而导致应用程序故障。
  • 👮 频道创建现在仅限于管理员,常规用户的频道添加按钮被隐藏,以保持对通信频道的组织控制。 提交
  • ➖ 已从侧边栏左下角的用户菜单中移除活跃用户计数指示器,以简化界面。 提交
  • 🗂️ 用户表已重构,API 密钥已迁移到支持未来多密钥功能的专用表,OAuth 数据存储已转换为 JSON 结构,支持每个用户帐户多个身份提供商,并且“info”和“settings”字段的内部列类型已从 TEXT 优化为 JSON,自动迁移保留了所有现有数据和关联。 #19573
  • 🔄 知识库 API 已重构以支持新的文件关系模型。

[!TIP]
寻找 企业计划今天就与我们的销售团队联系!

获取增强功能,包括自定义主题和品牌服务级别协议 (SLA) 支持等!

👏 非常感谢我们杰出的贡献者,他们的辛勤工作和奉献使这个版本得以实现: @Classic298, @ShirasawaSama, @tobiasge, @RomualdYT, @joaoback, @kjpoccia, @gerhardj-b, @aleixdorca, @acwoo97, @matthew-kusz, @stevessr, @HennieLP

赞助商 🙌

🚀 我们想向我们出色的赞助商们表示衷心的感谢,感谢他们的慷慨支持(注意:我们已将私人赞助商从此列表中排除。如果您想出现在这里,请随时联系我们!)

@amd, @roosi-gmbh, @rndmcnlly, @feddersen-group, @SRKConsulting, @mushmax, @icanbwell, @loitragg, @haka4githu6, @silenceroom, @GenieDev101, @CubicleGangster, @TOWaB, @Classic298, @comet-ml, @FominVO, @catalyst-net-nz, @JrdnHans, @hkosm, @VeroFess, @joaoback, @walsermedia, @LuxTronic

更新内容 (原始)

[0.6.41] - 2025-12-02

[!CAUTION] ⚠️ IMPORTANT for Multi-Instance Deployments: This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances.

Added

  • 🚦 Sign-in rate limiting was implemented to protect against brute force attacks, limiting login attempts to 15 per 3-minute window per email address using Redis with automatic fallback to in-memory storage when Redis is unavailable. Commit
  • 📂 Administrators can now globally disable the folders feature and control user-level folder permissions through the admin panel, enabling minimalist interface configurations for deployments that don’t require workspace organization features. #19529, #19210, #18459, #18299
  • 👥 Group channels were introduced as a new channel type enabling membership-based collaboration spaces where users explicitly join as members rather than accessing through permissions, with support for public or private visibility, automatic member inclusion from specified user groups, member role tracking with invitation metadata, and post-creation member management allowing channel managers to add or remove members through the channel info modal. Commit, Commit
  • 💬 Direct Message channels were introduced with a dedicated channel type selector and multi-user member selection interface, enabling private conversations between specific users without requiring full channel visibility. Commit
  • 📨 Direct Message channels now support a complete user-to-user messaging system with member-based access control, automatic deduplication for one-on-one conversations, optional channel naming, and distinct visual presentation using participant avatars instead of channel icons. Commit
  • 🙈 Users can now hide Direct Message channels from their sidebar while preserving message history, with automatic reactivation when new messages arrive from other participants, providing a cleaner interface for managing active conversations. Commit
  • ☑️ A comprehensive user selection component was added to the channel creation modal, featuring search functionality, sortable user lists, pagination support, and multi-select checkboxes for building Direct Message participant lists. Commit
  • 🔴 Channel unread message count tracking was implemented with visual badge indicators in the sidebar, automatically updating counts in real-time and marking messages as read when users view channels, with join/leave functionality to manage membership status. Commit
  • 📌 Message pinning functionality was added to channels, allowing users to pin important messages for easy reference with visual highlighting, a dedicated pinned messages modal accessible from the navbar, and complete backend support for tracking pinned status, pin timestamp, and the user who pinned each message. Commit, Commit
  • 🟢 Direct Message channels now display an active status indicator for one-on-one conversations, showing a green dot when the other participant is currently online or a gray dot when offline. Commit, Commit
  • 🆔 Users can now start Direct Message conversations directly from user profile previews by clicking the “Message” button, enabling quick access to private messaging without navigating away from the current channel. Commit
  • ⚡ Channel messages now appear instantly when sent using optimistic UI rendering, displaying with a pending state while the server confirms delivery, providing a more responsive messaging experience. Commit
  • 👍 Channel message reactions now display the names of users who reacted when hovering over the emoji, showing up to three names with a count for additional reactors. Commit
  • 🛠️ Channel creators can now edit and delete their own group and DM channels without requiring administrator privileges, enabling users to manage the channels they create independently. Commit
  • 🔌 A new API endpoint was added to directly get or create a Direct Message channel with a specific user by their ID, streamlining programmatic DM channel creation for integrations and frontend workflows. Commit
  • 💭 Users can now set a custom status with an emoji and message that displays in profile previews, the sidebar user menu, and Direct Message channel items in the sidebar, with the ability to clear status at any time, providing visibility into availability or current focus similar to team communication platforms. Commit, Commit
  • 📤 A group export API endpoint was added, enabling administrators to export complete group data including member lists for backup and migration purposes. Commit
  • 📡 A new API endpoint was added to retrieve all users belonging to a specific group, enabling programmatic access to group membership information for administrative workflows. Commit
  • 👁️ The admin user list now displays an active status indicator next to each user, showing a visual green dot for users who have been active within the last three minutes. Commit
  • 🔑 The admin user edit modal now displays OAuth identity information with a per-provider breakdown, showing each linked identity provider and its associated subject identifier separately. #19573
  • 🧩 OAuth role claim parsing now respects the “OAUTH_ROLES_SEPARATOR” configuration, enabling proper parsing of roles returned as comma-separated strings and providing consistent behavior with group claim handling. #19514
  • 🎛️ Channel feature access can now be controlled through both the “USER_PERMISSIONS_FEATURES_CHANNELS” environment variable and group permission toggles in the admin panel, allowing administrators to restrict channel functionality for specific users or groups while defaulting to enabled for all users. Commit
  • 🎨 The model editor interface was refined with access control settings moved to a dedicated modal, group member counts now displayed when configuring permissions, reorganized layout with improved visual hierarchy, and redesigned prompt suggestions cards with tooltips for field guidance. Commit, Commit
  • 🏗️ Knowledge base file management was rebuilt with a dedicated database table replacing the previous JSON array storage, enabling pagination support for large knowledge bases, significantly faster file listing performance, and more reliable file-knowledge base relationship tracking. Commit
  • ☁️ Azure Document Intelligence model selection was added, allowing administrators to specify which model to use for document processing via the “DOCUMENT_INTELLIGENCE_MODEL” environment variable or admin UI setting, with “prebuilt-layout” as the default. #19692, Docs:#872
  • 🚀 Milvus multitenancy vector database performance was improved by removing manual flush calls after upsert operations, eliminating rate limit errors and reducing load on etcd and MinIO/S3 storage by allowing Milvus to manage segment persistence automatically via its WAL and auto-flush policies. #19680
  • ✨ Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌍 Translations for German, French, Portuguese (Brazil), Catalan, Simplified Chinese, and Traditional Chinese were enhanced and expanded.

Fixed

  • 🔄 Tool call response token duplication was fixed by removing redundant message history additions in non-native function calling mode, resolving an issue where tool results were included twice in the context and causing 2x token consumption. #19656, Commit
  • 🛡️ Web search domain filtering was corrected to properly block results when any resolved hostname or IP address matches a blocked domain, preventing blocked sites from appearing in search results due to permissive hostname resolution logic that previously allowed results through if any single resolved address passed the filter. #19670, #19669
  • 🧠 Custom models based on Ollama or OpenAI now properly inherit the connection type from their base model, ensuring they appear correctly in the “Local” or “External” model selection tabs instead of only appearing under “All”. #19183, Commit
  • 🐍 SentenceTransformers embedding initialization was fixed by updating the transformers dependency to version 4.57.3, resolving a regression in v0.6.40 where document ingestion failed with “‘NoneType’ object has no attribute ’encode’” errors due to a bug in transformers 4.57.2. #19512, #19513
  • 📈 Active user count accuracy was significantly improved by replacing the socket-based USER_POOL tracking with a database-backed heartbeat mechanism, resolving long-standing issues where Redis deployments displayed inflated user counts due to stale sessions never being cleaned up on disconnect. #16074, Commit
  • 👥 Default group assignment now applies consistently across all user registration methods including OAuth/SSO, LDAP, and admin-created users, fixing an issue where the “DEFAULT_GROUP_ID” setting was only being applied to users who signed up via the email/password signup form. #19685
  • 🔦 Model list filtering in workspaces was corrected to properly include models shared with user groups, ensuring members can view models they have write access to through group permissions. #19461, Commit
  • 🖼️ User profile image display in preview contexts was fixed by resolving a Pydantic validation error that prevented proper rendering. Commit
  • 🔒 Redis TLS connection failures were resolved by updating the python-socketio dependency to version 5.15.0, restoring support for the “rediss://” URL schema. #19480, #19488
  • 📝 MCP tool server configuration was corrected to properly handle the “Function Name Filter List” as both string and list types, preventing AttributeError when the field is empty and ensuring backward compatibility. #19486, Commit, Commit
  • 📎 Web page attachment failures causing TypeError on metadata checks were resolved by correcting async threadpool parameter passing in vector database operations. #19493, Commit
  • 💾 Model allowlist persistence in multi-worker deployments was fixed by implementing Redis-based shared state for the internal models dictionary, ensuring configuration changes are consistently visible across all worker processes. #19395, Commit
  • ⏳ Chat history infinite loading was prevented by enhancing message data structure to properly track parent message relationships, resolving issues where missing parentId fields caused perpetual loading states. #19225, Commit
  • 🩹 Database migration robustness was improved by automatically detecting and correcting missing primary key constraints on the user table, ensuring successful schema upgrades for databases with non-standard configurations. #19487, Commit
  • 🏷️ OAuth group assignment now updates correctly on first login when users transition from admin to user role, ensuring group memberships reflect immediately when group management is enabled. #19475, #19476
  • 💡 Knowledge base file tooltips now properly display the parent collection name when referencing files with the hash symbol, preventing confusion between identically-named files in different collections. #19491, Commit
  • 🔐 Knowledge base file access inconsistencies were resolved where authorized non-admin users received “Not found” or permission errors for certain files due to race conditions during upload causing mismatched collection_name values, with file access validation now properly checking against knowledge base file associations. #18689, #19523, Commit
  • 📦 Knowledge API batch file addition endpoint was corrected to properly handle async operations, resolving 500 Internal Server Error responses when adding multiple files simultaneously. #19538, Commit
  • 🤖 Embedding model auto-update functionality was fixed to properly respect the “RAG_EMBEDDING_MODEL_AUTO_UPDATE” setting by correctly passing the flag to the model path resolver, ensuring models update as expected when the auto-update option is enabled. #19687
  • 📉 API response payload sizes were dramatically reduced by removing base64-encoded profile images from most endpoints, eliminating multi-megabyte responses caused by high-resolution avatars and enabling better browser caching. #19519, Commit
  • 📞 Redundant API calls on the admin user overview page were eliminated by consolidating reactive statements, reducing four duplicate requests to a single efficient call and significantly improving page load performance. #19509, Commit
  • 🧹 Duplicate API calls on the workspace models page were eliminated by removing redundant model list fetching, reducing two identical requests to a single call and improving page responsiveness. #19517, Commit
  • 🔘 The model valves button was corrected to prevent unintended form submission by adding explicit button type attribute, ensuring it no longer triggers message sending when the input area contains text. #19534
  • 🗑️ Ollama model deletion was fixed by correcting the request payload format and ensuring the model selector properly displays the placeholder option. Commit
  • 🎨 Image generation in temporary chats was fixed by correctly handling local chat sessions that are not persisted to the database. Commit
  • 🕵️‍♂️ Audit logging was fixed by correctly awaiting the async user authentication call, resolving failures where coroutine objects were passed instead of user data. #19658, Commit
  • 🌙 Dark mode select dropdown styling was corrected to use proper background colors, fixing an issue where dropdown borders and hover states appeared white instead of matching the dark theme. #19693, #19442
  • 🔍 Milvus vector database query filtering was fixed by correcting string quote handling in filter expressions and using the proper parameter name for queries, resolving false “duplicate content detected” errors that prevented uploading multiple files to knowledge bases. #19602, #18119, #16345, #17088, #18485
  • 🆙 Milvus multitenancy vector database was updated to use query_iterator() for improved robustness and consistency with the standard Milvus implementation, fixing the same false duplicate detection errors and improving handling of large result sets in multi-tenant deployments. #19695

Changed

  • ⚠️ IMPORTANT for Multi-Instance Deployments — This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances.
  • 👮 Channel creation is now restricted to administrators only, with the channel add button hidden for regular users to maintain organizational control over communication channels. Commit
  • ➖ The active user count indicator was removed from the bottom-left user menu in the sidebar to streamline the interface. Commit
  • 🗂️ The user table was restructured with API keys migrated to a dedicated table supporting future multi-key functionality, OAuth data storage converted to a JSON structure enabling multiple identity providers per user account, and internal column types optimized from TEXT to JSON for the “info” and “settings” fields, with automatic migration preserving all existing data and associations. #19573
  • 🔄 The knowledge base API was restructured to support the new file relationship model.

[!TIP]
Looking for an Enterprise Plan?Speak with Our Sales Team Today!

Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, and more!

👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: @Classic298, @ShirasawaSama, @tobiasge, @RomualdYT, @joaoback, @kjpoccia, @gerhardj-b, @aleixdorca, @acwoo97, @matthew-kusz, @stevessr, @HennieLP

Sponsors 🙌

🚀 We’d like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We’ve excluded private sponsors from this list. If you’d like to get featured here, feel free to reach out to us!)

@amd, @roosi-gmbh, @rndmcnlly, @feddersen-group, @SRKConsulting, @mushmax, @icanbwell, @loitragg, @haka4githu6, @silenceroom, @GenieDev101, @CubicleGangster, @TOWaB, @Classic298, @comet-ml, @FominVO, @catalyst-net-nz, @JrdnHans, @hkosm, @VeroFess, @joaoback, @walsermedia, @LuxTronic

下载链接