这个项目能做什么
Torvian Chatbot 是一个自托管 AI 工作区,面向希望控制自身数据、模型提供商和工具执行的用户。你自行运行服务器,连接自己的 LLM 设置,并在智能体操作中保留人工介入。
README 中描述的主要能力:
- 自带 LLM 提供商:支持 OpenAI 兼容 API 和本地 Ollama 模型。
- 实时流式传输模型响应,并支持来自不同聊天会话的并发响应。
- 通过线程化/分支消息流组织长对话。
- 工具执行默认需要批准,也可按工具设置自动批准或自动拒绝偏好。
- 可从任意先前消息重启智能体对话,并恢复上下文和工具状态。
- 支持多用户访问,包含认证以及基于角色/权限的授权。
- 面向桌面、Web(WASM)和 Android 的多平台客户端,全部连接到同一服务器。
- 工具可在任意机器(本地、远程、虚拟机)上全天候运行,独立于客户端运行位置。
架构:Ktor 服务器提供核心 API 和编排层,负责认证/授权、聊天会话、消息处理、LLM 集成、工具生命周期和持久化(通过 Exposed ORM 使用 SQLite)。Compose Multiplatform 客户端覆盖桌面、Web(WASM)和 Android。可选的独立 worker 进程处理 MCP 工具执行,适用于工作区隔离和持续在线场景;服务器通过 WebSocket 使用自定义 JSON 协议与 worker 通信。
项目状态:活跃开发中。服务器加桌面端被描述为最完整、最稳定的组合;Web(WASM)稳定但存在一些限制;Android 处于早期阶段,存在已知的 UX 限制。
入门:预构建包发布在 Releases 页面,包括服务器、worker、Windows/Linux 桌面客户端,以及静态 Web 客户端。服务器可通过启动脚本或来自 ghcr.io 的 Docker 镜像运行;文档提供了 Docker 快速启动命令。默认登录凭据为 admin/admin123,首次登录时会强制修改密码。MCP 工具执行需要 worker;worker 需要有效的用户账户进行认证,并在设置期间生成 SSL 证书。可通过 CLI 参数或环境变量注册受信任签名者凭证。建议 worker 使用 Docker,因为它能为工具执行提供更好的隔离。
从源码构建需要 Git、JDK 21+ 和内置的 Gradle wrapper;不同的 Gradle 任务分别构建服务器、桌面应用、Web 应用和 worker。文档包括 LLM 配置、MCP 服务器配置、受信任签名者以及 VPS/Docker 部署指南。技术栈:Kotlin、带 Material 3 的 Compose Multiplatform、Ktor、配合 Exposed 的 SQLite、Koin、Arrow、kotlinx.serialization 和 Gradle。基于 MIT 许可证授权。
评论
0 评分人数达到10人后显示
登录后参与讨论。