Hermes + LobeChat:搭建你的多模型聚合聊天平台

部署LobeChat并连接本地Hermes模型,打造一个支持多模型同时使用的聊天平台,包含自定义模型端点和插件配置。

目录

  1. LobeChat 的特色
  2. 部署 LobeChat
    1. 方式一:Docker 部署
    2. 方式二:Docker Compose(推荐)
    3. 方式三:直接部署到 Vercel
  3. 连接本地 Hermes 模型
    1. 通过 Ollama 连接
    2. 通过自定义 OpenAI 端点连接
    3. 同时使用多个模型服务
  4. 助手和 Agent 配置
    1. 创建自定义助手
    2. 助手市场
  5. 插件系统
    1. 搜索插件
    2. 代码执行插件
    3. 绘图插件
  6. 数据存储和隐私
  7. 移动端体验
  8. 进阶配置
    1. 访问控制
    2. 自定义主题
    3. 键盘快捷键
  9. 语音对话功能
    1. 文字转语音(TTS)
    2. 语音转文字(STT)
  10. 文件处理和知识管理
    1. 文件上传
    2. 知识库功能
  11. 常见问题排查
  12. 和其他工具的搭配

如果你手上不止一个模型——本地跑着 Hermes,同时可能还用着 GPT-4、Claude 或者其他开源模型——每次切换不同的界面或 API 是挺烦的。

LobeChat 解决的就是这个问题。它是一个支持多模型聚合的聊天平台,你可以把所有模型都接入同一个界面,随时切换、对比,甚至在同一个对话里混用。

今天把 LobeChat 跑起来,接上本地的 Hermes。

LobeChat 的特色

在具体操作之前,先说说 LobeChat 跟 Open WebUI 的区别,帮你判断哪个更适合你:

LobeChat 的优势

  • 插件生态丰富,支持搜索、画图、代码执行等各种插件
  • 多模型聚合做得更好,支持几十个 API 服务商
  • 界面设计更现代,自定义程度更高
  • 支持 TTS(文字转语音)和 STT(语音转文字)
  • 有一个助手市场,可以用别人做好的 Agent

Open WebUI 的优势

  • 和 Ollama 的集成更紧密
  • 内置的 RAG 功能更成熟
  • 用户管理功能更完善
  • 部署更简单

两者定位有些不同。如果你主要是个人使用且想要更好的扩展性,LobeChat 更合适;如果是给团队部署,Open WebUI 可能更省心。

部署 LobeChat

方式一:Docker 部署

1
2
3
4
5
6
docker run -d \
--name lobe-chat \
-p 3210:3210 \
-v lobe-chat-data:/app/data \
--restart always \
lobehub/lobe-chat

启动后访问 http://localhost:3210

方式二:Docker Compose(推荐)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# docker-compose.yml
version: '3.8'

services:
lobe-chat:
image: lobehub/lobe-chat
container_name: lobe-chat
ports:
- "3210:3210"
volumes:
- lobe-chat-data:/app/data
environment:
- ACCESS_CODE=your-access-code # 设置访问密码
restart: always

volumes:
lobe-chat-data:
1
docker compose up -d

方式三:直接部署到 Vercel

LobeChat 支持一键部署到 Vercel,适合不想折腾服务器的人。去 LobeChat 的 GitHub 仓库 找 “Deploy to Vercel” 按钮就行。不过 Vercel 版本连不了本地的 Ollama,需要通过公网可达的 API 端点来接入模型。

连接本地 Hermes 模型

LobeChat 通过 OpenAI 兼容 API 来连接模型。Ollama 天然提供这个接口,所以连接起来很顺畅。

通过 Ollama 连接

  1. 确保 Ollama 在运行并且 Hermes 模型已拉取:
1
ollama list  # 确认 hermes3:8b 在列表里
  1. 在 LobeChat 界面中,点击左下角的设置图标

  2. 找到 “Language Model” 或 “语言模型” 设置

  3. 选择 “Ollama” 作为模型服务商

  4. 设置 API 地址:

如果 LobeChat 和 Ollama 在同一台机器上:

  • Docker 部署:http://host.docker.internal:11434
  • 直接部署:http://localhost:11434
  1. 保存后,在模型列表里就能看到 Hermes 了

通过自定义 OpenAI 端点连接

如果你的 Hermes 模型是通过 vLLM 部署的,用自定义端点方式连接:

  1. 在设置里找到 “OpenAI” 配置
  2. API Key:填一个占位符就行(vLLM 默认不鉴权)
  3. API Proxy URL:填你的 vLLM 服务地址,比如 http://your-server:8000/v1
  4. 在自定义模型名称里填入 NousResearch/Hermes-3-Llama-3.1-8B

同时使用多个模型服务

LobeChat 最厉害的地方在这——你可以同时配置多个模型来源:

  • Ollama 本地:接入 Hermes 和其他本地模型
  • OpenAI:接入 GPT-4 系列
  • Anthropic:接入 Claude 系列
  • OpenRouter:一个 key 接入两百多个模型
  • 自定义端点:接入任何 OpenAI 兼容 API

全部配好之后,在对话界面的模型选择器里可以自由切换。

助手和 Agent 配置

LobeChat 的一个杀手级功能是助手系统。你可以创建不同角色的 AI 助手,每个助手有自己的 system prompt、默认模型和参数。

创建自定义助手

在 LobeChat 界面:

  1. 点击左侧的 “助手” 标签
  2. 点击 “创建助手”
  3. 配置助手参数

示例——创建一个代码审查助手:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
名称:Code Reviewer
描述:帮你审查代码,找出潜在问题

系统提示词:
你是一个经验丰富的高级工程师,专门做代码审查。你的审查标准:
1. 代码是否有明显的 bug 或逻辑错误
2. 是否有性能问题
3. 命名是否规范
4. 是否缺少错误处理
5. 是否有安全隐患

对每个问题给出具体的修改建议和代码示例。不需要夸奖代码好的地方,重点指出需要改进的部分。

默认模型:hermes3:8b
Temperature:0.2(代码审查需要精确性)

助手市场

LobeChat 有一个社区驱动的助手市场。其他用户创建的助手你可以直接使用,涵盖了编程、写作、翻译、分析等各种场景。当然,市场里的助手默认可能指向在线模型,你可以改成本地的 Hermes。

插件系统

搜索插件

让 Hermes 能搜索互联网:

  1. 在设置里启用 “Web Search” 插件
  2. 配置搜索 API(支持 SearXNG、Google、Bing 等)
  3. 对话中模型会在需要时自动搜索

搭配自建的 SearXNG 实例效果最好:

1
2
3
4
5
# 快速部署 SearXNG
docker run -d \
--name searxng \
-p 8888:8080 \
searxng/searxng

然后在 LobeChat 插件设置里填入 http://localhost:8888

代码执行插件

让模型写的代码直接能运行:

LobeChat 支持接入代码沙箱。当 Hermes 生成代码时,你可以直接在界面里执行,看到结果。

绘图插件

接入 DALL-E 或 Stable Diffusion,在对话中生成图片。虽然这个功能跟 Hermes 关系不大(它是文本模型),但多模型聚合平台的好处就在这——不同能力的模型各司其职。

数据存储和隐私

LobeChat 默认是把所有数据存在浏览器的 IndexedDB 里的。这意味着:

  • 你的对话数据完全在本地
  • 不会上传到任何服务器
  • 但换个浏览器或清除数据就没了

如果你需要跨设备同步,可以配置服务端数据库:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# docker-compose.yml 服务端模式
services:
lobe-chat:
image: lobehub/lobe-chat-database
environment:
- DATABASE_URL=postgresql://user:pass@postgres:5432/lobechat
- KEY_VAULTS_SECRET=your-encryption-key
ports:
- "3210:3210"

postgres:
image: postgres:16
environment:
- POSTGRES_USER=user
- POSTGRES_PASSWORD=pass
- POSTGRES_DB=lobechat
volumes:
- postgres-data:/var/lib/postgresql/data

volumes:
postgres-data:

移动端体验

LobeChat 是 PWA(Progressive Web App),在手机浏览器里打开后可以”添加到主屏幕”,体验接近原生应用。

如果你把 LobeChat 部署在公网服务器上(记得加 HTTPS),就可以随时用手机跟本地的 Hermes 模型对话了。当然,前提是 Ollama 或 vLLM 服务也是公网可达的。

进阶配置

访问控制

1
2
environment:
- ACCESS_CODE=my-secret-code # 访问密码

设置后,打开 LobeChat 需要先输入这个密码。适合部署在公网但不想公开使用的场景。

自定义主题

LobeChat 支持深度的主题自定义:

  • 主色调
  • 字体
  • 头像样式
  • 聊天气泡样式

在设置 -> 通用 -> 主题 里调整。

键盘快捷键

  • Ctrl/Cmd + N:新建对话
  • Ctrl/Cmd + K:快速搜索
  • Enter:发送消息
  • Shift + Enter:换行

语音对话功能

LobeChat 内置了 TTS(文字转语音)和 STT(语音转文字)功能,这是它和 Open WebUI 拉开差距的一个特色。

文字转语音(TTS)

在设置 -> TTS 里配置:

  • 浏览器内置引擎:免费,不需要 API Key,但声音比较机械
  • OpenAI TTS:质量最好,但需要 OpenAI API Key
  • Edge TTS:微软的方案,免费且质量不错

配置好之后,每条 AI 回复旁边会出现一个播放按钮,点击就能听模型”说话”。

语音转文字(STT)

支持用麦克风输入语音,自动转成文字发给模型。在对话输入框旁边有个麦克风图标。

STT 引擎选择:

  • 浏览器内置:用 Web Speech API,免费
  • OpenAI Whisper:识别准确率更高

这两个功能组合起来,你就有了一个语音对话助手。在手机上用 PWA 访问 LobeChat,体验跟语音助手差不多了。

文件处理和知识管理

LobeChat 对文件的处理能力也在不断增强。

文件上传

在对话中可以直接上传文件。LobeChat 会提取文件内容作为上下文发给模型。支持的格式包括:

  • PDF
  • TXT / Markdown
  • DOCX
  • CSV
  • 图片(需要多模态模型)

知识库功能

较新版本的 LobeChat 加入了知识库管理:

  1. 在左侧菜单找到”知识库”
  2. 创建一个新的知识库
  3. 上传文档
  4. 在助手配置中关联知识库

知识库会对文档做向量化索引,在对话中自动检索相关内容。虽然功能上还没有 LlamaIndex 那么专业和灵活,但对于简单的文档问答场景已经足够了。

常见问题排查

Q: Docker 启动后访问页面空白?

检查 Docker 日志:

1
docker logs lobe-chat

常见原因是端口冲突。换一个端口试试,比如 -p 3211:3210

Q: Ollama 模型列表不显示?

几个排查方向:

  1. 确认 Ollama 正在运行:curl http://localhost:11434/api/tags
  2. 如果 LobeChat 在 Docker 里,URL 要用 http://host.docker.internal:11434 而不是 localhost
  3. Ollama 默认只监听 127.0.0.1。如果 LobeChat 在另一台机器上,需要设置 Ollama 的 OLLAMA_HOST=0.0.0.0

Q: 对话响应时断时续?

可能是 WebSocket 连接不稳定。如果用了反向代理,确保 Nginx 配置了 WebSocket 支持:

1
2
3
4
5
6
7
location / {
proxy_pass http://127.0.0.1:3210;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
}

Q: 怎么迁移数据到新服务器?

客户端模式(默认)的数据在浏览器里,导出方法:设置 -> 数据管理 -> 导出所有数据。在新浏览器里导入即可。

服务端模式的数据在 PostgreSQL 里,用标准的数据库备份恢复流程。

Q: 中文界面不完整?

LobeChat 的中文翻译覆盖率很高但不是 100%。在设置 -> 通用 -> 语言 里选择”简体中文”。如果某些地方还是英文,可能是尚未翻译的新功能。

和其他工具的搭配

LobeChat 作为前端界面,后面可以接各种服务:

  • 接上 Dify 的工作流,把复杂的 AI 流水线包装成一个简单的对话入口
  • 通过 OpenRouter 一个端点接入几百个模型
  • 用 Hermes 本地模型处理敏感数据,用在线模型处理普通请求

cocoloop 社区有不少人在用 LobeChat 做自己的 AI 工作台,有些配置方案很有创意,推荐去逛逛。

LobeChat 在多模型管理和扩展性方面做得确实不错。如果你不满足于只用一个模型,想要一个能整合各种 AI 能力的统一界面,LobeChat 很值得试试。

参与讨论

对这篇文章有疑问或想法?cocoloop 社区有不少开发者在讨论 Hermes 相关话题,欢迎加入交流。

前往 cocoloop 社区 →