LibreChat:可自托管的多模型 AI 对话平台,ChatGPT 的开源平替

LibreChat:可自托管的多模型 AI 对话平台,ChatGPT 的开源平替

大模型

📖 简介

LibreChat 是功能最接近商业产品的开源 AI 对话平台,45.2k Stars。一个界面接 OpenAI、Anthropic、Google 与本地 Ollama,支持插件、代码解释器、Artifacts、多用户与数据自持,团队想自己搭一套 ChatGPT 时通常从它开始。

📝 详细介绍

选型困境:多模型对话平台,到底该往哪个方向站

需求听起来很简单:给团队接一个能同时调 OpenAI、Claude、DeepSeek 和本地 Ollama 的对话前端。但真去翻 GitHub,你会发现候选列表长到离谱——Open WebUI、LobeChat、AnythingLLM、LibreChat,个个都是几万 star,个个都宣称"支持多模型、可自托管、有 RAG、有插件"。简介读起来几乎一样,真正拉开差距的是多用户治理、扩展方式和部署复杂度这三件事,而这三样恰好都不在 README 的第一屏。

这篇按"你实际会遇到什么坑"的角度,把 LibreChat 和三个最常被拿来对比的项目拆开看。

竞品全景

LibreChat:可自托管的多模型 AI 对话平台,ChatGPT 的开源平替

TypeScript 技术栈,MIT 协议,约 45k star。它把自己定位成"增强版 ChatGPT Clone",但真正区别于同类的是企业级的多用户体系:多账号、角色权限、OIDC/LDAP/SAML 单点登录、按用户限流。同时它把 Agents、MCP、Code Interpreter、DALL·E、OpenAPI Actions 都做进了同一套 UI,模型侧覆盖 OpenAI Responses API、Anthropic、Azure、AWS Bedrock、Vertex AI、Groq、Mistral、OpenRouter、DeepSeek。核心配置走一个 librechat.yaml,改配置不动代码。

Open WebUI

Python + SvelteKit,自托管圈子里流行度最高的一个。优势是部署最轻、对 Ollama 本地模型的体验打磨得最细、内置 RAG 开箱即用。扩展靠 Python 的 Functions / Pipelines,能直接改写请求和响应链路,灵活度高但要求你会写后端代码。多用户能力存在,但整体更像"给小团队和个人的强力前端"。

LobeChat

Next.js 写的,Apache-2.0(部分能力在商业版)。它的强项是设计感和插件市场,模型服务商的接入抽象做得干净,插件生态是同类里最像样的。但客户端优先的架构让它的服务端治理能力偏弱,多用户和权限在社区版里不是重点。

AnythingLLM

MIT,Node.js。它其实不在同一个战场——核心是"把一堆文档变成可检索的知识库工作区",对话只是出口。如果你要的是文档问答而不是通用聊天平台,它的向量库管理和嵌入模型选择比前面几个都专业。

我会从哪些维度比

光看功能清单没意义,下面五个维度决定的是你上线三个月后会不会推倒重来:部署运维成本(几个容器、要不要外部数据库)、模型接入广度、多用户与权限治理、扩展方式(配置驱动还是代码驱动)、以及 RAG 是否够用。社区活跃度我也放进表格,但它对选型的权重其实最低——这几个项目都不会突然死掉。

核心对比

维度 LibreChat Open WebUI LobeChat AnythingLLM
技术栈与部署 Node/TS,Docker Compose 起,需 MongoDB + Meilisearch Python + Svelte,单容器可跑,最轻 Next.js,客户端优先,服务端库可选 Node,单容器或桌面端
模型接入广度 极广,商业云 + 自建全覆盖 广,Ollama 与 OpenAI 兼容接口最顺 广,服务商抽象干净 中,够用但不是卖点
Agent / 工具能力 Agents + MCP + Code Interpreter + Actions Functions / Pipelines / Tools 插件市场 + 工具调用 偏文档工作流,非通用 Agent
多用户与权限 强:角色、SSO、按用户限流与用量 中:用户组 + 管理员 弱:社区版偏个人 中:多用户 + 工作区隔离
扩展方式 YAML 声明式 + MCP Server Python 代码注入请求链路 TS 插件 + manifest 内置配置为主
RAG 深度 够用,非核心 开箱即用,可换向量库 依赖插件 最强,核心能力
社区活跃度 高(45k star / 9.2k fork,持续提交) 同级最高 高 中高

关键差异一:配置驱动 vs 代码驱动

这是 LibreChat 和 Open WebUI 最本质的分野。LibreChat 加一个模型、接一个 MCP 工具,全在一个 YAML 里声明:

# librechat.yaml
version: 1.2.8
endpoints:
  custom:
    - name: "DeepSeek"
      apiKey: "${DEEPSEEK_API_KEY}"
      baseURL: "https://api.deepseek.com/v1"
      models:
        default: ["deepseek-chat", "deepseek-reasoner"]
        fetch: true

mcpServers:
  filesystem:
    command: npx
    args: ["-y", "@modelcontextprotocol/server-filesystem", "/data"]

Open WebUI 的扩展则是直接往请求链路里插 Python:

class Filter:
    def inlet(self, body: dict, __user__: dict) -> dict:
        body["messages"].insert(0, {
            "role": "system",
            "content": "只允许基于内部知识库作答。"
        })
        return body

取舍很清楚:LibreChat 让运维和产品同学也能改行为,但你要做深度的请求级改写,就得动 TS 源码;Open WebUI 反过来,能力上限更高,代价是每次升级都要担心自定义 Function 会不会挂。

关键差异二:多用户治理不是"有登录"

很多项目号称支持多用户,实际只是加了张用户表。LibreChat 真正的差异点在于它把角色权限、SSO 对接、按用户/按模型的用量与限流当成一等公民——这是"给一个 50 人团队发账号"和"自己用"之间的分水岭。Open WebUI 有用户组但治理粒度偏粗,LobeChat 社区版基本不做这件事(留给商业版),AnythingLLM 是工作区隔离而非账号治理。如果你的需求里出现"给不同部门配不同模型权限""限制每人每月 token 额度""接公司 SSO"中的任意一条,选型范围会瞬间收窄到 LibreChat 和少数几个。

按场景选型

  • 团队/企业内部统一入口,要分子账号、要接 SSO、要控用量 → LibreChat。
  • 个人或三五人小团队,主要在本地跑 Ollama,要最快跑起来 → Open WebUI,别折腾 MongoDB 和 Meilisearch 了。
  • 核心诉求是把几十份 PDF/文档变成可问答的知识库 → AnythingLLM,它的向量化和检索调优比通用平台细。
  • 看重界面质感、插件生态,愿意折腾前端,且多用户需求不强 → LobeChat。
  • 要在一套部署里同时切换多家商业 API 和本地模型,还要 Agent + MCP 工具调用 → LibreChat。

结论

我的推荐是:当你的使用场景从"个人工具"升级为"组织基础设施"时选 LibreChat。它在多模型接入广度上和 Open WebUI 打平,但多用户治理、SSO、按人限流这几块是同类里少有的做到生产可用的,MIT 协议也不会有商业授权上的后顾之忧。代价是部署组件更多(数据库 + 搜索服务),且深度定制需要改 TypeScript。

反过来说,如果你只是自己用、或者团队不超过一只手,Open WebUI 在部署成本和开箱体验上更划算,为了用不上的权限系统去维护一套 Mongo + Meilisearch 不划算;如果需求本质是文档问答,直接上 AnythingLLM,别拿通用聊天平台硬凑 RAG。选型的关键不是比谁功能多,而是先回答"这套东西是给几个人用、要不要为他们的行为负责"。

🚀

AI 项目推荐

大模型
标签
#AI对话 #自托管 #多模型 #插件 #开源
浏览
👁️ 1
发布日期
2026-10-02