basjoo
开源 AI 客服平台:RAG 知识库 + 多模型 Agent + 可嵌入聊天气泡,一键部署即可投入使
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
开源 AI 客服平台:RAG 知识库 + 多模型 Agent + 可嵌入聊天气泡,一键部署即可投入使
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你是否遇到过这样的困境:团队每天要重复回答上百个相同的产品问题,而现有的客服机器人答非所问、无法理解上下文,还要收费高昂?Basjoo 正是为解决这一痛点而生的开源 AI 客服平台——它将 RAG 知识库、多模型 Agent 和可嵌入聊天气泡整合在一起,让任何团队都能快速搭建一套真正懂业务的智能客服系统。

随着大语言模型能力的爆发,将 AI 引入客服场景早已不是新鲜事。但现实中,大多数团队仍面临几个核心挑战:通用 AI 无法掌握企业私有知识(产品文档、FAQ、内部流程),闭源方案费用高昂且数据不自主,而自行搭建 RAG 系统又需要同时掌握向量数据库、大模型调用和前端界面开发,技术门槛令人生畏。
Basjoo 由 haoyiyin 团队开发和维护,正是瞄准了「私有知识 + 多模型切换 + 快速上线」这个组合需求。它最初可能来自团队内部降本增效的实践,经过持续迭代,已成为功能相对完整、可直接部署的开源方案。截至目前,GitHub 获得 149 颗 Stars、89 个 Forks,在开源 AI 客服赛道中具备一定代表性。
Basjoo 的功能设计围绕「AI 客服」这条主线展开,覆盖知识管理、对话引擎、渠道分发三大层面。
Basjoo 支持两种知识注入方式:URL 网页抓取和文件上传。URL 抓取由独立的 scrapling-service 微服务完成,基于 curl_cffi + readability-lxml 实现无头浏览器级别的网页内容提取,并内置 SSRF 安全保护,防止恶意内网扫描。文件上传则支持常见的文档格式。
所有知识内容经过分块(chunking)处理后,存入 Qdrant 向量数据库,为语义检索提供支持。值得注意的是,Basjoo 在 Embedding 层支持灵活切换——可选择 Jina 或 SiliconFlow,这意味着用户可以根据成本和效果自行选择性价比最优的 Embedding 服务商。

Basjoo 的 AI Agent 配置支持同时接入多个大模型服务商:OpenAI GPT 系列、Anthropic Claude、Google Gemini、DeepSeek 等。这种灵活性在实际生产中非常重要——不同复杂度的问题可以路由到不同模型,高频简单问答用低成本模型,复杂推理任务切到高端模型,整体成本可控。
系统提示词(System Prompt)、模型参数均可通过管理后台可视化配置,无需修改代码即可调整 AI 行为。
Basjoo 提供独立的 Widget 包,可在任意网页中嵌入一个浮动聊天气泡按钮。与传统的 iframe 嵌入不同,这个 Widget 支持会话持久化(用户刷新页面后对话历史不丢失)、访客语言自动翻译,以及按域名白名单控制的公开对话配置。

Basjoo 建立了完整的 Workspace(工作空间)多租户体系,每个工作空间可独立配置 Agent、知识源、用户配额和对话会话。管理员后台提供用户管理、会话操作、系统设置等完整功能,支持多语言界面。

Basjoo 的技术选型务实而清晰:
| 层级 | 技术栈 | 说明 |
|---|---|---|
| 后端 | FastAPI + SQLAlchemy async | 高性能 Python Web 框架,支持异步数据库操作 |
| 数据库 | PostgreSQL + Qdrant + Redis | PostgreSQL 存业务数据,Qdrant 做向量检索,Redis 负责缓存和限流 |
| 前端 | Next.js (TypeScript) | 管理后台 UI,提供完整可视化配置 |
| Widget | React + TypeScript | 独立打包的嵌入式组件 |
| 内容抓取 | scrapling-service (curl_cffi) | 无头浏览器级网页内容提取微服务 |
| 部署 | Docker Compose | 生产级多容器编排,含所有依赖服务 |
后端 FastAPI 应用通过 /api/v1 暴露核心接口(聊天、会话、Agent 配置),/api/admin 管理接口通过路由级权限隔离。流式响应基于 Server-Sent Events(SSE)实现,10MB 请求体上限防止资源耗尽攻击,Redis 中间件提供速率限制保护。整体架构没有引入过重的框架,适合有 Docker 基础的中级开发者理解、定制和二次开发。
Basjoo 最大的工程亮点之一是安装部署体验。官方提供一行命令自动部署脚本:
curl -fsSL https://raw.githubusercontent.com/haoyiyin/basjoo/main/install-deploy.sh | sudo sh
该脚本在干净的 Ubuntu/Debian 服务器上自动完成:安装 Docker、安装所有依赖、启动 docker-compose 服务、配置 Nginx 和反向代理。docker-compose 配置了 prod 和 dev 两个 profile,生产环境包含完整的 7 个容器(postgres、redis、qdrant、backend、frontend-nextjs、scrapling-service、nginx),每个服务都有健康检查,宕机自动重启。
硬件需求非常亲民:无需 GPU,2-4 vCPU + 4-8GB RAM + 20-50GB 磁盘即可运行,满足大多数中小团队的服务器配置。
客观来说,Basjoo 也有几个值得关注的局限:
首先,Widget 前端技术栈为 React + TypeScript,如果主站不是 React 技术栈,集成时可能需要额外适配。其次,Basjoo 依赖外部 LLM API(OpenAI/Anthropic 等),没有内置任何开源模型的本地推理支持,对于数据隐私要求极高、完全不希望数据出网的场景,现有架构无法满足。第三,当前版本没有提供 Kubernetes 部署方案,单机 docker-compose 对规模化集群部署不友好。最后,知识库的 chunking 策略和检索策略相对固定,没有暴露更多调参接口。
Basjoo 属于 RAG + Agent 应用层的开源实践,代表了当前 AI 应用落地的一条主流路径:将通用大模型的推理能力与私有知识检索相结合,在客服、文档问答、私人助手等场景中快速交付价值。从 GitHub 数据来看,149 颗 Stars 在同类开源客服项目中属于中等水平。考虑到项目活跃的维护状态、完整的文档体系和良好的部署体验,对于需要快速验证 AI 客服可行性的团队,Basjoo 是一个值得尝试的起点;对于有深度定制需求的团队,它的清晰架构也降低了二次开发的学习成本。
本报告由 PIFS AI 项目情报系统自动生成,分析时间:2026-07-28。数据来源:GitHub API + 仓库文件结构分析。